In A2A, what is an Agent Card and what does it let a calling agent do?
answer
- the agent plane, not the tool plane
- a self-published description of a peer
- skills, endpoint, auth, capabilities
- fetched at runtime, not compiled in
- a claim, not an authorization
basics
~20 sAn Agent Card is a machine-readable description a remote agent publishes about itself: identity, the skills it offers, its endpoint, and how to authenticate. A calling agent fetches cards to discover peers and decide who can do a job, before sending any work.
solid answer
~50 sA2A — the agent-to-agent protocol donated to the Linux Foundation in 2025 — solves the *horizontal* problem: how one agent finds and calls another agent it does not own. The Agent Card is its discovery unit, a document the remote agent publishes at a well-known location describing its name and provider, the skills it offers with human-readable descriptions and example inputs, the endpoint to send work to, the authentication schemes it requires, and optional capabilities such as streaming or push notifications. A procurement agent can fetch the cards of three supplier agents, compare declared skills, pick the ones that quote in its currency, and open a task with each — without any of the four sharing a codebase or a framework. Two things a card is not: it is not a tool schema for a single function call, and it is not evidence — the card is a claim by its publisher, so identity and authorization still have to be verified independently of what the card says.
go deeper
Know that A2A is about agents calling other agents, and that an Agent Card is a published description of a remote agent's identity, skills and endpoint.
Explain the fields a card carries and why runtime discovery beats a hardcoded integration when the peer's capabilities can change without your redeploying.
Bring the trust angle: a card is a self-claim, its skill text is untrusted input your model will read, and discovery is separate from authorization and from any evidence of quality.
Own the plane split and the adoption call — where a discovery protocol earns its keep across organizational boundaries, and where it is ceremony inside a system you already control end to end.
## Two planes, one system By 2026 the integration layer settled into two tiers, and interviewers expect you to name the split. The **tool plane** is how one agent reaches deterministic capabilities — files, databases, SaaS APIs — and a standard protocol exists for it. The **agent plane** is how one agent reaches *another agent*: an autonomous peer with its own model, its own context, its own opinions, and a job that may run for minutes. A2A is the protocol built for that second plane; ACP is a REST-native alternative for peers that expose plain HTTP and no streaming channel. The distinction matters because the two planes have different needs. A tool has a signature and returns a value. An agent has *capabilities* you must discover, a task lifecycle you must track, and a level of autonomy that means the answer may come back as a question. ## What the Agent Card carries The Agent Card is A2A's answer to "who are you and what can you do". A published card describes: - **Identity** — the agent's name, description and provider. - **Skills** — named capabilities with descriptions, and typically example inputs and the input/output content types they accept. This is written for a *model* to read as much as a developer: the description is what a calling agent reasons over when deciding whom to route to. - **Endpoint** — where to send work. - **Authentication** — which schemes the agent requires, so the caller knows what credential to present. - **Capabilities** — optional protocol features the agent supports, such as streaming status updates or push notifications to a webhook. - **Version information**, so a caller can reason about compatibility. The card is fetched over ordinary HTTP from a well-known location on the agent's host, which is what makes discovery work without a central registry — though registries and catalogs are commonly layered on top in enterprise deployments. ## Discovery in practice Consider a corporate procurement agent that must source a component it has never bought before. It has three candidate supplier agents, run by three different companies, built on three different frameworks. It fetches each Agent Card, reads the declared skills, and finds that two expose a `request_quote` skill while the third only exposes order tracking. It also reads each card's authentication requirement and confirms it holds a credential for two of them. It then opens a task with each of the two qualified peers and compares the results. Nothing in that flow required the procurement agent to know how a supplier agent is implemented. That is the entire point: A2A is an **opaque** protocol by design — peers exchange tasks and messages, not internal state, tools or memory. Neither side learns the other's prompts, model, or tool inventory, which is what makes it usable across organizational boundaries where those things are trade secrets. ## Why not just describe it as a tool? You can wrap a remote agent as a single function and call it. That works, and inside one codebase it is often the right call. It stops working well when: - The peer's capability set **changes without your redeploying** — a card is fetched at runtime, a hardcoded function signature is not. - The work is **long-running** — a function call has no vocabulary for "still working, 40% done, here is a partial artifact". - The peer may need to **ask you something** mid-task, rather than returning a value. - You must **choose among peers** you did not integrate individually. ## Trust, staleness and the limits An Agent Card is a self-description. It is a claim by the publisher, exactly like a service's own API documentation, and it carries the same risks: - **It can lie or overstate.** A skill description is prompt text your agent will read and act on, which makes a hostile card an injection surface. Treat fetched card content as untrusted input, not as instructions. - **It can be stale.** Cards are cached; a capability may have been withdrawn since you read it. Handle a call that fails because the skill no longer exists. - **It does not authorize you.** Discovery tells you an endpoint exists and what credential type it wants. Whether you may act, and on whose behalf, is an identity question settled by your credential and the peer's policy — the modern pattern being per-agent identity with delegated, on-behalf-of authorization so an agent's effective permission is the intersection of the user's rights and the agent's own allowed capabilities. - **It does not describe quality.** No card field tells you whether the supplier agent's quotes are accurate. That is an evaluation problem, not a discovery one. ## The honest framing Adoption of the agent plane is real but far from universal, and it is concentrated where it pays: crossing organizational or vendor boundaries. "A standard for tools, A2A for agents" is the stated default for cross-boundary enterprise deployments as of mid-2026. Inside a single codebase, discovery is a solved problem — you already know what your agents can do — and adopting a discovery protocol there buys ceremony rather than capability.
- A supplier only exposes plain HTTP endpoints and cannot stream. How does that change your protocol choice?That is the case ACP was designed for — a REST-native agent protocol where interaction is ordinary request/response over HTTP and streaming is not assumed. Practically you either meet them there, or you place an adapter in front of their service that speaks your protocol outward and plain HTTP inward. Forcing a streaming-first protocol onto a peer that cannot support it just relocates the problem.
- How do you stop a malicious Agent Card from influencing your agent's behaviour?Treat every field as untrusted data, never as instructions: skill descriptions are attacker-controlled text that your model will read. Keep discovered content out of the system prompt, fetch cards only from allowlisted hosts for anything consequential, and make the decision to actually call a peer subject to your own policy rather than to how persuasive its description was.
- Why is A2A described as an opaque protocol, and what does that buy?Peers exchange tasks, messages and artifacts, not internal state — neither side sees the other's prompts, model, memory or tool inventory. That opacity is what makes cross-organization use viable: a supplier can accept work from a buyer's agent without exposing how it prices, and the buyer does not inherit the supplier's implementation as a dependency.
An Agent Card is a capability sheet a contractor publishes: what work they take on, where to send it, and what credentials they need to see. Reading it tells you whom to approach; it does not tell you they are any good, and it does not give you a contract.
saying these in an interview costs you the question
- Calls an Agent Card the same thing as a tool schema
- Treats the card's claims as verified capability
- Thinks discovery implies permission to call
- Assumes every agent must adopt an agent protocol
- Puts fetched skill descriptions straight into the system prompt