A2A + Claude Code: Complete MCP Integration
A2A is a MCP server that An MCP server that bridges the Model Context Protocol (MCP) with the Agent-to-Agent (A2A) protocol, enabling MCP-compatible AI assistants (like Claude) to seamlessly interact with A2A agents..
When integrated with Claude Code, you can:
- Register and manage A2A agents for communication
- Send messages to A2A agents and handle responses
- Manage asynchronous tasks and retrieve results
This guide provides step-by-step instructions to set up A2A in Claude Code, including configuration, examples, and troubleshooting.
What You'll Achieve
After completing this setup:
- A2A will be fully integrated and operational
- You can use A2A tools directly in Claude Code
- All A2A capabilities will be available for your workflows
- Access to 4 different tools
Prerequisites
Before starting, ensure you have:
- Claude Code installed and configured
- Compatible operating system (Windows, macOS, Linux)
Installation
Step 1: Install A2A
Configuration
Step 2: Configure Claude Code
- Install Claude Code
Download and install Claude Code from the official website
Visit: https://claude.ai/code
Note: Claude Code is available as a native application, not via npm
- Navigate to Project
Open terminal in your project directory where you want to use the MCP server
- Install MCP Server
Install the MCP server you want to use (e.g., via npm, pip, or other package manager)
- Configure MCP Server
Add MCP server configuration to project CLAUDE.md file or use --mcp-config flag
Note: CLAUDE.md is preferred for project-specific configuration
- Test Integration
Start Claude Code and verify MCP server is working
claude
Note: Use interactive mode to test MCP server functionality
Configuration Details
Add to your project's CLAUDE.md file:
## MCP Servers
### A2A
- **Installation**: a2a
- **Configuration**: "MCP_TRANSPORT": "streamable-http",
"MCP_HOST": "0.0.0.0",
"MCP_PORT": "8080",
"MCP_PATH": "/api/mcp",
"MCP_DEBUG": "true"
- **Description**: An MCP server that bridges the Model Context Protocol (MCP) with the Agent-to-Agent (A2A) protocol, enabling MCP-compatible AI assistants (like Claude) to seamlessly interact with A2A agents.
Claude Code will automatically detect and load MCP servers from your project context.
Examples
Once configured, you can use A2A in Claude Code:
Register and Communicate with Agent
Set up communication with an A2A agent
Ask Claude Code: "Register an agent for data analysis tasks and send it a dataset processing request"
Expected Result: Agent registered, task submitted, and task_id returned for tracking
Stream Real-Time Data
Use streaming to get real-time updates from agent
Ask Claude Code: "Stream live updates from the monitoring agent about system metrics"
Expected Result: Continuous stream of system metrics and status updates
Manage Multiple Agents
Coordinate tasks across multiple A2A agents
Ask Claude Code: "List all available agents and distribute parallel processing tasks"
Expected Result: Agent list displayed, tasks distributed, and progress tracked
Handle Task Results
Retrieve and process completed task results
Ask Claude Code: "Get the results from the data analysis task I submitted earlier"
Expected Result: Task results retrieved with processed data and analysis findings
Testing Your Setup
- Run claude in your project directory
- Ask Claude to list available tools and verify A2A tools are present
- Test A2A functionality by asking Claude to use specific tools
Test commands:
claude
claude --debug
Troubleshooting
Common Issues
Agent Registration Failed
Symptoms: Registration errors, Agent not found, Connection timeouts
Cause: Network connectivity issues or invalid agent configuration
Solution:
- Check internet connectivity to A2A network
- Verify agent endpoint URLs are correct
- Ensure agent is online and accepting connections
- Check firewall settings and port accessibility
Task Never Completes
Symptoms: Task stuck in pending state, No response from agent
Cause: Agent overload, network issues, or task complexity
Solution:
- Check agent status and availability
- Cancel and resubmit the task
- Break complex tasks into smaller parts
- Try different agent if available
Transport Protocol Errors
Symptoms: Connection refused, Protocol mismatch errors
Cause: Incorrect transport configuration or port conflicts
Solution:
- Verify MCP_TRANSPORT setting matches client expectations
- Check MCP_HOST and MCP_PORT are accessible
- Ensure no port conflicts with other services
- Try different transport mode (stdio, http, sse)
Message Streaming Issues
Symptoms: Broken streams, Incomplete messages, Timeout errors
Cause: Network instability or buffer overflow
Solution:
- Check network stability and bandwidth
- Reduce message frequency or size
- Enable debug logging to trace issues
- Use appropriate buffer sizes for streaming
Server Not Found
Symptoms: Command not found errors, Server tools unavailable
Cause: Server not installed or not in PATH
Solution:
- Verify server installation
- Check PATH environment variable
- Install server globally or in project
Configuration Not Loaded
Symptoms: CLAUDE.md changes not recognized, Old server config used
Cause: CLAUDE.md file not in correct location or format
Solution:
- Ensure CLAUDE.md is in project root
- Verify markdown syntax is correct
- Restart Claude Code session
A2A not appearing in Claude Code
Symptoms: Server not listed, Tools not available
Cause: Configuration or installation issue
Solution:
- Verify configuration syntax
- Check A2A installation
- Restart Claude Code
- Check logs for error messages
Next Steps
Now that A2A is integrated with Claude Code:
- Explore all A2A capabilities through Claude Code
- Check out other MCP servers that work with Claude Code
- Join the MCP community for tips and support
- Consider contributing to A2A development
Need Help?
- Search for A2A documentation
- Check the Claude Code MCP guide
- Join the MCP community discussions