The site declares what it can do
The agent does not have to guess at buttons. The site names each tool, what it takes and what it returns.
WebMCP client
WebMCP lets a website register tools for agents, such as add to cart, search flights or file a ticket. Browsentic detects them, gives your agent their schemas, and calls them through the site’s own code.
The standard
WebMCP is a W3C proposal shipping natively in Chrome: a page registers tools on document.modelContext, each with a name, a description, an input schema and a handler the site wrote.
The agent does not have to guess at buttons. The site names each tool, what it takes and what it returns.
A registered handler runs the same logic the UI runs, so a call cannot miss a selector or catch the page mid-render.
Add to cart becomes one schema-checked call instead of find, scroll, click, wait and verify.
How Browsentic uses it
The page snapshot carries a siteTools list whenever a page registers any, so the agent knows the site has tools.
page_listSiteTools returns every tool the site registered: name, description and input schema, ready to call.
page_callSiteTool runs one by name, through the site’s own handler, and returns whatever it produced.
A site tool call is gated like a form submit, because the site decides what it does. It pauses in the panel and says which tool it will call.
Coverage
It reads from the page’s main world, so it finds whichever implementation the site uses.
document.modelContext, native in Chrome
answers
navigator.modelContext, the older alias
answers
Library and polyfill implementations
answers
Sites that register nothing
ordinary tools
The last row is most of the web today. There the ordinary page tools do the job, and the agent is told not to look for site tools.
Safety
The site-tool-call rule pauses every call in the side panel first, because the site decides what a tool does.
Discovering tools and reading schemas changes nothing on the page, so autonomous site maps record which pages are agent-ready without acting on them.
Reading a page’s registered tools uses the extension’s ordinary scripting permission. Nothing is injected for you to approve, and no debugger bar appears.
An MCP client has nobody to answer a prompt, so its calls follow the unattended policy, which denies them until you change it.
Free and open source under Apache 2.0, with no API key, subscription or account. One line installs Browsentic Bridge and opens the extension’s store page. Nothing connects until you pair the two.