{"ok":true,"site":{"host":"action-check-webmcp.vercel.app","url":"https://action-check-webmcp.vercel.app/","type":"live","desc":"A staging test lab that verifies what mutating WebMCP tools actually changed.","tools":[{"name":"stage_refund_comparison","kind":"act","impl":"imperative","description":"Reset one isolated external staging trial with known-bad and protected lanes. This changes no real payment and requires visible human approval before issue_refund can run.","title":"Stage isolated refund comparison","annotations":{"readOnlyHint":false,"untrustedContentHint":false},"inputSchema":{"type":"object","properties":{},"required":[],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"issue_refund","kind":"act","impl":"imperative","description":"Invoke one approved refund attempt against the selected staging lane. The first attempt commits with an uncertain acknowledgement; retry once with the identical request ID.","title":"Invoke staging refund target","annotations":{"readOnlyHint":false,"untrustedContentHint":false},"inputSchema":{"type":"object","properties":{"lane":{"type":"string","enum":["broken","protected"],"description":"The known-bad or idempotency-protected staging target lane."},"paymentId":{"type":"string","pattern":"^pay-[a-z0-9-]{1,40}$","description":"Exact fictional payment shown in the approved staging trial."},"amountMinor":{"type":"integer","minimum":1,"maximum":1000000,"description":"Fictional staging refund amount in minor currency units."},"currency":{"type":"string","pattern":"^[A-Z]{3}$","description":"Three-letter currency bound to the approved trial."},"requestId":{"type":"string","pattern":"^refund-[a-z0-9-]{1,60}$","description":"Stable logical refund request ID reused for the retry."}},"required":["lane","paymentId","amountMinor","currency","requestId"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"prove_refund_comparison","kind":"act","impl":"imperative","description":"Read the staging ledger through the separate observation endpoint after both lanes receive two attempts, require the known-bad target to fail and the protected target to pass, then bind observed effect IDs to the approved trial.","title":"Prove refund retry effects","annotations":{"readOnlyHint":false,"untrustedContentHint":false},"inputSchema":{"type":"object","properties":{},"required":[],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"}],"category":"Developer Tools","favicon":"/favicons/action-check-webmcp.vercel.app.svg","apiSurface":"spec","toolCount":3}}