For about thirty years the web had one audience: people. You designed for eyes, you optimized for search engines so more eyes would arrive, and that was the whole game. That game is ending. A second reader has shown up, and it does not work anything like the first one.
The second reader is an agent. It is the thing behind Claude, ChatGPT, Perplexity, and the growing population of autonomous clients that crawl, retrieve, compare, and increasingly buy on someone's behalf. When one of them arrives at your site, it does not admire your hero image or your animated gradient. It goes looking for machine-readable signals: a description it can ingest in one fetch, content it can request as JSON or Markdown instead of scraping out of HTML, structured data, an agent card, a way to pay. On most sites it finds none of that. So it does what any reader does when a page is unreadable. It gives up and moves on, and you never see the visit that did not convert.
I kept running into this while building agent tooling, so I built something to measure it. It is called metaend Grade, and it is live.

You give it a URL. It probes the site the way an agent would, then hands back a grade from A to F across roughly twenty scored checks plus a set of informational ones. The categories are the things that actually determine whether an agent can use your site:
Discovery files like llms.txt and a sane robots policy that does not accidentally wall off the very agents you want. Content negotiation, which is whether the same URL can return clean JSON or Markdown when an agent asks for it with an Accept header, instead of forcing it to parse a page built for humans. Structured data and metadata. A2A agent cards and the newer ERC-8004 trustless-agent signals. Identity surfaces like DID, WebFinger, and Nostr. And machine-payment support, because an agent that cannot pay you is an agent that cannot transact with you.
Each failed check comes with a plain-language fix. The report is not a vanity score. It is a to-do list.
The part I am most pleased with is that the scanner is itself agent-ready. It serves its own llms.txt, agents.txt, agent card, security.txt, sitemap, and JSON-LD, and it content-negotiates its own root so an agent asking for JSON gets JSON. You can call it directly without touching the UI at all. A single GET to its compact endpoint returns a graded report as JSON, which means another agent can scan a site, read the result, and act on it in one move. Sending an Accept: application/json header to any page skips the human interface entirely.
If you are going to grade the web on agent-readiness, the tool doing the grading had better pass its own test.
A grade is more fun when you can show it off, and more useful when you can do something with it. So a result gives you a few ways out.
You can share a grade straight to Bluesky, Farcaster, or Nostr, and the link unfurls with a dynamic card that bakes in the host, the letter grade, and the score. Both the result pages and the homepage generate their own cards on the fly, so a shared link actually looks like something instead of a blank rectangle. I also fixed an early bug where the card could be hijacked by the scanned domain's own metadata, so the card you share always reflects metaend Grade's reading of the site, not whatever the site wanted to claim about itself.
For the builders, there is a one-click Copy JSON button that hands you the full report as structured data, ready to paste into a coding CLI or feed to your own agent so it can work through the fixes. And if the tool saves you time, there is a quiet donate link, no pressure attached.
Scanning is not free to run. Each scan fires a couple of dozen probes against the target. So there is a free daily allowance, and beyond that, scans are paid. The interesting part is how.
The paid path uses x402, the open standard that revives the long-dormant HTTP 402 Payment Required status code and turns it into a real payment step. An agent calls the endpoint, gets a 402 back with machine-readable terms, signs a payment locally, and retries. No account, no card form, no API key dance. The whole exchange happens in HTTP, which is exactly what an autonomous client needs.
This is not a testnet demo or a mock. Payments are real EIP-3009 wallet transfers in USDC, settled on-chain on Base and Arbitrum and confirmed before anything is served. On the backend it verifies and settles through a neutral, self-hostable facilitator, records every settlement, rejects replays, and fails closed, so a scan only runs once the money has actually moved.
There is also a small per-site cooldown on the free path, a ten-minute window per scanned host to keep things from being hammered. Paying skips it. If you need to re-scan the same site right now rather than in ten minutes, a payment takes you straight through.
Humans are not left out of any of this. If you burn through the free daily allowance, or you just do not want to wait out the cooldown, you can top up directly with the same Base and Arbitrum settlement the agents use, wrapped in a button for people who would rather click than hand-sign a payload.
Run your own site first. Most people are surprised, and not in a good way. A D or an F is common right now, not because anyone did anything wrong, but because the agent-readiness layer simply was not part of how we built sites until very recently. The fixes are mostly small and static: a file here, a header there, a block of structured data. Then re-scan and watch the grade climb. Run your competitors too, since seeing where everyone sits is the fastest way to understand how early this all is.
The agentic web is being assembled right now, in public, while most of the web is still built for an audience that is no longer the only one reading. Closing that gap is cheap if you start now and awkward if you wait until your category is full of A grades and you are the lone F.
I do not pad posts with affiliate links, so here are exactly two, both things I use daily and both relevant to anyone building in this space.
Running the models. Almost all of my agent and tooling work runs on open models, and the cheapest, least annoying way I have found to reach them is Nano-GPT: one key, pay as you go, no subscription lock-in, full access to GLM, Qwen, Kimi, MiniMax and others through a single OpenAI-compatible endpoint.
Reach every major open model through one pay-as-you-go key, no subscription. Try Nano-GPT →
Giving agents credentials without losing sleep. The other half of this work is letting an agent act on your accounts without handing it the keys to everything, and Proton Pass recently went agentic: read-only, vault-scoped, expiring access tokens, with a mandatory justification logged on every access and instant revocation.
Hand agents read-only, scoped, revocable credentials instead of pasting passwords into prompts. Set up Proton Pass →
Both links above are referral links. I am telling you that plainly so you can decide what to do with it. I would not point you at either if I did not run them myself.
Go scan your site. Tell me what grade you got.
metaend

