Skip to main content

What is A2A?

A2A (Agent-to-Agent Protocol) is an open protocol that enables AI agents to discover and communicate with each other across different platforms and vendors. Originally launched by Google and now maintained by the Linux Foundation, A2A provides a standardized way for agents to collaborate on complex tasks.
A2A vs MCP — What’s the difference?
  • MCP connects agents to tools (databases, APIs, services)
  • A2A connects agents to other agents (delegation, collaboration)
Use both together: MCP gives your agent capabilities, A2A lets it collaborate with specialized agents.

Current Implementation

FeatureStatus
StreamingA2A waits for the complete response before returning results
AuthenticationNone or API key based
DiscoveryVia agent-card.json

Core Concepts

AgentCards

Every A2A agent exposes an AgentCard — a JSON file at /.well-known/agent-card.json that describes the agent’s capabilities. This enables automatic discovery.
{
  "name": "Research Assistant",
  "description": "Searches and summarizes academic papers",
  "url": "https://research-agent.example.com",
  "version": "1.0.0",
  "skills": [
    {
      "id": "paper-search",
      "name": "Paper Search",
      "description": "Search academic databases for relevant papers"
    },
    {
      "id": "summarize",
      "name": "Summarize Paper",
      "description": "Generate a concise summary of a research paper"
    }
  ]
}

Communication Flow

  1. Discovery — Client fetches /.well-known/agent-card.json to learn agent capabilities
  2. Task Creation — Client sends a task request with input data
  3. Processing — Agent processes the task and generates a complete response
  4. Response — Agent returns the full result (no streaming)
Complete A2A Agent Example: The Langdock-A2A-Demo Repository contains a TypeScript-based A2A agent (protocol v0.3.0) with Express server and Langdock API integration.

When to Use A2A

Use CaseA2AMCP
Query a database
Call an API
Delegate research to a specialized agent
Coordinate multiple agents on a task
Connect to external tools/services
Agent-to-agent collaboration

Resources