home / mcp / acp-mcp-server

ACP-MCP-Server

A bridge server that connects Agent Communication Protocol (ACP) agents with Model Context Protocol (MCP) clients, enabling seamless integration between ACP-based AI agents and MCP-compatible tools like Claude Desktop.

Installation
Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "gongrzhe-acp-mcp-server": {
      "command": "acp-mcp-server",
      "args": [],
      "env": {
        "ACP_BASE_URL": "http://localhost:8000"
      }
    }
  }
}

You can connect ACP agents with MCP clients through a dedicated bridge that handles multiple transports, automatic agent discovery, smart routing, and interactive sessions. This MCP server enables seamless integration between ACP-based AI agents and MCP-compatible tools, letting you run and coordinate agents from your MCP client with minimal setup.

How to use

You run the MCP server locally and connect your MCP client to it. Start with the default STDIO transport for Claude Desktop compatibility, or choose streaming transports like SSE or a REST-style HTTP flow when you need web integration. The server automatically discovers ACP agents you have running and routes requests to the best matching agent. Use interactive sessions for multi-turn conversations and take advantage of multi-modal support to handle different content types.

How to install

Prerequisites you need before installing are Python 3.11 or newer and a running ACP server with agents. You will also use FastMCP for the MCP protocol implementation.

# Install from PyPI
pip install acp-mcp-server

# Or run in an isolated environment using uvx
uvx acp-mcp-server

Additional notes

Environment variables that affect how the MCP server connects to ACP are as follows. You can set ACP_BASE_URL to point to your ACP server. The default is http://localhost:8000.

# Example environment variable
export ACP_BASE_URL=http://localhost:8000

Configuration and commands

The primary way to run the server is a simple STDIO command, which is suitable for local development and Claude Desktop workflows. If you prefer streaming or REST-like transport, you can pass transport options and ports as shown in the usage examples.

Available tools

discover_acp_agents

Discover available ACP agents registered with the ACP server.

get_agent_info

Retrieve detailed information about a specific ACP agent.

run_acp_agent

Execute ACP agents in synchronous or asynchronous mode.

get_async_run_result

Fetch results from asynchronous agent executions.

list_active_runs

List all currently active agent runs.

smart_route_request

Route a request to the most suitable ACP agent using the smart routing logic.

test_routing

Test routing rules without performing agent execution.

add_routing_rule

Add custom routing rules to influence future routing decisions.

list_routing_strategies

Display all available routing strategies.

start_interactive_agent

Open an interactive session with an ACP agent.

provide_user_input

Send user input to a waiting interactive agent.

list_pending_interactions

Show pending interactive interactions awaiting user input.

convert_acp_message

Convert messages between ACP and MCP formats.

analyze_message_content

Analyze the structure and content of ACP/MCP messages.