{"openapi":"3.0.3","info":{"title":"RTM MCP REST API","version":"1.0.0","description":"REST wrapper around the RTM MCP toolset. Authenticate with x-api-key."},"tags":[{"name":"docs","description":"Machine and human-readable docs"},{"name":"tools","description":"Tool discovery and invocation"}],"components":{"securitySchemes":{"ApiKeyAuth":{"type":"apiKey","in":"header","name":"x-api-key","description":"API key from the dashboard settings page"}},"schemas":{"ToolInfo":{"type":"object","properties":{"name":{"type":"string"},"description":{"type":"string"},"parameters":{"type":"object"}},"required":["name","description","parameters"]},"InvokeRequest":{"type":"object","properties":{"tool":{"type":"string","enum":["get_tasks","add_task","complete_task","uncomplete_task","delete_task","set_priority","set_due_date","set_start_date","rename_task","set_recurrence","set_estimate","set_url","postpone_task","move_task","get_tags","add_tags","remove_tags","set_tags","add_note","edit_note","delete_note","get_lists","create_list","rename_list","archive_list","delete_list","get_locations","set_location","get_settings"],"description":"Tool name to invoke"},"input":{"type":"object","additionalProperties":true,"description":"Tool input payload"}},"required":["tool"]},"InvokeSuccess":{"type":"object","properties":{"success":{"type":"boolean","enum":[true]},"result":{"description":"Tool-specific result payload","type":"object","additionalProperties":true}},"required":["success","result"]},"ErrorResponse":{"type":"object","properties":{"error":{"type":"string"}},"required":["error"]}}},"paths":{"/api/v1/tools":{"get":{"tags":["tools"],"summary":"List available tools","description":"Returns all tool names, descriptions, and parameter schemas.","responses":{"200":{"description":"Tools list","content":{"application/json":{"schema":{"type":"object","properties":{"version":{"type":"string"},"tools":{"type":"array","items":{"$ref":"#/components/schemas/ToolInfo"}}},"required":["version","tools"]}}}}}}},"/api/v1/invoke":{"post":{"tags":["tools"],"summary":"Invoke a tool","description":"Calls a tool with the provided input payload.","security":[{"ApiKeyAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/InvokeRequest"},"examples":{"get_tasks":{"value":{"tool":"get_tasks","input":{}}},"add_task":{"value":{"tool":"add_task","input":{}}},"complete_task":{"value":{"tool":"complete_task","input":{}}},"uncomplete_task":{"value":{"tool":"uncomplete_task","input":{}}},"delete_task":{"value":{"tool":"delete_task","input":{}}},"set_priority":{"value":{"tool":"set_priority","input":{}}},"set_due_date":{"value":{"tool":"set_due_date","input":{}}},"set_start_date":{"value":{"tool":"set_start_date","input":{}}},"rename_task":{"value":{"tool":"rename_task","input":{}}},"set_recurrence":{"value":{"tool":"set_recurrence","input":{}}},"set_estimate":{"value":{"tool":"set_estimate","input":{}}},"set_url":{"value":{"tool":"set_url","input":{}}},"postpone_task":{"value":{"tool":"postpone_task","input":{}}},"move_task":{"value":{"tool":"move_task","input":{}}},"get_tags":{"value":{"tool":"get_tags","input":{}}},"add_tags":{"value":{"tool":"add_tags","input":{}}},"remove_tags":{"value":{"tool":"remove_tags","input":{}}},"set_tags":{"value":{"tool":"set_tags","input":{}}},"add_note":{"value":{"tool":"add_note","input":{}}},"edit_note":{"value":{"tool":"edit_note","input":{}}},"delete_note":{"value":{"tool":"delete_note","input":{}}},"get_lists":{"value":{"tool":"get_lists","input":{}}},"create_list":{"value":{"tool":"create_list","input":{}}},"rename_list":{"value":{"tool":"rename_list","input":{}}},"archive_list":{"value":{"tool":"archive_list","input":{}}},"delete_list":{"value":{"tool":"delete_list","input":{}}},"get_locations":{"value":{"tool":"get_locations","input":{}}},"set_location":{"value":{"tool":"set_location","input":{}}},"get_settings":{"value":{"tool":"get_settings","input":{}}}}}}},"responses":{"200":{"description":"Tool invocation result","content":{"application/json":{"schema":{"$ref":"#/components/schemas/InvokeSuccess"}}}},"400":{"description":"Invalid request or unknown tool","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Missing or invalid authentication","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}}},"/api/v1/skills.md":{"get":{"tags":["docs"],"summary":"Detailed AI usage guide","responses":{"200":{"description":"Markdown guide","content":{"text/markdown":{"schema":{"type":"string"}}}}}}},"/api/v1/openapi.json":{"get":{"tags":["docs"],"summary":"OpenAPI specification","responses":{"200":{"description":"OpenAPI JSON","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}}}}},"/api/v1/docs":{"get":{"tags":["docs"],"summary":"Interactive Swagger UI","responses":{"200":{"description":"Swagger UI HTML","content":{"text/html":{"schema":{"type":"string"}}}}}}}}}