TL;DR: We wired every tool and search box on automatelab.tech to AI agents using WebMCP - the navigator.modelContext browser API - by reusing the functions our on-page buttons already call. It now shows up in Lighthouse's new Agentic Browsing audit. Here is how, and an honest read on whether it is worth your time in 2026.
What WebMCP is
WebMCP is a browser API (navigator.modelContext) that a page calls to register tools for an in-browser AI agent. Each tool carries a name, a natural-language description, a JSON input schema, and a handler that runs when the agent calls it. It is the browser-side cousin of the Model Context Protocol that server-side integrations already speak. The spec is a W3C draft from the Web Machine Learning group.
The honest part: WebMCP ships only in Chrome 146 behind a feature flag, real-world adoption is near zero, and most agents today still read the raw DOM. This is a plant-the-flag move. Two reasons to do it anyway: it is cheap if your pages already have working actions, and Google just started measuring it.
Registering a tool
There are two paths. The declarative one adds toolname and tooldescription attributes to an existing <form> and the browser builds the input schema for you. The imperative one calls registerTool(). We took the imperative path because every tool already had a compute function:
if (navigator.modelContext) {
navigator.modelContext.registerTool({
name: "audit_ai_seo",
description: "Audit a URL for AEO/GEO readiness; return the score.",
inputSchema: {
type: "object",
properties: { url: { type: "string", description: "Full URL incl. https://" } },
required: ["url"]
},
execute: async ({ url }) => {
const result = await runAudit(url); // the function the page already had
return { content: [{ type: "text", text: result.summary }] };
}
});
}
The point: you are not writing new tools, you are exposing the ones you already shipped. The whole integration is a roughly forty-line helper that feature-detects navigator.modelContext and no-ops in every browser without it, so normal visitors are unaffected.
What we exposed
Ten surfaces, each reusing the function behind its on-page button:
| Surface | WebMCP tool |
|---|---|
| AI SEO Checker | audit_ai_seo |
| AI Overview checker | score_ai_overview_eligibility |
| n8n cost calculator | estimate_n8n_cost |
| n8n workflow validator | validate_n8n_workflow |
| GPTBot / robots.txt helper | get_ai_crawler_robots_rules |
| Blog search | search_blog |
| Automation Error Index search | search_automation_errors |
The Lighthouse angle
Lighthouse 13.3 added an Agentic Browsing category. The WebMCP check is informational only - it lists the tools your page registers and never fails you for having none. The other three checks (llms.txt, accessibility-tree integrity, and layout stability) pay off today regardless of WebMCP adoption: they help screen readers, retrieval crawlers, and real users.
Is it worth it in 2026?
Do the agent-readiness groundwork for the wins you can bank now - ship llms.txt, fix the accessibility tree, kill layout shift - and treat the WebMCP registration as a cheap option on a standard that might matter in a year. One caveat worth taking seriously: the WebMCP security model is still incomplete, so never expose a destructive or account-changing action without a user-confirmation step. Read-only audits, calculators, and search are safe first candidates; "delete my account" is not.
Full write-up with the step-by-step: https://automatelab.tech/blog/al-products/how-we-made-automatelab-tech-agent-ready-webmcp/
Top comments (0)