Ismail Khan

A2A — the Agent2Agent Protocol An open standard that lets agents built by different vendors, on different frameworks, collaborate as peers. MCP connects an agent down to tools. A2A connects it across to other agents — over an organizational boundary. Why not wrap the agent as a tool? AS A TOOL (the MCP shape) Flight Agent tool interface book_flight(from, to, date) stateless · predefined · one shot lost: multi-turn state · clarification · negotiation · re-planning AS AN AGENT (what A2A keeps) Client Agent Remote Agent request which dates? confirm kept: reason, plan, delegate, negotiate — agent to agent One agent, two protocols, two directions Plan an international trip: the assistant orchestrates, but half the workers aren't its own. user prompt AI Assistantorchestrator MCP down, to tools and data vector search SQL query calculator stateless · predefined · call and return organizational boundary different vendor · different framework · no visibility inside A2A across, to peer agents A2A servers — other orgs, other frameworks Flight Booking Agent Hotel Reservation Agent Currency Conversion Agent Local Tours Agent opaque: you see the card, never the internals Design principles Simplicity HTTP · JSON-RPC · SSE Enterprise-ready auth · tracing · monitoring Asynchronous long-running, disconnected Modality-independent any content type, not just text Opaque execution why the card must be explicit The request lifecycle one client, one A2A server, four steps 1 · Agent Discovery GET /.well-known/agent-card agent card url where to send requests securitySchemes how to authenticate capabilities what it can do the declared surface — and the only part you can see 2 · Authentication read securitySchemes from the card Auth Server JWT bearer token, every call openIdConnect: token from the card's authorizationUrl + tokenUrl 3 · sendMessage POST /sendMessage (with JWT) Task the unit of work, tracked 4 · sendMessageStream same call, answered as an SSE stream Task (Submitted)TaskStatusUpdateEvent (Working)TaskArtifactUpdateEvent (artifact A)TaskArtifactUpdateEvent (artifact B)TaskStatusUpdateEvent (Completed) artifacts arrive before completion — the long-running-operation bet The agent stack MCP ↓ tools & data A2A → other agents Frameworks — ADK, LangGraph, CrewAI Models — any LLM, supplying the reasoning