Skip to content

A2A compliance: the full funnel

Follow the public discovery funnel from candidate URL to responding agent.

The funnel

11,717
Candidates discovered
From 9 public sources
4,543
HTTP 200
Server returned something
9,153
Valid AgentCard
Schema-validated A2A v1.0
1,155
Live JSON-RPC
Actually operational

Real agents, but un-probeable by us

150 of the 11,717 candidates returned 401/403 on the agent-card URL. Some of these are stale URLs in our discovery feed that happen to point at credentialed endpoints (CDN paths, admin pages, etc.); others are real agents whose card requires authentication. Both count as "agent exists," but we can't anonymously probe them.

Auth-gated (401/403) 94 0.8%

Real agent — but the card requires credentials we don't have. Counts as 'agent exists' but un-anonymously-probeable.

Auth-gated (401/403) 56 0.5%

Real agent — but the card requires credentials we don't have. Counts as 'agent exists' but un-anonymously-probeable.

Why most candidates didn't return a valid agent card

7,024 of the 11,717 candidates failed at the card-fetch step (404, server error, network failure, or returned 200 but with invalid card body). Almost none of this is our bug; it's stale URLs in upstream discovery feeds.

HTTP 404 3,991 34.1%

URL has no agent card. These are mostly repos/sites that talk about A2A but don't actually serve /.well-known/agent-card.json.

Network failure 2,679 22.9%

DNS failed, connect refused, hard timeout, or blocked by safety policy. The host is dead or our crawler couldn't reach it.

Server error (503) 85 0.7%

Their server is currently broken. Could recover; we re-probe in cold tier.

HTTP 402 70 0.6%

Non-2xx response on the agent-card URL.

HTTP 410 65 0.6%

Non-2xx response on the agent-card URL.

Server error (530) 34 0.3%

Their server is currently broken. Could recover; we re-probe in cold tier.

Server error (502) 24 0.2%

Their server is currently broken. Could recover; we re-probe in cold tier.

HTTP 400 21 0.2%

Non-2xx response on the agent-card URL.

Rate-limited (429) 12 0.1%

Provider throttled our crawler — we'll back off and retry.

HTTP 405 10 0.1%

Non-2xx response on the agent-card URL.

Server error (500) 8 0.1%

Their server is currently broken. Could recover; we re-probe in cold tier.

Server error (525) 7 0.1%

Their server is currently broken. Could recover; we re-probe in cold tier.

Server error (522) 4 0.0%

Their server is currently broken. Could recover; we re-probe in cold tier.

Server error (526) 3 0.0%

Their server is currently broken. Could recover; we re-probe in cold tier.

HTTP 406 3 0.0%

Non-2xx response on the agent-card URL.

Server error (521) 2 0.0%

Their server is currently broken. Could recover; we re-probe in cold tier.

Server error (520) 2 0.0%

Their server is currently broken. Could recover; we re-probe in cold tier.

HTTP 204 2 0.0%

Non-2xx response on the agent-card URL.

Server error (504) 1 0.0%

Their server is currently broken. Could recover; we re-probe in cold tier.

HTTP 441 1 0.0%

Non-2xx response on the agent-card URL.

Of the 9,153 valid cards: who actually responds?

Not yet probed: 3398 cards · 37.1%: Indexed but live-probe hasn't run yet (e.g. recently added).

Not yet probed 3,398 37.1%

Indexed but live-probe hasn't run yet (e.g. recently added).

Examples
Not yet probed 1,757 19.2%

Indexed but live-probe hasn't run yet (e.g. recently added).

Examples
Responds to JSON-RPC 1,155 12.6%

Agent endpoint accepts message/send and returns a valid A2A response.

Examples
No URL declared 1,087 11.9%

Agent card is valid but has no .url field — can't be called directly.

Examples
Non-compliant response 961 10.5%

Endpoint returned HTTP 200 but the body isn't a valid JSON-RPC 2.0 A2A response.

Examples
Endpoint missing 439 4.8%

Card declares a URL, but that URL returns HTTP 404. Card claim mismatch.

Examples
Auth required 215 2.3%

Agent exists and responds, but requires credentials (401/403). Real but non-anonymous.

Examples
Unreachable 115 1.3%

DNS failed, connection refused, or hard timeout — host might be down.

Examples
Server error 23 0.3%

Endpoint exists but currently returns 5xx errors — likely unhealthy.

Examples
Not yet probed 3 0.0%

Indexed but live-probe hasn't run yet (e.g. recently added).

Examples

Are there really this few agents?

These counts cover agents we can discover and check publicly. Private, authenticated and unadvertised deployments are outside this funnel.

Each stage separates a discovered listing from a responding agent. See source coverage for collection dates and limits.