{"openapi":"3.1.0","info":{"title":"Questgame API","version":"0.1.0","description":"A fully local, hand-curated genre reference for adventure/quest narrative tabletop games: 36 mechanics across branching, exploration, quest-tracking, character/party, encounter-resolution, campaign/legacy and world-system design; the four narrative structure types; a genre glossary; design-consideration essays; and a factual survey of 27 real published games, browsable by player count.\n\nEvery operation is read-only or compute-only. The same tools are available over MCP (streamable HTTP) at https://questgame.connectorbay.com/mcp.","contact":{"name":"Unify Dynamics LLC","email":"hr@unifydynamics.com","url":"https://connectorbay.com/questgame/docs"},"termsOfService":"https://connectorbay.com/questgame/terms"},"servers":[{"url":"https://questgame.connectorbay.com"}],"externalDocs":{"url":"https://connectorbay.com/questgame/docs"},"security":[{},{"bearer":[]}],"components":{"securitySchemes":{"bearer":{"type":"http","scheme":"bearer","description":"Optional. A Pro API key raises rate limits; no credentials are required."}},"schemas":{"Error":{"type":"object","properties":{"ok":{"const":false},"error":{"type":"object"}}}}},"paths":{"/v1/tools/mechanic_info":{"post":{"operationId":"mechanic_info","summary":"Full detail for one adventure/quest game mechanic: its category, a plain-language summary, how it","description":"Full detail for one adventure/quest game mechanic: its category, a plain-language summary, how it\n    works and why designers use it, and real published games that use it. Use for \"what is codeword gating\",\n    \"how does fog-of-war exploration work\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"name":{"description":"A game mechanic's name or alias.","examples":["choose-your-path branching","quest log","legacy persistence","party splitting"],"minLength":1,"title":"Name","type":"string"}},"required":["name"],"title":"mechanic_infoArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/narrative_structure_type":{"post":{"operationId":"narrative_structure_type","summary":"Explains one of the four narrative structure types used to organize an adventure/quest game's story:","description":"Explains one of the four narrative structure types used to organize an adventure/quest game's story:\n    linear, branching, hub-and-spoke, or sandbox — with a detailed explanation, pros, cons, and real examples.\n    Use for \"what's a hub-and-spoke structure\", \"linear vs branching, what's the difference\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"name":{"description":"A narrative structure type.","examples":["linear","branching","hub-and-spoke","sandbox"],"minLength":1,"title":"Name","type":"string"}},"required":["name"],"title":"narrative_structure_typeArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/term_glossary":{"post":{"operationId":"term_glossary","summary":"Definitions of common adventure/quest game genre terms — gamebook, paragraph, codeword, node,","description":"Definitions of common adventure/quest game genre terms — gamebook, paragraph, codeword, node,\n    convergence point, MacGuffin, quest log, legacy game, red herring, agency, and more. Use for \"what does\n    MacGuffin mean\", \"what's a convergence point\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"term":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"A specific term to look up; omit to list all.","title":"Term"}},"title":"term_glossaryArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/game_examples":{"post":{"operationId":"game_examples","summary":"Real, published adventure/quest games that use a named mechanic, referenced factually as examples (not","description":"Real, published adventure/quest games that use a named mechanic, referenced factually as examples (not\n    a rules database for any one of them). Use for \"what games use a legacy campaign system\", \"which games\n    have branching dialogue\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"mechanic":{"description":"A mechanic name to find real games for.","examples":["legacy persistence","fog-of-war exploration","clue trails"],"minLength":1,"title":"Mechanic","type":"string"}},"required":["mechanic"],"title":"game_examplesArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/design_consideration":{"post":{"operationId":"design_consideration","summary":"An in-depth look at one recurring design consideration in adventure/quest narrative games — what the","description":"An in-depth look at one recurring design consideration in adventure/quest narrative games — what the\n    trade-off is, and practical tips for a group or designer. Use for \"how do designers manage branching\n    complexity\", \"what makes a quest game replayable\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"topic":{"description":"A game-design topic.","examples":["branching complexity management","replayability","pacing across sessions","bookkeeping load"],"minLength":1,"title":"Topic","type":"string"}},"required":["topic"],"title":"design_considerationArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/find_game_for_group":{"post":{"operationId":"find_game_for_group","summary":"Real published adventure/quest games whose stated player-count range fits a group of this size, best","description":"Real published adventure/quest games whose stated player-count range fits a group of this size, best\n    (tightest-range) fits first. Use for \"what's a good quest game for 4 players\", \"any of these playable\n    solo\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"player_count":{"description":"Number of players in the group.","examples":[1,2,4,6],"maximum":12,"minimum":1,"title":"Player Count","type":"integer"}},"required":["player_count"],"title":"find_game_for_groupArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/category_list":{"post":{"operationId":"category_list","summary":"Every mechanic category this reference covers, with how many mechanics are in each. Use for \"what","description":"Every mechanic category this reference covers, with how many mechanics are in each. Use for \"what\n    categories of quest-game mechanics do you cover\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"category_listArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/beginner_tips":{"post":{"operationId":"beginner_tips","summary":"Original tips for someone new to adventure/quest narrative tabletop games — how to track a quest log,","description":"Original tips for someone new to adventure/quest narrative tabletop games — how to track a quest log,\n    handle branching failure, and more. Use for \"tips for my first branching adventure game\", \"advice for\n    running a quest-log campaign\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"count":{"default":5,"description":"How many tips to return.","maximum":10,"minimum":1,"title":"Count","type":"integer"}},"title":"beginner_tipsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}}}}