For two months newruntime.com was read the way most sites are: search engines, a few AI crawlers, SEO bots. Between July 23 and September 24 a machine we had never seen before showed up roughly once every three days.
On September 25 we changed what the site says to machines, in one day: an x402 payment manifest, read-only tools on a public MCP server, an agent card, and a night of listings in the official MCP Registry and in API and llms.txt directories, plus APIs.json and security.txt.
In the 48 hours that followed, 19 machine consumers appeared for the first time. Eleven describe themselves as registries or catalogues of the agentic web, four as verifiers, two as MCP monitors. Against the rate before, that is about twelve times more first appearances than expected in three days.
We cannot say which listing brought which bot. The changes landed within hours of each other, so their measurement windows overlap. What we can show is what the machines did once they arrived.
What arrived
- Registries and catalogues: BrickBlueBot, WellknownBot, AgentIndexBot, Neuronto, Hivebot-catalog-probe, toolpin-crawler, rokmcp-collector, MCPHereBot, IlbowAPIFactoryBot, agent-tools.cloud-crawler, histor. They read the well-known files, open an MCP session, list the tools and leave. A few come back daily.
- Verifiers: VerifyMCP-OwnersBot, GolemreachTrustBot, KnownGood-Verifier. They check that the domain owns what a registry says it owns.
- Monitors: mcpbeat and MCPMeter, joining the older SentinelOracle and x402-observer. They poll health; mcpbeat alone sent 489 requests in two days.
- Unclassified: TalandorBot, PulseFeed contract crawler, VelaDataEnrichment.
The funnel
Of 98 distinct machine clients we can see, 38 opened an MCP session, 32 listed our tools, and 4 called one. None has called tools on three different days yet. None has paid.
That shape is the finding. Distribution for agents works like a protocol, not a pitch: within a day you are discovered, verified and indexed by machines. Being chosen is a different step, and what moves it is what the tool list says: names, descriptions, schemas, examples.
Two details we did not expect:
- Monitors read our OpenAPI and requested the templates literally:
/topics/{slug}.jsonand twelve more route families. Those paths now return a small descriptor that points to the list route and a real example, and we are measuring whether monitors follow it. - The first outside call of a new tool came eight hours after it shipped. We added
what_changed, which reports what moved in our knowledge base since a date, on September 26. BrickBlueBot called it at 00:40 UTC the next night.
How the rest of the field looks to an agent
We ran the checks we use on ourselves against 30 public AI-infrastructure services on September 27: 15 weighted checks of public well-known surfaces, GET requests plus one MCP handshake per service. The median score of the 28 reachable services is 49 of 100.
| Service | Score | llms.txt | OpenAPI | MCP | Change feed | x402 | |---|---:|---|---|---|---|---| | tavily.com | 78 | yes | yes | yes | — | — | | cloudflare.com | 77 | yes | yes | yes | — | — | | supabase.com | 72 | yes | yes | partial | partial | — | | apify.com | 72 | yes | yes | yes | — | — | | context7.com | 71 | yes | yes | yes | partial | — | | neon.com | 71 | yes | yes | yes | — | — | | parallel.ai | 68 | yes | yes | yes | — | — | | e2b.dev | 68 | yes | yes | partial | yes | — | | vercel.com | 61 | yes | — | partial | partial | — | | browserbase.com | 58 | yes | — | partial | partial | — | | zapier.com | 56 | yes | — | partial | — | — | | huggingface.co | 52 | — | yes | partial | yes | — | | exa.ai | 49 | yes | — | partial | — | — | | replicate.com | 49 | partial | — | yes | — | — | | glama.ai | 48 | yes | — | partial | — | — | | linear.app | 47 | yes | — | partial | partial | — | | mem0.ai | 47 | yes | — | partial | — | — | | firecrawl.dev | 46 | yes | — | yes | — | — | | notion.com | 46 | yes | — | yes | — | — | | smithery.ai | 46 | — | yes | partial | — | — | | stripe.com | 43 | yes | — | partial | — | — | | composio.dev | 41 | yes | — | — | — | — | | serpapi.com | 41 | yes | — | partial | yes | — | | modal.com | 31 | yes | — | — | — | — | | github.com | 31 | yes | — | — | — | — | | anthropic.com | 23 | — | — | — | — | — | | jina.ai | 20 | — | — | — | — | — | | langchain.com | 17 | — | — | — | — | — | | perplexity.ai | 9\* | — | — | — | — | — | | openai.com | 7\* | — | — | — | — | — |
\* The homepage and llms.txt return 403 to clients without a browser, so the score is a floor, not a measurement.
- llms.txt is nearly universal: 22 of 28.
- A working MCP server is common, but most live on
mcp.<domain>with no server card on the main domain that would tell an agent where to look. - Three of 28 publish a change feed an agent could subscribe to. Everyone else makes agents re-crawl to learn what changed.
- None publishes an x402 manifest.
- OpenAI and Perplexity answer non-browser clients with 403 on the homepage and on llms.txt. An agent without a browser sees nothing there.
These checks mirror the surfaces we built ourselves, so they favour our choices. A service can serve agents well through documentation, SDKs or an OpenAPI file hosted on GitHub, which this run does not see.
What we take from it
- Listing is cheap and fast. It buys discovery, not use.
- The tool list is the sales deck. Next we rewrite our tool descriptions and examples and measure how many clients move from listing tools to calling one within 14 days.
- Change is the scarce signal. Almost nobody tells agents what changed; that is what we are building.
*Method: counts come from sanitized daily bot-family buckets and MCP usage records (first User-Agent token, method and tool name; no IP addresses, no arguments). "New" means first seen in our logs since July 23. Attribution is correlation in time. Our own smoke checks are excluded.*