# What 19 identity vendors publish for agents

2026-09-05

I measured 19 companies that build digital identity and trust products, wallets and verifiable credential infrastructure, the parts of the stack meant to let one machine prove something to another machine. Then I asked the simplest question I could think of about them. Can an agent find out anything at all about these companies without a human in the loop.

## How this was measured

The measurement ran on 2026-09-05. One full scan per company with the isitagentready.com scanner on its default profile, run one target at a time, plus my own reads with curl against the same hosts. Sixteen checks applied that day. I am not naming the companies, and I come back to why below.

Levels first. Fifteen came out at Level 1, three at Level 0 and one at Level 2. Nothing above that. The average was 2,8 checks passed out of 16.

## The column where every one of them scored zero

The scanner has a group for API, auth, MCP and A2A discovery, nine checks in all: apiCatalog, oauthDiscovery, oauthProtectedResource, authMd, mcpServerCard, a2aAgentCard, agentSkills, webMcp and ard. Every company scored zero of nine. Not one of the 19 publishes an API catalog, an OAuth discovery document, an MCP server card, an A2A agent card or an ARD manifest. One authMd check failed with a 500 rather than a 404, which is a broken answer and not evidence of a missing file, and that is the only nuance in the whole column. These are companies whose product is machine to machine verifiable identity.

## The smaller readings

Two of the 19 serve no robots.txt at all. A third serves one with no wildcard rule, so the file exists and says nothing about most crawlers. Content Signals, the line where a site declares whether it wants its text used for AI training, appeared exactly once in the set. That company says ai-train=no and search=yes. Markdown content negotiation worked on one company as well, though that is a single reading and I have not repeated it. The same check moved on me within one day on a different site, from 406 to 200 to 200, so I treat it as provisional.

Seven of the 19 have an llms.txt an agent can fetch, and one of those seven is a redirect to a file parked on a marketing platform host. Twelve have nothing there. One of the seven announces in its own first line that a SEO plugin generated it, which makes it the publishing system talking rather than a decision anyone made. Seven of the 19 serve no JSON-LD at all on the front page.

## One site where 200 means nothing

One company was different in a way worth describing. I asked for eight paths on that domain and all eight returned HTTP 200 with the same 3021 byte body and an identical sha256. The front page, a real subpage, a path I invented on the spot, llms.txt and four well-known addresses. So the agent addresses answer 200 with a page that is not what was asked for. I opened the site in a browser and the content renders fine, it just arrives after JavaScript has run. An agent that does not execute scripts cannot tell an existing page from one that does not exist. The other 18 answered 404 to the same addresses, which is the correct answer.

## What this does not say

I read front pages and root paths and nothing else, so none of it is a statement about anyone's documentation, product API or MCP endpoint. Three of the passing Link header readings come from WordPress serving its own rel=alternate, which is the platform and not the company. Each company was scanned once, and a level from a single run is a snapshot. I tested no products. A site can be hard for an agent to read while the software behind it is excellent, and in this set I would expect that to be the common case.

## Why the companies are not named

The finding is not that one company forgot a file. All 19 landed on zero in the same column, which makes this a property of the category rather than of anyone's diligence. I have also not contacted any of them, and a list of names published before that would be a different kind of document than the one I wanted to write. I should be straight about the limit of this though. Every reading above comes from a public surface, so a reader who guesses the set and runs the same scan will work out who is who. Withholding the names is not protection, it is a statement about what the piece is for.

## One last thing, and it cuts against me

These checks come from one scanner and the rules move every month. The set of applicable checks grows as new ones are added, so a count from an older run is not comparable with today's. My own site reads Level 5 on that same scanner today, with all 16 applicable checks passing, and that is a snapshot from one instrument on one day, exactly like every number above.

## Frequently asked

**Does a Level 1 reading mean the company builds bad software?**

No, and nothing here measures the software. The scan reads what a website publishes for an automated visitor. A company can run excellent credential infrastructure behind a site that tells an agent nothing about it, and in this set that is the likely case for most of them.

**Why would an identity vendor need an MCP server card or an agent card?**

Because the thing being sold is machine to machine trust, and a machine that arrives at the site has no way to find the interfaces without one. The gap is not that the file is mandatory. The gap is that these nine addresses are where an agent looks first, and in this set they were empty every time.

**Can I get the reading for my own site?**

If you are in this set and want your own reading, email me and I will send you the scanner output for your own domain. That is the whole promise, one scan and the raw result, and it is not the paid work.

## Related

- [I scanned fourteen code hosts. Not one served an MCP server card.](/blog/agent-readiness-code-hosts)
- [Well-known files for agents](/guides/well-known-for-agents)
- [Publishing an MCP server card](/guides/mcp-server-card)