{"openapi":"3.1.0","info":{"title":"Auction API","version":"0.1.0","description":"A fully local, hand-curated reference on auction and bidding mechanics in board and card games: English ascending, Dutch descending, sealed-bid/blind, once-around, all-pay, multi-item/combinatorial, special-purpose and bid-to-declare formats, each with how it works, strategic notes, pros/cons and factual real-game examples, plus a bidding-terms glossary, game-design balancing tips, qualitative expected-value notes, and player-count guidance.\n\nEvery operation is read-only or compute-only. The same tools are available over MCP (streamable HTTP) at https://auction.connectorbay.com/mcp.","contact":{"name":"Unify Dynamics LLC","email":"hr@unifydynamics.com","url":"https://connectorbay.com/auction/docs"},"termsOfService":"https://connectorbay.com/auction/terms"},"servers":[{"url":"https://auction.connectorbay.com"}],"externalDocs":{"url":"https://connectorbay.com/auction/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 auction/bidding mechanic: category, how it works step by step, strategic notes, common","description":"Full detail for one auction/bidding mechanic: category, how it works step by step, strategic notes, common\n    variants, pros/cons, and factual real-game examples. Use for \"how does a Dutch auction work\", \"explain\n    once-around bidding\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"name":{"description":"An auction/bidding mechanic's name or alias.","examples":["English auction","Dutch auction","once-around auction","Vickrey auction"],"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/mechanic_search":{"post":{"operationId":"mechanic_search","summary":"Keyword search across every mechanic's name, aliases, category, summary, strategic notes and example games.","description":"Keyword search across every mechanic's name, aliases, category, summary, strategic notes and example games.\n    Use for \"auction mechanics for a market theme\", \"any mechanic that uses tokens\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"query":{"description":"Keyword to search for.","minLength":1,"title":"Query","type":"string"}},"required":["query"],"title":"mechanic_searchArguments","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/mechanics_by_category":{"post":{"operationId":"mechanics_by_category","summary":"Every mechanic in one category. Use category_list to see valid category names. Use for \"list all once-around","description":"Every mechanic in one category. Use category_list to see valid category names. Use for \"list all once-around\n    auctions\", \"what sealed-bid formats do you have\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"category":{"description":"A category name.","examples":["Ascending (English-Style)","Sealed-Bid & Blind","Once-Around"],"title":"Category","type":"string"}},"required":["category"],"title":"mechanics_by_categoryArguments","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 auction-mechanic category with how many mechanics are in it. Use for \"what categories of auction","description":"Every auction-mechanic category with how many mechanics are in it. Use for \"what categories of auction\n    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/auction_type_comparison":{"post":{"operationId":"auction_type_comparison","summary":"A side-by-side comparison of two named auction mechanics' summary, typical pace, and pros/cons. Use for","description":"A side-by-side comparison of two named auction mechanics' summary, typical pace, and pros/cons. Use for\n    \"English vs Dutch auction, what's the difference\", \"compare once-around and sealed-bid\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"a":{"description":"First mechanic's name.","examples":["English auction"],"minLength":1,"title":"A","type":"string"},"b":{"description":"Second mechanic's name.","examples":["Dutch auction"],"minLength":1,"title":"B","type":"string"}},"required":["a","b"],"title":"auction_type_comparisonArguments","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 auction/bidding terms — reserve price, hammer price, blind bid, winner's curse, sunk","description":"Definitions of common auction/bidding terms — reserve price, hammer price, blind bid, winner's curse, sunk\n    cost, shill bid, once-around, kingmaking, and more. Use for \"what's a reserve price\", \"what's the winner's\n    curse\".","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/design_tip":{"post":{"operationId":"design_tip","summary":"Game-design tips for balancing auction/bidding mechanics when designing or house-ruling a game — preventing","description":"Game-design tips for balancing auction/bidding mechanics when designing or house-ruling a game — preventing\n    a runaway leader, softening losses for underbidders, capping auction length, guarding against self-auction\n    abuse, and more. Use for \"how do I stop the same player winning every auction\", \"how do I speed up bidding\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"topic":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"A balancing topic to look up; omit to list all.","examples":["preventing a runaway leader","keeping auctions from dragging"],"title":"Topic"}},"title":"design_tipArguments","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/calculate_expected_value_note":{"post":{"operationId":"calculate_expected_value_note","summary":"A qualitative, conceptual note on a bidding-theory idea as it applies to tabletop auction mechanics —","description":"A qualitative, conceptual note on a bidding-theory idea as it applies to tabletop auction mechanics —\n    bidding up to your valuation, the winner's curse, why honesty pays in second-price formats, sunk-cost\n    discipline, scarcity and aggression. This is tabletop game-design and strategy commentary, not financial,\n    investment, or real-world auction/betting advice. Use for \"should I bid up to what it's worth to me\", \"what's\n    the winner's curse in game terms\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"topic":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"A bidding-theory topic to look up; omit to list all.","examples":["bidding up to your own valuation","the winner's curse","sunk-cost discipline"],"title":"Topic"}},"title":"calculate_expected_value_noteArguments","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, factually referenced games known to use a given auction/bidding mechanic, with a short note on how.","description":"Real, factually referenced games known to use a given auction/bidding mechanic, with a short note on how.\n    Use for \"what games use sealed-bid auctions\", \"give me an example of a once-around auction in a real game\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"mechanic":{"description":"An auction/bidding mechanic's name or alias.","examples":["once-around auction","reusable-token blind bidding"],"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/find_game_for_group":{"post":{"operationId":"find_game_for_group","summary":"Suggests which auction/bidding mechanics suit a given player count and why, with mechanics that tend to","description":"Suggests which auction/bidding mechanics suit a given player count and why, with mechanics that tend to\n    work less well at that count. Use for \"what auction mechanic works best with 6 players\", \"is a once-around\n    auction good for 2 players\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"player_count":{"description":"How many players will be at the table.","examples":[2,4,6,8],"maximum":20,"minimum":2,"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}}}}