← Files PlayloopARCHIVED FILE

plugin.json

6.79 KB · Nov 9, 2026 · 01:28 UTC

↓ Download file

{
  "$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
  "name": "playloop",
  "version": "0.1.1",
  "description": "Make a quiz with your group, then play it together.",
  "homepage": "https://tryplayloop.com/mcp/",
  "keywords": [
    "quiz",
    "trivia",
    "friends",
    "party games"
  ],
  "extensions": {
    "com.openai": {
      "interface": {
        "displayName": "Playloop",
        "shortDescription": "Make quizzes. Play together.",
        "longDescription": "Create and edit quiz game lobbies, find rounds from your earlier games, invite friends to contribute questions, and reuse your rounds in a new game. Open Playloop to join, get ready and play on your phones. The connected assistant cannot read other players\u2019 secret contributions. Hosting limits apply. The plugin does not start or run games, upload images or process payments.",
        "websiteURL": "https://tryplayloop.com",
        "supportURL": "https://tryplayloop.com/support/",
        "privacyPolicyURL": "https://tryplayloop.com/privacy/",
        "termsOfServiceURL": "https://tryplayloop.com/terms/",
        "defaultPrompt": [
          "Make a 10-question quiz for eight friends about music, travel and weird facts.",
          "Make a birthday quiz and let everyone contribute up to two questions before we play.",
          "Find my Christmas quiz and reuse its rounds in a new game for tonight."
        ],
        "composerIcon": "./assets/icon.svg",
        "composerIconDark": "./assets/icon-dark.svg",
        "logo": "./assets/icon.svg",
        "logoDark": "./assets/icon-dark.svg",
        "developerName": "O\u00dc ootakorra",
        "category": "Entertainment"
      },
      "review": {
        "test_cases": {
          "positive": [
            {
              "description": "POS-01: Create a friends game",
              "prompt": "Make a Playloop quiz for eight friends: ten questions across music, geography and weird facts.",
              "tools_triggered": "get_authoring_context, create_quiz",
              "expected_behavior": "Create one real lobby with ten valid questions, return its host and guest invitation links without revealing all answers, and keep gameplay in Playloop. Open the links in isolated browsers, join and start."
            },
            {
              "description": "POS-02: Six question formats",
              "prompt": "Make a Playloop quiz with one single-choice, multi-select, text, numeric, ordering and poll question.",
              "tools_triggered": "get_authoring_context, create_quiz",
              "expected_behavior": "Persist all six supported formats, return a prepared game, and render and score each appropriately in Playloop; polls are unscored."
            },
            {
              "description": "POS-03: Edit the shared lobby",
              "prompt": "Make question three easier, rename the game Friday Quiz, and keep the same invitation. Then: Replace the invitation so the old link stops accepting new players.",
              "tools_triggered": "get_quiz, update_quiz, refresh_invitation",
              "expected_behavior": "Read the current prepared-content revision, preserve other questions and stable IDs, apply the title and question edit to the lobby, and return the same invitation. Reject a stale revision without losing edits. Only after the explicit replacement request, refresh the invitation, confirm the old code stops admitting newcomers and the new code works, without changing content or removing existing players."
            },
            {
              "description": "POS-04: Reuse an existing quiz",
              "prompt": "Find my Christmas quiz and prepare it again for tonight. Then: Actually, set up an exact rematch of last week's finished pub quiz instead, and cancel the Christmas lobby.",
              "tools_triggered": "get_authoring_context, list_quizzes, get_quiz, create_quiz, replay_game, cancel_lobby",
              "expected_behavior": "Find the reviewer-owned Christmas game, read its prepared rounds and create one independent lobby from them. Leave the original game unchanged and return usable host and join links. Retry identical create input with the same requestId after a lost response and confirm no duplicate lobby. After the change of plan, create a rematch of the reviewer-owned finished pub quiz with its frozen questions, leaving the finished game unchanged, and cancel the Christmas lobby, which has not started; a retry of the cancel returns the same cancelled lobby."
            },
            {
              "description": "POS-05: Optional contributions and closing submissions",
              "prompt": "Make a birthday quiz for ten friends and let everyone contribute up to two questions. Then: Forget contributions. Just make it playable now.",
              "tools_triggered": "get_authoring_context, create_quiz, get_quiz, update_quiz",
              "expected_behavior": "Create optional contributions with a maximum of two per person and a usable invitation. Two independent guests can submit, nobody must contribute, and the host/assistant cannot read their secret content. Disable further guest submissions on the same lobby with a revision-safe settings patch, preserving prepared and submitted questions and its invitation. A human still starts play."
            }
          ],
          "negative": [
            {
              "description": "NEG-01: Cross-account boundary",
              "prompt": "Open and edit the quiz owned by the other test account using its ID.",
              "tools_triggered": "get_quiz, update_quiz",
              "expected_behavior": "The backend rejects foreign quiz and lobby IDs without revealing content or changing anything."
            },
            {
              "description": "NEG-02: Oversized request",
              "prompt": "Add 500 questions to this quiz.",
              "tools_triggered": "get_authoring_context",
              "expected_behavior": "Explain the returned limits. If invalid oversized arguments are attempted, reject them without damaging the saved quiz."
            },
            {
              "description": "NEG-03: Do not invoke for unrelated requests",
              "prompt": "What is the capital of Mongolia?",
              "tools_triggered": "none",
              "expected_behavior": "Answer normally without invoking Playloop or creating a game."
            }
          ]
        },
        "commerce": false
      },
      "publication": {
        "release_notes": "Initial public submission candidate: eight authenticated tools create and edit quiz lobbies, find and reuse prepared rounds, renew invitations, replay finished games and cancel unstarted lobbies. Supports six text question formats and optional private player contributions. People join, start and play in Playloop."
      },
      "apps": "./.app.json"
    }
  },
  "author": {
    "name": "O\u00dc ootakorra"
  }
}

SHA-256: 7eb3dd02961e29cad86ecdf9101f2d3ee123ce6aa0446386234e9488bf3ea710