← Hidden Layer
Agent-Ready Website

Implementation Checklist

Audit and upgrade your website for AI agent compatibility — starting with quick wins, ending with full WebMCP implementation. Each item shows who owns it and when to tackle it.

·

Run free audit →Full guide: Playbook →Or check your site automatically
Filter by team:
01

Quick Wins

No code required. Improve agent readability immediately.

Enable Markdown for AI Crawlers via CloudflareIT / DevOpsDo this week

AI crawlers receive a simplified, token-efficient version of your page — like a clean mobile version, but for LLMs. One checkbox in Cloudflare dashboard. 80% token savings for crawlers.

Publish or audit your robots.txtEngineeringDo this week

Declare which AI bots can access your site. Missing robots.txt means bots make assumptions. Blocking AI search bots (ChatGPT-User, PerplexityBot) removes you from AI answer results entirely.

Add a /llms.txt fileMarketingDo this week

The emerging standard for AI-specific directives — like robots.txt, but for LLMs. Declares what content LLMs may use and links to your key docs, products, and API. Takes 20 minutes to create.

Audit missing meta descriptionsMarketingDo this week

Agents use meta descriptions as the first signal for page intent. Treat them like tool descriptions — precise, action-oriented, 120-160 chars. "Welcome to our site" is not a tool description.

Add Open Graph tags to all pagesMarketingDo this week

OG tags (og:title, og:description, og:image) are used by LLMs, social platforms, and link-preview agents to understand page context. Missing = invisible to a large class of AI signals.

Add Content-Signal header (Cloudflare or server)IT / DevOpsDo this week

Explicitly declare your AI training/search/input policy. Prevents crawlers from guessing. The IETF draft (draft-ietf-aipref-attach) is gaining CDN adoption fast — now is the time.

Check for JavaScript-only contentEngineeringDo this week

If your core content only renders client-side, LLM crawlers miss it. Validate: view your page source. Key content should appear in raw HTML, not require JS execution.

Verify canonical URL consistencySEODo this week

A canonical tag pointing to a different domain silently redirects LLM crawl credit and GEO signals to that domain. Takes 2 minutes to verify. High-blast-radius bug when it happens.

02

Structured Data (Schema.org)

Help agents understand what your page is and what it offers.

Add Organization schema to your homepageSEODo this month

The entity anchor that LLMs use to resolve all facts about your brand. Include @id, name, url, description, and sameAs (Wikipedia, LinkedIn, Crunchbase). Without it, your other schema floats disconnected.

Add @id + sameAs entity links to Organization schemaSEODo this month

LLMs use @id and sameAs to resolve your entity across training sources. Wikipedia/Wikidata = Tier 1 (highest impact). LinkedIn/Crunchbase = Tier 2. 69% increase in non-branded query clicks at scale (SchemaApp 2025).

Add FAQPage schema to key landing pagesSEODo this month

FAQPage schema triples the likelihood of LLM citation (3.2× per research). Each Q&A is a directly quotable, structured fact. The format agents love most: explicit question + complete answer.

Add BreadcrumbList schema site-wideSEODo this month

Helps agents understand your site hierarchy and navigate to related content. Required for Google breadcrumb rich results. Each ListItem needs position + name.

Validate Product schema on product pagesSEODo this month

Agents shopping on behalf of users need complete product data: name, offers (price + availability), image, description. Missing fields = agents skip your products or hallucinate details.

Add Article schema to content pagesSEODo this month

author + datePublished are critical for LLM citation attribution. Without them, LLMs may cite your content but attribute it to no one — or the wrong person. headline must be ≤110 chars.

Validate all schema with Google Rich Results TestSEODo this month

Schema with errors is worse than no schema — it tells search engines and agents the data is unreliable. Run validation after every schema change.

03

Declarative WebMCP (HTML Forms)

Make your existing HTML forms agent-discoverable without JavaScript.

Inventory all forms on your websiteEngineeringDo this month

Before annotating, know what you have: search forms, contact forms, checkout flows, sign-up forms, filters. Each is a potential agent action. Prioritise transactional > informational.

Add toolname attribute to each formEngineeringDo this month

toolname is the agent-facing identifier for this action. Use snake_case: search-products, contact-sales, subscribe-newsletter. This is how agents reference your form in their tool registry.

Add tooldescription to each formEngineeringDo this month

The natural language description agents use to decide when to invoke this form. Write like a tool description in an MCP server: what it does, what inputs it expects, what it returns.

Add toolparamtitle + toolparamdescription to key inputsEngineeringDo this month

Helps agents fill inputs correctly without guessing. A search input with toolparamdescription="Keyword, product name, or category" is unambiguous. A bare <input> is not.

Publish /.well-known/webmcp tool manifestEngineeringDo this month

The WebMCP discovery endpoint. Browser agents check this path to discover your available tools before probing the DOM. Low adoption now, but positions you ahead of the curve.

Only add toolautosubmit to read-only, zero-risk actionsEngineeringDo this month

