Docs
Why this exists#
AI agents are starting to use the web for people: searching, booking, buying. Most sites make them click through pages built for humans. WebMCP lets a site tell agents exactly what it can do, as tools with names, descriptions and inputs.
WebMCP Registry is where those sites are found. Agents and developers can see which sites expose tools, what the tools do, and whether they still work.
What we check#
Nothing here is self-reported: we list only the tools we see a site register. We load each page in Chromium with a stand-in for document.modelContext (and Chrome's earlier navigator.modelContext) installed before your scripts run. Once the page settles, we record every tool still registered and every <form toolname>. We never run your tools.
Each check starts at your homepage and crawls up to 12 pages: pages where we found tools before, then links and sitemap entries, with apps, search, docs and pricing first. We follow robots.txt for every page we find on our own.
Listed sites are checked every 24 hours. A tool is removed only when the page it was on loads without it. A site drops off after 3 checks in a row find nothing, and comes back when tools do.
Getting listed#
Register a tool when your page loads:
document.modelContext.registerTool({
name: 'search_flights',
description: 'Search flights between two airports.',
inputSchema: {
type: 'object',
properties: { from: { type: 'string' }, to: { type: 'string' } }
},
execute: async ({ from, to }) => searchFlights(from, to)
})Or mark up a form:
<form toolname="book_table" tooldescription="Book a table">
<input name="party" type="number" required>
</form>Then submit your site. We follow your links and sitemap to find tools on other pages. If tools only register somewhere we can't reach, like a page nothing links to, add that page when you submit.
API#
Public JSON, no key, open to any origin.
Read the registry#
curl https://wmcp.ai/api/v1/sites?q=flights
curl https://wmcp.ai/api/v1/sites/render.com/api/v1/sites takes q, sort (popular, newest or tools), limit up to 100, and cursor from the last page's nextCursor. /api/v1/sites/:domain returns every tool with its input schema. Both are cached for up to five minutes.
Submit a site#
Start a check and poll it until its status is no longer running:
curl -X POST https://wmcp.ai/api/v1/scans \
-H 'content-type: application/json' \
-d '{"url": "yoursite.com"}'
curl https://wmcp.ai/api/v1/scans/<id>POST /api/v1/scans takes url and up to 3 extra pages, and answers 202 with the scan's id. The scan lists each page as it's checked. Checks are limited per address and per site; a 429 for a site being checked returns that scan to follow.
This site is agent-ready#
WebMCP Registry exposes its own WebMCP tools, and is listed here like any other site. Results are plain JSON. The reads are marked read-only and untrusted, since they carry listed sites' own text.
search_sitesvia document.modelContextSearch the registry of websites that expose WebMCP tools.get_sitevia document.modelContextGet one listed website and every WebMCP tool it exposes: each tool's name, description, input schema, annotations and the page it was found on.get_submissionvia document.modelContextCheck on a site sent with submit_site: whether the check is still running, each page loaded so far (up to 3 submitted pages plus the ones we find) and the tools found.submit_sitevia the submit formSubmit a website to the registry.
See them on wmcp.ai.
Badge#
Shows your verified tool count and updates with every check.
[](https://wmcp.ai/sites/yoursite.com)Our bot#
Checks come from Chromium with this user agent:
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/150.0.0.0 Safari/537.36 WebMCPRegistryBot/1.0 (+https://wmcp.ai/docs#bot)WebMCPRegistryBot/1.0 checks sites people ask for and re-checks listed sites daily, loading a few pages at a time and following robots.txt. To stop checks or remove your site, email hello@tomo.ai.
Resources#
Where to learn WebMCP, build with it and test it. Every link checked.
Spec and standards#
- WebMCP draft specificationwebmachinelearning.github.io
The W3C Web Machine Learning Community Group draft: the API, its algorithms and IDL.
- Explainer and spec repositorygithub.com
Why WebMCP exists and how it is designed, next to the spec source.
- Declarative API explainergithub.com
How a plain HTML form becomes a tool with toolname and tooldescription.
- Implementation statusgithub.com
Where WebMCP stands in Chrome, Edge, Firefox, Safari and other clients.
- Security and privacy questionnairegithub.com
The spec's answers to the W3C security and privacy review.
- awesome-webmcpgithub.com
The community group's own list of demos, libraries and writing.
Chrome docs#
- WebMCP in Chromedeveloper.chrome.com
Chrome's overview of WebMCP and how to try it.
- Imperative APIdeveloper.chrome.com
Register tools from JavaScript with document.modelContext.
- Declarative APIdeveloper.chrome.com
Turn existing forms into tools with a few attributes.
- Build tools for agentic workflowsdeveloper.chrome.com
Design tools around what users want done, worked through a flight booking example.
- Tool securitydeveloper.chrome.com
Label untrusted output and consequential actions, and limit which origins see your tools.
- Agent security considerationsdeveloper.chrome.com
For agent builders: defending against malicious tools and poisoned tool output.
- Join the origin trialdeveloper.chrome.com
Turn WebMCP on for real visitors, starting in Chrome 149.
Libraries and frameworks#
- Angularangular.dev
Angular's experimental APIs for declaring tools from services and Signal Forms.
- @mcp-b/globalgithub.com
Polyfills WebMCP in any browser and bridges its tools to MCP clients.
- @mcp-b/webmcp-polyfillgithub.com
A strict polyfill for document.modelContext where the browser has none.
- usewebmcpgithub.com
React hooks that register a component's tools while it is mounted.
- webmcp-reactgithub.com
React hooks with a provider that polyfills when needed, safe for SSR and Strict Mode.
- MCP-B docsdocs.mcp-b.ai
Guides and references for the MCP-B packages.
Tools#
- Model Context Tool Inspectorchromewebstore.google.com
A Chrome extension that lists a page's tools and runs them by hand or with Gemini.
- DevTools WebMCP paneldeveloper.chrome.com
See registered tools, schema errors and every call in Chrome DevTools.
- webmcp-toolsgithub.com
Chrome Labs' demos, eval CLI and utilities for building WebMCP tools.
- Cloudflare Browser Rundevelopers.cloudflare.com
Headless browsers in the cloud that find and call a page's WebMCP tools.
Talks#
- WebMCP and the Agentic Webyoutube.com
The BlinkOn 21 talk on WebMCP from the people building it in Chrome.
- Don't let AI agents push your buttonsyoutube.com
Chrome for Developers on giving agents tools instead of a UI to click through.
- WebMCP: Agents on the Web and in the Browseryoutube.com
A talk from Arcade on how agents use sites through WebMCP.
- WebMCP is here (and you should care)youtube.com
The Syntax podcast on what WebMCP means for web developers.
Community#
- Web Machine Learning Community Groupw3.org
The W3C group incubating WebMCP. Anyone can join.
- Spec issuesgithub.com
Report problems and follow design discussions on the spec.
- Chrome early preview programdeveloper.chrome.com
Try WebMCP and unreleased AI APIs early and give Chrome feedback.
- Chrome AI dev preview groupgroups.google.com
The mailing list where preview developers ask questions and share findings.
- r/webmcpreddit.com
A subreddit for WebMCP news, projects and questions.
Who runs it#
WebMCP Registry is built by the team behind Tomo, a personal AI in iMessage. We rely on sites being agent-ready, so we keep this index open and free for everyone.