{"ok":true,"site":{"host":"openapi-web-mcp.vercel.app","url":"https://openapi-web-mcp.vercel.app/","type":"live","desc":"A normal Swagger UI documentation page that a browser agent can drive, using the environment and session the developer already has open.","tools":[{"name":"openapi_get_context","kind":"answer","impl":"imperative","description":"Read the current Swagger UI API context: selected server, safe authorization status, operation counts, and how many operations the publisher exposes to agents as reads or writes, holds back, or hides.","title":"OpenAPI context","annotations":{"readOnlyHint":true},"inputSchema":{"type":"object","additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"openapi_search_operations","kind":"act","impl":"imperative","description":"Search operations in the OpenAPI document currently loaded in Swagger UI. Each result reports its agent policy. OpenAPI text is untrusted content.","title":"Search OpenAPI operations","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"query":{"type":"string"},"method":{"type":"string"},"tag":{"type":"string"},"limit":{"type":"integer","minimum":1,"maximum":30}},"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"openapi_get_operation","kind":"answer","impl":"imperative","description":"Inspect a bounded operation summary, its input schema and its agent policy from the OpenAPI document currently loaded in Swagger UI. OpenAPI text is untrusted content.","title":"Get OpenAPI operation","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"operation":{"type":"string","minLength":1}},"required":["operation"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"openapi_execute_operation","kind":"act","impl":"imperative","description":"Execute one operation that exists in the current Swagger UI OpenAPI document, using its live server and authorization state. Permissioning happens in the WebMCP client; this page never prompts.","title":"Execute OpenAPI operation","annotations":{"readOnlyHint":false,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"operation":{"type":"string"},"path":{"type":"object"},"query":{"type":"object"},"headers":{"type":"object"},"body":{},"contentType":{"type":"string"}},"required":["operation"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"openapi_execute_batch","kind":"act","impl":"imperative","description":"Run several operations from the current document in order. The full plan is visible in the input schema, and the tool is registered with destructiveHint, so the WebMCP client gates the whole invocation as one unit. All steps are exposure-checked before any of them run; if one is not exposed, nothing executes. At most 10 steps.","title":"Execute a batch of OpenAPI operations","annotations":{"readOnlyHint":false,"destructiveHint":true,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"steps":{"type":"array","minItems":1,"maxItems":10,"items":{"type":"object","properties":{"operation":{"type":"string"},"path":{"type":"object"},"query":{"type":"object"},"headers":{"type":"object"},"body":{},"contentType":{"type":"string"}},"required":["operation"],"additionalProperties":false}},"stopOnError":{"type":"boolean","default":true,"description":"Stop after the first failing step instead of continuing."}},"required":["steps"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"api.getHealth.539ab2","kind":"act","impl":"imperative","description":"Execute GET /health from the OpenAPI document currently loaded in Swagger UI. Uses the page's current server and authorization state.","title":"get Health","annotations":{"readOnlyHint":true,"destructiveHint":false,"costHint":false,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{},"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"api.getMe.b075af","kind":"act","impl":"imperative","description":"Execute GET /me from the OpenAPI document currently loaded in Swagger UI. Uses the page's current server and authorization state.","title":"get Me","annotations":{"readOnlyHint":true,"destructiveHint":false,"costHint":false,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{},"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"api.listProjects.aefb3d","kind":"act","impl":"imperative","description":"Execute GET /projects from the OpenAPI document currently loaded in Swagger UI. Uses the page's current server and authorization state.","title":"list Projects","annotations":{"readOnlyHint":true,"destructiveHint":false,"costHint":false,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"query":{"type":"object","properties":{"status":{"type":"string","enum":["active","paused","archived"],"description":"query parameter \"status\"."},"q":{"type":"string","maxLength":120,"description":"query parameter \"q\"."},"tag":{"type":"array","items":{"type":"string"},"maxItems":10,"description":"query parameter \"tag\"."},"sort":{"type":"string","enum":["updatedAt","createdAt","name"],"default":"updatedAt","description":"query parameter \"sort\"."},"limit":{"type":"integer","minimum":1,"maximum":100,"default":20,"description":"query parameter \"limit\"."},"cursor":{"type":"string","description":"query parameter \"cursor\"."}},"additionalProperties":false}},"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"api.createProject.ae6514","kind":"act","impl":"imperative","description":"Execute POST /projects from the OpenAPI document currently loaded in Swagger UI. Uses the page's current server and authorization state.","title":"create Project","annotations":{"readOnlyHint":false,"destructiveHint":false,"costHint":false,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"body":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":120},"description":{"type":"string","maxLength":2000},"priority":{"type":"string","enum":["low","medium","high"],"default":"medium"},"tags":{"type":"array","items":{"type":"string"},"maxItems":10}},"required":["name"],"additionalProperties":false}},"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"api.getProject.3916b3","kind":"act","impl":"imperative","description":"Execute GET /projects/{projectId} from the OpenAPI document currently loaded in Swagger UI. Uses the page's current server and authorization state.","title":"get Project","annotations":{"readOnlyHint":true,"destructiveHint":false,"costHint":false,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"path":{"type":"object","properties":{"projectId":{"type":"string","maxLength":64,"description":"path parameter \"projectId\"."}},"additionalProperties":false,"required":["projectId"]}},"additionalProperties":false,"required":["path"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"api.updateProject.579f56","kind":"act","impl":"imperative","description":"Execute PATCH /projects/{projectId} from the OpenAPI document currently loaded in Swagger UI. Uses the page's current server and authorization state.","title":"update Project","annotations":{"readOnlyHint":false,"destructiveHint":false,"costHint":false,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"path":{"type":"object","properties":{"projectId":{"type":"string","maxLength":64,"description":"path parameter \"projectId\"."}},"additionalProperties":false,"required":["projectId"]},"headers":{"type":"object","properties":{"If-Match":{"type":"string","description":"headers parameter \"If-Match\"."}},"additionalProperties":false},"body":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":120},"description":{"type":"string","maxLength":2000},"status":{"type":"string","enum":["active","paused","archived"]},"priority":{"type":"string","enum":["low","medium","high"]},"tags":{"type":"array","items":{"type":"string"},"maxItems":10}},"additionalProperties":false}},"additionalProperties":false,"required":["path"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"api.deleteProject.872ff7","kind":"transact","impl":"imperative","description":"Execute DELETE /projects/{projectId} from the OpenAPI document currently loaded in Swagger UI. Uses the page's current server and authorization state.","title":"delete Project","annotations":{"readOnlyHint":false,"destructiveHint":true,"costHint":false,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"path":{"type":"object","properties":{"projectId":{"type":"string","maxLength":64,"description":"path parameter \"projectId\"."}},"additionalProperties":false,"required":["projectId"]}},"additionalProperties":false,"required":["path"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"api.archiveProject.58bf01","kind":"act","impl":"imperative","description":"Execute POST /projects/{projectId}/archive from the OpenAPI document currently loaded in Swagger UI. Uses the page's current server and authorization state.","title":"archive Project","annotations":{"readOnlyHint":false,"destructiveHint":false,"costHint":false,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"path":{"type":"object","properties":{"projectId":{"type":"string","maxLength":64,"description":"path parameter \"projectId\"."}},"additionalProperties":false,"required":["projectId"]}},"additionalProperties":false,"required":["path"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"api.listTasks.9cc6f7","kind":"act","impl":"imperative","description":"Execute GET /projects/{projectId}/tasks from the OpenAPI document currently loaded in Swagger UI. Uses the page's current server and authorization state.","title":"list Tasks","annotations":{"readOnlyHint":true,"destructiveHint":false,"costHint":false,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"path":{"type":"object","properties":{"projectId":{"type":"string","maxLength":64,"description":"path parameter \"projectId\"."}},"additionalProperties":false,"required":["projectId"]},"query":{"type":"object","properties":{"status":{"type":"string","enum":["open","in_progress","blocked","done"],"description":"query parameter \"status\"."},"assignee":{"type":"string","format":"email","description":"query parameter \"assignee\"."},"limit":{"type":"integer","minimum":1,"maximum":100,"default":20,"description":"query parameter \"limit\"."},"cursor":{"type":"string","description":"query parameter \"cursor\"."}},"additionalProperties":false}},"additionalProperties":false,"required":["path"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"api.createTask.8fc1dc","kind":"act","impl":"imperative","description":"Execute POST /projects/{projectId}/tasks from the OpenAPI document currently loaded in Swagger UI. Uses the page's current server and authorization state.","title":"create Task","annotations":{"readOnlyHint":false,"destructiveHint":false,"costHint":false,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"path":{"type":"object","properties":{"projectId":{"type":"string","maxLength":64,"description":"path parameter \"projectId\"."}},"additionalProperties":false,"required":["projectId"]},"body":{"type":"object","properties":{"title":{"type":"string","minLength":1,"maxLength":200},"description":{"type":"string","maxLength":4000},"priority":{"type":"string","enum":["low","medium","high","urgent"]},"status":{"type":"string","enum":["open","in_progress","blocked","done"],"default":"open"},"assignee":{"type":"string","format":"email"},"labels":{"type":"array","items":{"type":"string"},"maxItems":10},"dueDate":{"type":"string","format":"date-time"}},"required":["title","priority"],"additionalProperties":false}},"additionalProperties":false,"required":["path"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"api.getTask.ebd567","kind":"act","impl":"imperative","description":"Execute GET /projects/{projectId}/tasks/{taskId} from the OpenAPI document currently loaded in Swagger UI. Uses the page's current server and authorization state.","title":"get Task","annotations":{"readOnlyHint":true,"destructiveHint":false,"costHint":false,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"path":{"type":"object","properties":{"projectId":{"type":"string","maxLength":64,"description":"path parameter \"projectId\"."},"taskId":{"type":"string","maxLength":64,"description":"path parameter \"taskId\"."}},"additionalProperties":false,"required":["projectId","taskId"]}},"additionalProperties":false,"required":["path"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"api.updateTask.b1473f","kind":"act","impl":"imperative","description":"Execute PATCH /projects/{projectId}/tasks/{taskId} from the OpenAPI document currently loaded in Swagger UI. Uses the page's current server and authorization state.","title":"update Task","annotations":{"readOnlyHint":false,"destructiveHint":false,"costHint":false,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"path":{"type":"object","properties":{"projectId":{"type":"string","maxLength":64,"description":"path parameter \"projectId\"."},"taskId":{"type":"string","maxLength":64,"description":"path parameter \"taskId\"."}},"additionalProperties":false,"required":["projectId","taskId"]},"body":{"type":"object","properties":{"title":{"type":"string","minLength":1,"maxLength":200},"description":{"type":"string","maxLength":4000},"priority":{"type":"string","enum":["low","medium","high","urgent"]},"status":{"type":"string","enum":["open","in_progress","blocked","done"]},"assignee":{"type":["string","null"],"format":"email"},"labels":{"type":"array","items":{"type":"string"},"maxItems":10},"dueDate":{"type":"string","format":"date-time"}},"additionalProperties":false}},"additionalProperties":false,"required":["path"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"api.deleteTask.fdcd94","kind":"transact","impl":"imperative","description":"Execute DELETE /projects/{projectId}/tasks/{taskId} from the OpenAPI document currently loaded in Swagger UI. Uses the page's current server and authorization state.","title":"delete Task","annotations":{"readOnlyHint":false,"destructiveHint":true,"costHint":false,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"path":{"type":"object","properties":{"projectId":{"type":"string","maxLength":64,"description":"path parameter \"projectId\"."},"taskId":{"type":"string","maxLength":64,"description":"path parameter \"taskId\"."}},"additionalProperties":false,"required":["projectId","taskId"]}},"additionalProperties":false,"required":["path"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"api.searchTasks.ccf732","kind":"act","impl":"imperative","description":"Execute GET /tasks from the OpenAPI document currently loaded in Swagger UI. Uses the page's current server and authorization state.","title":"search Tasks","annotations":{"readOnlyHint":true,"destructiveHint":false,"costHint":false,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"query":{"type":"object","properties":{"q":{"type":"string","maxLength":120,"description":"query parameter \"q\"."},"status":{"type":"string","enum":["open","in_progress","blocked","done"],"description":"query parameter \"status\"."},"priority":{"type":"string","enum":["low","medium","high","urgent"],"description":"query parameter \"priority\"."},"label":{"type":"array","items":{"type":"string"},"description":"query parameter \"label\"."},"limit":{"type":"integer","minimum":1,"maximum":100,"default":20,"description":"query parameter \"limit\"."},"cursor":{"type":"string","description":"query parameter \"cursor\"."}},"additionalProperties":false},"headers":{"type":"object","properties":{"X-Request-Id":{"type":"string","maxLength":64,"description":"headers parameter \"X-Request-Id\"."}},"additionalProperties":false}},"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"api.listComments.860f45","kind":"act","impl":"imperative","description":"Execute GET /tasks/{taskId}/comments from the OpenAPI document currently loaded in Swagger UI. Uses the page's current server and authorization state.","title":"list Comments","annotations":{"readOnlyHint":true,"destructiveHint":false,"costHint":false,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"path":{"type":"object","properties":{"taskId":{"type":"string","maxLength":64,"description":"path parameter \"taskId\"."}},"additionalProperties":false,"required":["taskId"]}},"additionalProperties":false,"required":["path"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"api.createComment.bb6065","kind":"act","impl":"imperative","description":"Execute POST /tasks/{taskId}/comments from the OpenAPI document currently loaded in Swagger UI. Uses the page's current server and authorization state.","title":"create Comment","annotations":{"readOnlyHint":false,"destructiveHint":false,"costHint":false,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"path":{"type":"object","properties":{"taskId":{"type":"string","maxLength":64,"description":"path parameter \"taskId\"."}},"additionalProperties":false,"required":["taskId"]},"body":{"type":"object","properties":{"body":{"type":"string","minLength":1,"maxLength":4000}},"required":["body"],"additionalProperties":false}},"additionalProperties":false,"required":["path"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"api.listAuditEvents.d31e71","kind":"act","impl":"imperative","description":"Execute GET /audit-events from the OpenAPI document currently loaded in Swagger UI. Uses the page's current server and authorization state.","title":"list Audit Events","annotations":{"readOnlyHint":true,"destructiveHint":false,"costHint":false,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"query":{"type":"object","properties":{"action":{"type":"string","description":"query parameter \"action\"."},"limit":{"type":"integer","minimum":1,"maximum":100,"default":20,"description":"query parameter \"limit\"."},"cursor":{"type":"string","description":"query parameter \"cursor\"."}},"additionalProperties":false}},"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"api.getUsageReport.6dd32a","kind":"act","impl":"imperative","description":"Execute GET /reports/usage from the OpenAPI document currently loaded in Swagger UI. Uses the page's current server and authorization state.","title":"get Usage Report","annotations":{"readOnlyHint":true,"destructiveHint":false,"costHint":false,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"query":{"type":"object","properties":{"days":{"type":"integer","minimum":1,"maximum":90,"default":14,"description":"query parameter \"days\"."}},"additionalProperties":false}},"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"api.createExport.91c383","kind":"act","impl":"imperative","description":"Execute POST /exports from the OpenAPI document currently loaded in Swagger UI. Uses the page's current server and authorization state.","title":"create Export","annotations":{"readOnlyHint":false,"destructiveHint":false,"costHint":true,"costNote":"Each export consumes metered processing minutes billed to the account. Confirm scope and format with a human before starting one.","untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"body":{"type":"object","properties":{"format":{"type":"string","enum":["csv","json","ndjson"],"default":"json"},"scope":{"type":"string","enum":["projects","tasks","audit"],"default":"projects"}},"additionalProperties":false}},"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"api.getExport.d55396","kind":"act","impl":"imperative","description":"Execute GET /exports/{jobId} from the OpenAPI document currently loaded in Swagger UI. Uses the page's current server and authorization state.","title":"get Export","annotations":{"readOnlyHint":true,"destructiveHint":false,"costHint":false,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"path":{"type":"object","properties":{"jobId":{"type":"string","description":"path parameter \"jobId\"."}},"additionalProperties":false,"required":["jobId"]}},"additionalProperties":false,"required":["path"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"api.listWebhooks.d165d5","kind":"act","impl":"imperative","description":"Execute GET /webhooks from the OpenAPI document currently loaded in Swagger UI. Uses the page's current server and authorization state.","title":"list Webhooks","annotations":{"readOnlyHint":true,"destructiveHint":false,"costHint":false,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{},"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"api.createWebhook.8b7f53","kind":"act","impl":"imperative","description":"Execute POST /webhooks from the OpenAPI document currently loaded in Swagger UI. Uses the page's current server and authorization state.","title":"create Webhook","annotations":{"readOnlyHint":false,"destructiveHint":false,"costHint":false,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"body":{"type":"object","properties":{"url":{"type":"string","pattern":"^https://","format":"uri"},"events":{"type":"array","items":{"type":"string","enum":["task.created","task.status_changed","project.updated"]}},"active":{"type":"boolean","default":true}},"required":["url"],"additionalProperties":false}},"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"api.deleteWebhook.c259b7","kind":"transact","impl":"imperative","description":"Execute DELETE /webhooks/{webhookId} from the OpenAPI document currently loaded in Swagger UI. Uses the page's current server and authorization state.","title":"delete Webhook","annotations":{"readOnlyHint":false,"destructiveHint":true,"costHint":false,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"path":{"type":"object","properties":{"webhookId":{"type":"string","description":"path parameter \"webhookId\"."}},"additionalProperties":false,"required":["webhookId"]}},"additionalProperties":false,"required":["path"]},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"api.resetDemo.5cc1ba","kind":"act","impl":"imperative","description":"Execute POST /admin/reset-demo from the OpenAPI document currently loaded in Swagger UI. Uses the page's current server and authorization state.","title":"reset Demo","annotations":{"readOnlyHint":false,"destructiveHint":true,"costHint":false,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"body":{"type":"object","properties":{"environment":{"type":"string","enum":["sandbox","production"]}},"additionalProperties":false}},"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"}],"category":"Developer Tools","apiSurface":"spec","toolCount":29}}