toolautosubmit lets agents submit forms without user confirmation. ONLY use on safe, read-only actions (e.g. search). NEVER on checkout, contact, sign-up, or any state-changing action.

04

Imperative WebMCP (JavaScript API)

Register dynamic, context-aware tools for browser agents. Advanced — dev-only.

Check for navigator.modelContext support in browserEngineeringDo this quarter

The WebMCP JS API. Currently behind a Chrome Canary flag. Feature-detect before using: if ('modelContext' in navigator). Do not error or degrade for non-supporting browsers.

Register context-aware tools with navigator.modelContext.registerTool()EngineeringDo this quarter

Register tools that only make sense in the current page context: e.g., add-to-cart only on product pages, apply-filter only when results are visible. Context-aware registration prevents agent confusion.

De-register tools when they're no longer validEngineeringDo this quarter

An agent seeing a checkout tool on a 404 page will try to use it. De-register on route changes, modal close, or when the action is no longer available. Use cleanup in component unmount / SPA navigation.

Ensure execute() returns structured JSON with a clear status fieldEngineeringDo this quarter

Agents need machine-readable results, not HTML or freetext. Return { status: "success"|"error", data: {...}, message: "..." }. Include enough context for the agent to report the outcome to the user.

Map user journey stages to tool availabilityEngineeringDo this quarter

Tools should mirror what a human can do at each step: browse → search+filter. Product page → add-to-cart+compare. Checkout → fill-form. Post-purchase → order-status. Design tool availability like a state machine.

(Optional) Evaluate MCP-B as a polyfillEngineeringDeferred

MCP-B is a community polyfill for navigator.modelContext. Lets you develop against the spec before Chrome stable support. Evaluate if you want to ship today rather than wait for the flag to ship.

05

Testing & Debugging

Verify agents actually discover and use your tools correctly.

Install Chrome CanaryEngineeringDo this quarter

WebMCP only runs in Chrome Canary with the experimental flag enabled. You cannot test or debug WebMCP in stable Chrome. Required for any imperative WebMCP work.

Install the Model Context Tool Inspector extensionEngineeringDo this quarter

Browser extension that shows all registered WebMCP tools on a page, lets you invoke them manually, and shows execute() output. The devtools for WebMCP.

Enable the WebMCP flag in Chrome CanaryEngineeringDo this quarter

Go to chrome://flags → search "WebMCP" → Enable. Without this, navigator.modelContext is undefined even in Canary.

Test each tool: does the agent discover it correctly?EngineeringDo this quarter

Use the MCP Inspector to verify: (1) tool appears in the registered list, (2) toolname + tooldescription are readable, (3) params are correctly typed. Failure here = agent cannot find the tool.

Simulate agent task flows end-to-endEngineeringDo this quarter

Run through key journeys as an agent would: search → filter → select → checkout. Verify at each step that the right tools are registered, inputs are pre-fillable, and execute() returns correct output.

06

Measurement & Ongoing Optimisation

Track whether AI agents are finding and using your site.

Set up AI referral traffic tracking in GA4MarketingDo this month

ChatGPT, Perplexity, Claude, and Gemini send referral traffic with identifiable hostnames. Create an "AI" channel group in GA4. Without this, AI referral traffic shows as Direct — invisible in reports.

Publish an RSS / Atom feedEngineeringDo this month

LLM training pipelines frequently ingest RSS feeds. Sites with feeds get faster content-to-LLM propagation between training checkpoints. Takes 30 minutes for most CMS platforms.

Monitor tool completion rate (WebMCP)EngineeringDo this quarter

Track how often execute() succeeds vs fails for each registered tool. A tool with >20% error rate needs diagnosis — wrong inputs, session expiry, or API failures. Treat like an API SLA.

Audit toolname and tooldescription clarity quarterlyMarketingDo this quarter

Agent models improve over time. A description that worked 6 months ago may now be ambiguous given updated context windows and tool-selection behaviour. Review quarterly alongside meta description audits.

Keep /llms.txt updated with your latest contentMarketingDo this quarter

/llms.txt links should reflect your current top content. Stale links (404s) confuse LLMs that try to fetch them for context. Review on each major content update or product launch.

Track LLM cold recall over timeBrand / PRDo this quarter

Run Hidden Layer audits on the same domain quarterly. The geo_cold_recall score tracks whether LLMs can accurately describe your brand from training data alone. Improvement = real GEO progress.

Build Wikipedia / Wikidata presenceBrand / PRDo this quarter

Wikipedia is the single strongest predictor of LLM citation accuracy (direct training corpus). Wikidata gives you @id linkage even without a full Wikipedia article. Build notability first, then submit.

Priority key
Do this week
Do this month
Do this quarter
Deferred
Check your site automatically

Run a free audit to see which of these items your site passes or fails — with specific fix recommendations.

Run free audit →

WebMCP is experimental — not yet production-ready. The spec and browser implementations may change. Experiment now; do not deploy to live production until the standard stabilises.