A11yMCP

WebMCP inspector

No native WebMCP in this browser — A11yMCP installed a spec-compatible document.modelContext polyfill.

Live tool transport: server. Every invocation below (and in /demo) is dispatched through document.modelContext.executeTool. The polyfill implements the same imperative surface as the W3C draft and stands down the moment a native implementation is present.

Tools via document.modelContext.getTools()

document.modelContext.getTools() is not available in this environment.

WebMCP chain verification

Exercises the real chain through document.modelContext: registerTool → getTools → executeTool → validation → gates → cancellation. When a browser ships native WebMCP it is used automatically; otherwise A11yMCP installs a spec-compatible polyfill so the same code path runs everywhere.

Cross-origin tools

A third-party widget in a sandboxed iframe — an opaque origin, so no shared globals and no shared storage. It registers three tools and opts two of them in to this page with registerTool(def, { exposedTo }). The third is never exposed. This page holds allow="tools" on the frame, which is what the Permissions Policy requires.

What this page got back

  1. Nothing asked yet.

The widget

Untick the box and the widget is configured to trust a different site. Nothing about this page changes — it simply stops getting answers, because the decision was never ours to make.

Why WebMCP, not browser actuation?

Ordinary actuation

The agent must infer: what this control means, which accessibility adaptations exist, how to modify them safely, and whether the change worked. Its only remediation strategy is arbitrary DOM injection, and it has no declared verification.

WebMCP (A11yMCP)

The website declares: capabilities, schemas, supported remediation, live state, and verification. The agent discovers, negotiates, applies scoped changes with approval, and verifies against the site’s own contract.

Measured comparison

Loading evaluation results…

Local demo registry (0)

Development fallback and schema reference. Open /demo to mount the NOMA fixture; fixture-backed tools return a structured "not mounted" error otherwise.

Discovery and state

Negotiation

Audits

Remediation (approval-gated)

Verification

Commerce

Recent tool events

[]