{"openapi":"3.1.0","info":{"title":"educator-toolkit-server","description":"Six educator-craft tools over REST and MCP","version":"0.0.1"},"paths":{"/health":{"get":{"summary":"Health","operationId":"health_health_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":{"type":"string"},"type":"object","title":"Response Health Health Get"}}}}}}},"/v1/tools":{"get":{"summary":"List Tools","description":"Catalog of the six tools (for non-MCP integrators).","operationId":"list_tools_v1_tools_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"items":{"additionalProperties":{"type":"string"},"type":"object"},"type":"array","title":"Response List Tools V1 Tools Get"}}}}}}},"/v1/{tool_name}":{"post":{"summary":"Invoke Tool","operationId":"invoke_tool_v1__tool_name__post","parameters":[{"name":"tool_name","in":"path","required":true,"schema":{"type":"string","title":"Tool Name"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ToolInput"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ToolResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}},"components":{"schemas":{"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"ToolInput":{"properties":{"question":{"type":"string","minLength":1,"title":"Question","description":"What the caller wants the tool to help with."},"artifact":{"type":"string","minLength":1,"title":"Artifact","description":"The thing being reviewed — pasted content, module list, prompt template, rubric, source material."},"artifact_kind":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Artifact Kind","description":"Optional hint: 'ai_tool_prompt', 'lesson_plan', 'rubric', 'curriculum_outline', 'content_source', or freeform."},"artifact_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Artifact Name","description":"Optional human-readable name of the artifact."},"sample_output":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Sample Output","description":"Optional: an example output the artifact produced. Useful for critique and simulation tools."}},"type":"object","required":["question","artifact"],"title":"ToolInput"},"ToolResponse":{"properties":{"status":{"$ref":"#/components/schemas/ToolResponseStatus"},"assessment":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Assessment"},"key_points":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Key Points"},"follow_ups":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Follow Ups"},"suggested_tool":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Suggested Tool"},"caveats":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Caveats"},"error":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Error"}},"type":"object","required":["status"],"title":"ToolResponse"},"ToolResponseStatus":{"type":"string","enum":["complete","needs_input","out_of_lane","refused","error"],"title":"ToolResponseStatus"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}}}}