{"openapi":"3.1.0","info":{"title":"Cartridge API","version":"0.1.0","description":"A fully local, hand-curated retro video game console & cartridge collecting reference: console generations one through five with representative hardware and historical context, cartridge-vs-disc media history, 30 collecting/grading glossary terms, third-party grading scale explainers described generically, storage/preservation tips, and common retro console troubleshooting.\n\nEvery operation is read-only or compute-only. The same tools are available over MCP (streamable HTTP) at https://cartridge.connectorbay.com/mcp.","contact":{"name":"Unify Dynamics LLC","email":"hr@unifydynamics.com","url":"https://connectorbay.com/cartridge/docs"},"termsOfService":"https://connectorbay.com/cartridge/terms"},"servers":[{"url":"https://cartridge.connectorbay.com"}],"externalDocs":{"url":"https://connectorbay.com/cartridge/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/console_generation_info":{"post":{"operationId":"console_generation_info","summary":"Full detail for one console generation (1st through 5th): era name, approximate year range, dominant","description":"Full detail for one console generation (1st through 5th): era name, approximate year range, dominant\n    media format, the defining shift versus the previous generation, representative consoles with maker/\n    approx release year/region notes, key characteristics, and a historical note. Use for \"what generation\n    is the SNES\", \"tell me about the 5th generation\", \"what came after the NES\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"generation_number_or_name":{"description":"A console generation's number, ordinal/era name, or a representative console's name.","examples":["4","fourth generation","8-bit era","Sega Genesis","PlayStation"],"minLength":1,"title":"Generation Number Or Name","type":"string"}},"required":["generation_number_or_name"],"title":"console_generation_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/find_generation_by_year":{"post":{"operationId":"find_generation_by_year","summary":"Every console generation broadly associated with a given year. Generations overlap in the real world","description":"Every console generation broadly associated with a given year. Generations overlap in the real world\n    (older hardware kept selling well after a newer generation launched), so returning more than one\n    generation for a year is normal and expected, not an error. Use for \"what generation was current in\n    1994\", \"what consoles came out around 1990\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"year":{"description":"A calendar year.","examples":[1985,1990,1996],"maximum":2010,"minimum":1970,"title":"Year","type":"integer"}},"required":["year"],"title":"find_generation_by_yearArguments","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/collecting_term_glossary":{"post":{"operationId":"collecting_term_glossary","summary":"Definitions of retro game collecting terms - CIB, loose, sealed, NIB, reproduction, bootleg, region","description":"Definitions of retro game collecting terms - CIB, loose, sealed, NIB, reproduction, bootleg, region\n    lock, save battery, variant, PCB revision, flash cart, and more. Omit `term` to list every term, or pass\n    a keyword to search. Use for \"what does CIB mean\", \"what's a repro cartridge\", \"what's a save battery\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"term":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"A specific collecting term to look up; omit to list all.","title":"Term"}},"title":"collecting_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/grading_scale_explainer":{"post":{"operationId":"grading_scale_explainer","summary":"A generic, factual overview of how a third-party grading approach (WATA-style, VGA-style, CGC-style),","description":"A generic, factual overview of how a third-party grading approach (WATA-style, VGA-style, CGC-style),\n    the informal loose-item condition scale, or the completeness-tiers concept is commonly understood to\n    work: what's typically graded, what graders commonly consider, and an explicit caveat that this isn't\n    any company's official proprietary rubric. Omit `scale` to list all. Use for \"how does WATA grading\n    work\", \"what's the difference between CIB and sealed grading\", \"what condition is 'Near Mint'\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"scale":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"A grading approach to explain; omit to list all.","examples":["WATA","VGA","CGC","loose condition scale","completeness tiers"],"title":"Scale"}},"title":"grading_scale_explainerArguments","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/preservation_tip":{"post":{"operationId":"preservation_tip","summary":"Storage and preservation guidance for a retro game collection - humidity control, light/UV exposure,","description":"Storage and preservation guidance for a retro game collection - humidity control, light/UV exposure,\n    how to store cartridges and discs, battery removal, box storage, and more. Omit `topic` to list all, or\n    pass a keyword to search. Use for \"how should I store my cartridges\", \"will sunlight damage my games\",\n    \"should I take the battery out of a cartridge\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"topic":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"A storage/preservation topic; omit to list all.","examples":["humidity","UV light","cartridge storage","disc handling","batteries"],"title":"Topic"}},"title":"preservation_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/troubleshooting_tip":{"post":{"operationId":"troubleshooting_tip","summary":"Common retro console/cartridge problems and general hobbyist fixes - cleaning cartridge contacts, a","description":"Common retro console/cartridge problems and general hobbyist fixes - cleaning cartridge contacts, a\n    worn console connector (the classic \"blinking light\" symptom), disc read errors, controller stick\n    drift, leaking capacitors, a dead save battery, yellowed plastic, and power supply issues. Each entry\n    notes whether it's an advanced repair, and those responses carry an electrical-safety notice. Omit\n    `issue` to list all, or pass a keyword to search. Use for \"why won't my NES read games\", \"how do I clean\n    cartridge contacts\", \"my save file disappeared\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"issue":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"A console/cartridge problem; omit to list all.","examples":["dirty contacts","blinking light","disc read error","stick drift","leaking capacitors","dead save battery"],"title":"Issue"}},"title":"troubleshooting_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/history_note":{"post":{"operationId":"history_note","summary":"Explains a cartridge/console collecting history topic - the 1983 North American video game crash, why","description":"Explains a cartridge/console collecting history topic - the 1983 North American video game crash, why\n    the industry shifted from cartridges to discs, why the Nintendo 64 stayed cartridge-based, lockout chips\n    and third-party licensing, early CD-ROM add-ons, the rise of third-party publishing, rental stores,\n    pack-in games, and more. Omit `topic` to list all, or pass a keyword to search. Use for \"why did games\n    move to CDs\", \"why didn't the N64 use discs\", \"what caused the video game crash\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"topic":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"A cartridge/console history topic; omit to list all.","examples":["1983 crash","cartridge vs disc economics","why N64 used cartridges","lockout chips","CD-ROM add-ons"],"title":"Topic"}},"title":"history_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/category_list":{"post":{"operationId":"category_list","summary":"Every content category this reference covers (console generations, collecting glossary, grading","description":"Every content category this reference covers (console generations, collecting glossary, grading\n    scales, preservation, troubleshooting, history notes) with how many entries each has. Use for \"what do\n    you cover\", \"what categories are there\".","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":"A curated, ordered list of practical tips for someone starting to collect retro consoles and","description":"A curated, ordered list of practical tips for someone starting to collect retro consoles and\n    cartridges, from spotting reproductions through storage and budgeting. Use for \"give me beginner\n    collecting tips\", \"how do I start collecting retro games\".","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}}}}