{
  "slug": "secret-spy",
  "mcpServerUrl": "https://games-worker.demos.42a.ai/secret-spy/mcp",
  "interface": {
    "displayName": "Huddle Secret Spy",
    "shortDescription": "Find the spy who has no clue",
    "longDescription": "A social deduction party game for 3 to 10 players: everyone gets the same secret location and a role there, except one player, the spy, who gets nothing. Ask each other questions to find the spy before they work out where you are.\n\nOne person starts a game and reads out a 4-letter code. Friends join from their own ChatGPT or Claude chat, or from a browser link on any phone, so every secret card stays on its owner's screen. Each round the server picks one of 36 original locations (a submarine, a night market, a space station, a ski lodge, a film set, a wedding reception and more), deals a role to every player except the spy, and starts a 5, 8 or 10 minute clock. The card says who asks the first question.\n\nPlayers question each other out loud or in a group chat. Answers have to prove you know the place without naming it. Anyone may once per round accuse another player: everyone else votes, and a unanimous yes ends the round. The spy may at any moment reveal themself and guess the location from the list on their card. When the clock runs out the table votes, and the most-voted player is unmasked (a tie lets the spy escape).\n\nScoring: the spy scores 2 for escaping and 4 for guessing the location; if the spy is caught or guesses wrong, everyone else scores 1, and whoever started a successful accusation scores 2. A running scoreboard carries across rounds until the host ends the game.\n\nYour assistant can help you phrase a sly question or a vague answer that fits your role, or help the spy bluff, without ever telling the table the location.",
    "category": "Entertainment",
    "defaultPrompt": [
      "Start a Secret Spy game, I'm Dana",
      "Join Huddle Secret Spy game KXQF as Sam",
      "I'm not the spy: help me ask a sneaky question that doesn't give our location away"
    ],
    "capabilities": [
      "36 original locations, each with 6 to 8 roles",
      "Secret cards dealt privately to every player, one hidden spy",
      "Round clock (5, 8 or 10 minutes) and a random first asker",
      "One accusation per player per round, unanimous vote to convict",
      "The spy can reveal and guess the location any time",
      "Final vote when time runs out, with a running scoreboard"
    ],
    "logo": "https://games-worker.demos.42a.ai/secret-spy/icon.svg",
    "websiteURL": "https://games-worker.demos.42a.ai/secret-spy/",
    "supportURL": "https://games-worker.demos.42a.ai/support",
    "privacyPolicyURL": "https://games-worker.demos.42a.ai/privacy",
    "termsOfServiceURL": "https://games-worker.demos.42a.ai/terms",
    "developerName": "42a"
  },
  "keywords": [
    "spy party game",
    "find the spy game",
    "secret location game",
    "who is the spy",
    "social deduction game",
    "party game for groups",
    "spy game with friends",
    "guess the location game"
  ],
  "tools": [
    {
      "name": "start_secret_spy",
      "title": "Start Secret Spy",
      "annotations": {
        "readOnlyHint": false,
        "destructiveHint": false,
        "openWorldHint": false,
        "idempotentHint": false
      }
    },
    {
      "name": "join_secret_spy",
      "title": "Join Secret Spy",
      "annotations": {
        "readOnlyHint": false,
        "destructiveHint": false,
        "openWorldHint": false,
        "idempotentHint": false
      }
    },
    {
      "name": "secret_spy_status",
      "title": "Secret Spy Card",
      "annotations": {
        "readOnlyHint": true,
        "destructiveHint": false,
        "openWorldHint": false,
        "idempotentHint": true
      }
    },
    {
      "name": "secret_spy_move",
      "title": "Secret Spy Move",
      "annotations": {
        "readOnlyHint": false,
        "destructiveHint": false,
        "openWorldHint": false,
        "idempotentHint": false
      }
    },
    {
      "name": "secret_spy_host",
      "title": "Secret Spy Host Controls",
      "annotations": {
        "readOnlyHint": false,
        "destructiveHint": false,
        "openWorldHint": false,
        "idempotentHint": false
      }
    }
  ],
  "dataSources": [],
  "review": {
    "positiveTestCases": [
      {
        "description": "Host starts a game",
        "prompt": "Let's play the spy game where everyone knows the location except the spy. I'm Dana, 8 minute rounds.",
        "tools_triggered": [
          "start_secret_spy"
        ],
        "expected_behavior": "A lobby card with a 4-letter code, a join link and Dana as host; the model keeps the player key."
      },
      {
        "description": "A friend joins with the code",
        "prompt": "Join Huddle Secret Spy game DEMO as Sam",
        "tools_triggered": [
          "join_secret_spy"
        ],
        "expected_behavior": "Sam is seated in game DEMO (4 players) and gets their own player key."
      },
      {
        "description": "Host starts round 1",
        "prompt": "Everyone's in, start the round",
        "tools_triggered": [
          "secret_spy_host"
        ],
        "expected_behavior": "Round 1 starts: Dana's secret card (location and role, or the spy), an 8-minute clock and who asks first."
      },
      {
        "description": "A non-spy checks their card mid-round",
        "prompt": "What's my card again? I don't want to say it out loud.",
        "tools_triggered": [
          "secret_spy_status"
        ],
        "expected_behavior": "Priya's card: Submarine, sonar operator; Priya asks first; nothing about who the spy is."
      },
      {
        "description": "The spy reveals themself and guesses",
        "prompt": "I'm the spy and I'm pretty sure they're on a submarine. Reveal me and guess it.",
        "tools_triggered": [
          "secret_spy_move"
        ],
        "expected_behavior": "Round over: Leo the spy guessed the Submarine and scores 4."
      }
    ],
    "negativeTestCases": [
      {
        "prompt": "Recommend some good spy movies for a movie night.",
        "expected_behavior": "Does not call Huddle Secret Spy: A recommendation in conversation, not a game."
      },
      {
        "prompt": "Start a werewolf game with night and day phases for my friends.",
        "expected_behavior": "Does not call Huddle Secret Spy: A different social deduction game with its own plugin."
      },
      {
        "prompt": "Explain the rules of the board game Clue.",
        "expected_behavior": "Does not call Huddle Secret Spy: Rules of another game are a conversation, not a Secret Spy round."
      }
    ]
  }
}