On November 1 we requested 13 machine-readable documents from the website of every provider in the catalog: 28,378 distinct hosts, of which 26,886 answered. 7,588 served an llms.txt. 2,485 served a security.txt. The file that describes a site to a language model is about three times as common as the file that says who to call about a vulnerability. Only 1,223 hosts serve both.
What we found
| Document | Hosts | Share of reachable hosts |
|---|---|---|
/llms.txt |
7,588 | 28.2% |
/.well-known/security.txt |
2,485 | 9.2% |
/.well-known/oauth-authorization-server |
1,952 | 7.3% |
Content signals in /robots.txt |
1,656 | 6.2% |
/.well-known/api-catalog (RFC 9727) |
798 | 3.0% |
/.well-known/openid-configuration |
684 | 2.5% |
/.well-known/ucp |
683 | 2.5% |
/.well-known/ucp.json |
423 | 1.6% |
/.well-known/agent-card.json (A2A) |
392 | 1.5% |
/.well-known/ai-catalog.json |
374 | 1.4% |
/apis.json |
154 | 0.6% |
/.well-known/http-message-signatures-directory |
90 | 0.3% |
/.well-known/agent-descriptions |
1 | 0.0% |
10,251 hosts, 38% of those reachable, serve at least one of the 13. Most of them stop there: 6,715 serve exactly one. Only 41 serve eight or more. An llms.txt is a text file anyone can write in an afternoon, while most of the rest need something behind them, and the table falls off about the way that would predict.
The one pairing that runs the other way is the API catalog. 741 of the 798 hosts with an RFC 9727 api-catalog also serve an llms.txt, 93% against 28% across all reachable hosts. Sites that publish one of these documents tend to publish others.
A 200 is not a document
2,556 reachable hosts, about one in ten, answered 200 for a nonsense path we made up as a control. Count status codes and every one of them appears to support all 13 standards. So a hit here means the body has the shape the document requires: an agent card needs a name and an interface field, an api-catalog needs a linkset, a security.txt needs a Contact: line, and an HTML page never counts. For llms.txt and agent-descriptions, whose tests are loose, we also drop any host that failed the control.
Most UCP documents come from two platforms
Of the 683 hosts serving /.well-known/ucp, the Universal Commerce Protocol document, 419 point at Shopify and 207 mention Wix. 57 are neither, about 8%. Counting the 683 as 683 companies adopting agentic commerce would be a mistake: the platforms made most of those decisions for their customers.
The count also moved fast. A run on October 30 found 477. Of the 210 hosts new since then, 206 are attributed to Wix, up from one Wix host on October 30. The other four are not.
Reading those documents shows what platform-level rollout looks like. kratix.io and www.syntax-bio.com both returned documents declaring the dev.ucp.shopping.cart and dev.ucp.shopping.checkout capabilities, and neither reads as a shop. The kratix.io document points its shopping endpoints at wixapis.com. We have not established why those documents appeared, and we do not know whether checkout works on any of them. What we can say is that a well-known file proves the file exists. It does not show the company meant to publish it, or that an agent could buy anything there.
What this does not measure
These are floors. We requested each document from the provider’s main website host, with a declared bot user agent. A provider whose OAuth metadata lives on auth.example.com, or whose agent card lives on api.example.com, reads as a miss here, and so does any site that blocks bots. The OAuth, OpenID and agent card rows are the most likely to be undercounted.
The content signals row is an upper bound. Those lines can come from a CDN default rather than a choice the provider made.
The catalog is not the web. These are hosts of companies we track, and it includes small sites that came to us because they publish agent-facing documents. Do not read these shares as adoption across the internet. We also count ourselves: apis.io serves 10 of the 13.
The shape tests are not validation. Passing means the document has the required shape, not that it conforms to its specification. The agent-descriptions test accepts any JSON object, and the Wix attribution is a text match on the document.
None of this changes a score. It is a measurement of who serves what, and a rerun will show which of these numbers are still moving, Wix first.