A2A Client MCP Server

by tesla0225

A2A Client MCP Server

An MCP server that acts as a client to the Agent-to-Agent (A2A) protocol, allowing LLMs to interact with A2A agents through the Model Context Protocol (MCP).

Features

  • Connect to any A2A-compatible agent
  • Send and receive messages
  • Track and manage tasks
  • Support for streaming responses
  • Query agent capabilities and metadata

Installation

# Install globally npm install -g a2a-client-mcp-server # Or run directly with npx npx a2a-client-mcp-server

Configuration

Environment Variables

Usage with Claude Desktop

Add this to your claude_desktop_config.json:

NPX

npm run build npm link
{ "mcpServers": { "a2a-client": { "command": "npx", "args": ["-y", "a2a-client-mcp-server"], "env": { "A2A_ENDPOINT_URL": "http://localhost:41241" } } } }

Docker

Build the Docker image:

docker build -t a2a-client-mcp-server .

Configure Claude Desktop:

{ "mcpServers": { "a2a-client": { "command": "docker", "args": [ "run", "-i", "--rm", "-e", "A2A_ENDPOINT_URL", "a2a-client-mcp-server" ], "env": { "A2A_ENDPOINT_URL": "http://localhost:41241" } } } }

Available Tools

a2a_send_task

Send a task to an A2A agent

  • message (string): Message to send to the agent
  • taskId (string, optional): Task ID (generated if not provided)

a2a_get_task

Get the current state of a task

  • taskId (string): ID of the task to retrieve

a2a_cancel_task

Cancel a running task

  • taskId (string): ID of the task to cancel

a2a_send_task_subscribe

Send a task and subscribe to updates (streaming)

  • message (string): Message to send to the agent
  • taskId (string, optional): Task ID (generated if not provided)
  • maxUpdates (number, optional): Maximum updates to receive (default: 10)

a2a_agent_info

Get information about the connected A2A agent

  • No parameters required

Resources

The server provides access to two MCP resources:

  • a2a://agent-card: Information about the connected A2A agent
  • a2a://tasks: List of recent A2A tasks

Example Usage

This example shows how to use A2A Client MCP Server to interact with a Coder Agent:

First, let me explore what A2A agent we're connected to. I'll use the a2a_agent_info tool to check the agent details. The agent provides a coding service that can generate files based on natural language instructions. Let's create a simple Python script. I'll use the a2a_send_task tool to send a request: Task: "Create a Python function that calculates the Fibonacci sequence" Now I can check the task status using a2a_get_task with the task ID from the previous response. The agent has created the requested Python code. I can now retrieve and use this code in my project.

Development

# Install dependencies npm install # Build the project npm run build # Run in development mode npm run watch

License

MIT

-
security - not tested
-
license - not tested
-
quality - not tested

hybrid server

The server is able to function both locally and remotely, depending on the configuration or use case.

An MCP server that enables LLMs to interact with Agent-to-Agent (A2A) protocol compatible agents, allowing for sending messages, tracking tasks, and receiving streaming responses.

  1. Features
    1. Installation
      1. Configuration
        1. Environment Variables
      2. Usage with Claude Desktop
        1. NPX
        2. Docker
      3. Available Tools
        1. a2a_send_task
        2. a2a_get_task
        3. a2a_cancel_task
        4. a2a_send_task_subscribe
        5. a2a_agent_info
      4. Resources
        1. Example Usage
          1. Development
            1. License

              Related MCP Servers

              • -
                security
                A
                license
                -
                quality
                A Model Context Protocol (MCP) server that enables LLMs to interact directly the documents that they have on-disk through agentic RAG and hybrid search in LanceDB. Ask LLMs questions about the dataset as a whole or about specific documents.
                Last updated -
                12
                31
                TypeScript
                MIT License
                • Apple
              • -
                security
                A
                license
                -
                quality
                MCP server for toolhouse.ai. This does not rely on an external llm unlike the official server.
                Last updated -
                1
                Python
                MIT License
              • -
                security
                A
                license
                -
                quality
                A server for the Machine Chat Protocol (MCP) that provides a YAML-based configuration system for LLM applications, allowing users to define resources, tools, and prompts without writing code.
                Last updated -
                5
                Python
                MIT License
              • A
                security
                F
                license
                A
                quality
                A server that implements the Model Context Protocol to connect LLMs to Brightsy AI agents, allowing users to pass messages to and receive responses from these agents.
                Last updated -
                1
                96
                JavaScript

              View all related MCP servers

              ID: zugzz2wrhl