The site declares what it can do
Instead of an agent guessing at buttons, the site names its own verbs: what each tool does, what it takes, what it returns.
WebMCP
WebMCP lets a website register tools for agents: add to cart, search flights, file a ticket. Browsentic notices them, hands your agent the 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.
Instead of an agent guessing at buttons, the site names its own verbs: what each tool does, what it takes, 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 rather than find, scroll, click, wait, verify. Fewer steps, fewer ways to be wrong.
How Browsentic uses it
The page snapshot carries a siteTools list whenever a page registers any. The agent learns a site is agent-ready without being told.
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: the site decides what it does, so it pauses in the panel and names itself.
Coverage
The reader goes to the page’s main world, so it finds whichever implementation a site actually has.
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, and nothing changes there: the ordinary page tools carry the job, and the agent is told not to go looking.
Kept honest
The site-tool-call rule pauses every call in the side panel first. The site decides what a tool does, which is exactly why you are asked.
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 resolve by the unattended policy, which ships as deny until you say otherwise.
Free and MIT licensed. No signup, no key to paste, and a fresh install connects to nothing until you pair it yourself.
npx browsentic setup