webmcp-tool

Guide

Content that survives without JavaScript

The most common and most expensive failure on the agentic web. Why an empty shell defeats the crawlers behind AI answers, how to tell whether you have one, and what to do when a rewrite is not on the table.

Last reviewed 27 August 2026

Open your site, view source, and read what is actually there. Not the rendered DOM in DevTools — the bytes the server sent. If what you find is a <div id="root"> and a script tag, that is what most agents get.

Why this is worse than it was for SEO

Googlebot renders JavaScript. It has for years, which is why client-rendered sites can rank and why so many teams concluded the problem was solved.

The crawlers behind AI answers largely do not. They fetch, they parse, they move on — because rendering a page costs orders of magnitude more than fetching one, and they are fetching at a volume where that difference decides the budget. An assistant asked about your product does not wait for hydration.

The measurement everyone quotes

Benchmarks of the highest-traffic sites through 2026 put average agent readiness a little over half, with content negotiation and non-JavaScript content the most widely failed category. Several of the largest social platforms score at or near zero, because they block scanners or require authentication before anything is served.

Testing it in ten seconds

# What an agent actually receives
curl -sL https://example.com | wc -c

# The visible text, stripped of markup
curl -sL https://example.com | sed 's/<[^>]*>//g' | tr -s ' \n' ' ' | wc -c

# Is there a heading to anchor it?
curl -sL https://example.com | grep -o '<h1[^>]*>[^<]*' | head -3

Under a few hundred characters of visible text, or no <h1> at all, and the page has nothing to say to anything that does not run scripts. Our check grades exactly this and weights it at 6 points — the single heaviest check in the rule set.

The fixes, in order of how much they cost

1. Static generation, where the content is stable

Marketing pages, documentation, blog posts, product pages that change daily rather than per request — prerender them at build time. Fastest to serve, cheapest to run, nothing to go wrong at request time.

2. Server rendering, where it is personal or live

Render on the server and send HTML. Every major framework supports this; the friction is almost never the framework and almost always code that assumes window exists.

3. The pragmatic middle, when a rewrite is not happening

You do not have to server-render the application to fix this. You have to server-render the content. A client-only dashboard behind a login is fine — nobody is citing it. The pages that need to survive without scripts are the public ones, and those are usually a minority of the routes.

  • Move public marketing and product pages to a prerendered route group and leave the app alone.
  • Render the article body, price, availability and headings server-side; hydrate the interactive parts on top.
  • If a genuine rewrite is out of reach, serve a meaningful <noscript> block with the core content and links. It is a workaround rather than a fix, and it is far better than an empty div.

What good looks like in the raw response

  1. A <title> and meta description that describe this page.
  2. Exactly one <h1> carrying the page's actual subject.
  3. Several hundred words of the real content, not a loading state.
  4. The primary action present as a real <form> or <a href>.
  5. Prices, availability and dates as text, not only as chart data.
  6. A self-referencing <link rel="canonical">.
Why this outranks WebMCP on your list

Registering tools on a page that arrives empty is putting a door on a building with no walls. The tools are in a bundle the crawler did not execute, on a page it recorded as blank. Fix the rendering, then add tools — and see what WebMCP does not replace.

Sources

Primary documents, checked on 27 August 2026

  1. web.dev — rendering on the web
  2. Google — JavaScript SEO basics
  3. agentgrade.com — agent readiness benchmarksPublished top-100 measurements referenced above
  4. OpenAI — bots and user agentsFetch behaviour of GPTBot and ChatGPT-User

Keep reading

Check your own site against this

The Agent Readiness Score measures exactly what this article describes, and shows the evidence behind every finding.

Run the check →