{"openapi":"3.1.0","info":{"title":"Swotgrid API","version":"0.1.0","description":"A fully local SWOT analysis template builder: grid structuring, SO/WO/ST/WT strategy generation, impact×likelihood prioritization, an action-plan table, and hand-curated quadrant definitions, question prompts, strategy-type explanations, pitfalls, and industry-specific prompts.\n\nEvery operation is read-only or compute-only. The same tools are available over MCP (streamable HTTP) at https://swotgrid.connectorbay.com/mcp.","contact":{"name":"Unify Dynamics LLC","email":"hr@unifydynamics.com","url":"https://connectorbay.com/swotgrid/docs"},"termsOfService":"https://connectorbay.com/swotgrid/terms"},"servers":[{"url":"https://swotgrid.connectorbay.com"}],"externalDocs":{"url":"https://connectorbay.com/swotgrid/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/build_grid":{"post":{"operationId":"build_grid","summary":"Structures your four lists into a SWOT grid with counts, flagging any empty quadrant as likely","description":"Structures your four lists into a SWOT grid with counts, flagging any empty quadrant as likely\n    under-brainstormed. Use for \"help me build a SWOT grid from these notes\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"strengths":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"default":null,"description":"Internal advantages.","title":"Strengths"},"weaknesses":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"default":null,"description":"Internal disadvantages.","title":"Weaknesses"},"opportunities":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"default":null,"description":"External factors you could exploit.","title":"Opportunities"},"threats":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"default":null,"description":"External factors that could hurt you.","title":"Threats"}},"title":"build_gridArguments","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/generate_strategies":{"post":{"operationId":"generate_strategies","summary":"Pairs your quadrant items into SO/WO/ST/WT strategic implication statements (capped to the first 3 items","description":"Pairs your quadrant items into SO/WO/ST/WT strategic implication statements (capped to the first 3 items\n    per quadrant to keep it manageable). Use for \"what strategies come out of my strengths and opportunities\",\n    \"turn my SWOT into strategic options\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"strengths":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"default":null,"description":"Internal advantages.","title":"Strengths"},"weaknesses":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"default":null,"description":"Internal disadvantages.","title":"Weaknesses"},"opportunities":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"default":null,"description":"External factors you could exploit.","title":"Opportunities"},"threats":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"default":null,"description":"External factors that could hurt you.","title":"Threats"}},"title":"generate_strategiesArguments","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/quadrant_definitions":{"post":{"operationId":"quadrant_definitions","summary":"One quadrant's definition (internal/external, helpful/harmful) with examples — or all four. Use for \"what","description":"One quadrant's definition (internal/external, helpful/harmful) with examples — or all four. Use for \"what\n    belongs in the opportunities quadrant\", \"what's the difference between a weakness and a threat\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"quadrant":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"strengths | weaknesses | opportunities | threats; omit to list all four.","title":"Quadrant"}},"title":"quadrant_definitionsArguments","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/swot_guide":{"post":{"operationId":"swot_guide","summary":"The internal/external and helpful/harmful framing behind all four quadrants, plus the most common mistake","description":"The internal/external and helpful/harmful framing behind all four quadrants, plus the most common mistake\n    in filling out a SWOT (confusing internal and external factors) with the fix. Use for \"explain how a SWOT\n    works\", \"am I filling out my SWOT correctly\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"swot_guideArguments","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/question_prompts":{"post":{"operationId":"question_prompts","summary":"Brainstorming questions to elicit content for one quadrant, or all four. Use for \"give me questions to","description":"Brainstorming questions to elicit content for one quadrant, or all four. Use for \"give me questions to\n    brainstorm our strengths\", \"help me think of threats\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"quadrant":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"strengths | weaknesses | opportunities | threats; omit for all four.","title":"Quadrant"}},"title":"question_promptsArguments","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/strategy_type_guide":{"post":{"operationId":"strategy_type_guide","summary":"Explains one SO/WO/ST/WT strategy type (maxi-maxi, mini-maxi, maxi-mini, mini-mini) with a generic worked","description":"Explains one SO/WO/ST/WT strategy type (maxi-maxi, mini-maxi, maxi-mini, mini-mini) with a generic worked\n    example, or compares all four. Use for \"what's a WO strategy\", \"explain maxi-mini strategies\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"strategy_type":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"so | wo | st | wt; omit to compare all four.","title":"Strategy Type"}},"title":"strategy_type_guideArguments","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/prioritize_items":{"post":{"operationId":"prioritize_items","summary":"Ranks a list of SWOT items by impact × likelihood, descending — useful for deciding which strengths to","description":"Ranks a list of SWOT items by impact × likelihood, descending — useful for deciding which strengths to\n    lean on first or which threats to address first. Use for \"which of these threats should I worry about most\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"items":{"description":"Each as {item, impact, likelihood}, scored 1-5.","examples":[[{"impact":5,"item":"New low-cost competitor","likelihood":3},{"impact":2,"item":"Supplier price increase","likelihood":4}]],"items":{"additionalProperties":true,"type":"object"},"minItems":1,"title":"Items","type":"array"}},"required":["items"],"title":"prioritize_itemsArguments","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/swot_to_action_plan":{"post":{"operationId":"swot_to_action_plan","summary":"Turns a list of strategy statements into a trackable table with owner/timeframe/status placeholders. Use","description":"Turns a list of strategy statements into a trackable table with owner/timeframe/status placeholders. Use\n    for \"turn these strategies into an action plan\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"strategies":{"description":"Strategy statements, e.g. from generate_strategies.","items":{"type":"string"},"minItems":1,"title":"Strategies","type":"array"}},"required":["strategies"],"title":"swot_to_action_planArguments","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/common_pitfalls":{"post":{"operationId":"common_pitfalls","summary":"Frequent SWOT-analysis pitfalls beyond the internal/external confusion — doing it alone, no","description":"Frequent SWOT-analysis pitfalls beyond the internal/external confusion — doing it alone, no\n    follow-through, never revisiting it, wishful thinking. Use for \"what mistakes do people make doing a\n    SWOT\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"common_pitfallsArguments","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/industry_prompt_bank":{"post":{"operationId":"industry_prompt_bank","summary":"Tailored SWOT brainstorming prompts for a product-based business, a service business, a nonprofit, or a","description":"Tailored SWOT brainstorming prompts for a product-based business, a service business, a nonprofit, or a\n    personal/career SWOT. Use for \"give me SWOT questions for a nonprofit\", \"SWOT prompts for my own career\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"category":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"product_business | service_business | nonprofit | personal_career; omit to list all.","title":"Category"}},"title":"industry_prompt_bankArguments","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}}}}