{"ok":true,"site":{"host":"embeddoctor-webmcp.sora-max.chatgpt.site","url":"https://embeddoctor-webmcp.sora-max.chatgpt.site/","type":"live","desc":"Observe, repair, and verify iframe message contracts with the browser and an AI agent in the same loop.","tools":[{"name":"embeddoctor.inspect_selected_incidents","kind":"act","impl":"imperative","description":"Read sanitized browser evidence only for incidents selected in the live EmbedDoctor interface.","title":"Inspect selected embed incidents","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{},"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"embeddoctor.stage_boundary_contract","kind":"act","impl":"imperative","description":"Stage the smallest visible, editable, report-only contract supported by selected evidence. Never approves enforcement.","title":"Stage a boundary contract","annotations":{"readOnlyHint":false,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"readyAck":{"type":"boolean","description":"READY/ACK plus one-item queue."},"strictSchema":{"type":"boolean","description":"Protocol v2 and exact payload shape."},"bindOriginAndSource":{"type":"boolean","description":"Exact origin and iframe WindowProxy binding."}},"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"embeddoctor.replay_boundary","kind":"act","impl":"imperative","description":"Replay the current deterministic real-postMessage scenario in baseline, report-only draft, or approved enforcement mode.","title":"Replay the embed boundary","annotations":{"readOnlyHint":false,"untrustedContentHint":true},"inputSchema":{"type":"object","properties":{"mode":{"type":"string","enum":["baseline","draft","enforced"]}},"required":["mode"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"embeddoctor.undo_contract_change","kind":"act","impl":"imperative","description":"Restore the captured baseline and remove the current proposal.","title":"Undo the staged contract","annotations":{"readOnlyHint":false,"untrustedContentHint":false},"inputSchema":{"type":"object","properties":{},"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"embeddoctor.export_contract_bundle","kind":"act","impl":"imperative","description":"Prepare the policy, lifecycle adapter, tests, and migration guide after human approval and verified replay.","title":"Prepare contract export","annotations":{"readOnlyHint":true,"untrustedContentHint":false},"inputSchema":{"type":"object","properties":{"format":{"type":"string","enum":["typescript","json"]}},"required":["format"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"}],"category":"Developer Tools","favicon":"/favicons/embeddoctor-webmcp.sora-max.chatgpt.site.png","apiSurface":"spec","toolCount":5}}