multi
An MCP server that proxies multiple MCP servers.
claude mcp add --transport stdio one-mcp-multi-mcp python -m hypercorn src.main:app \ --env DEBUG="False" \ --env CONFIG="./examples/config/mcp_tools.json" \ --env ENCODING="utf-8" \ --env TRANSPORT="sse" \ --env AUTH_TOKEN="The authentication token (optional)" \ --env USE_NAMESPACE="True"
How to use
Multi MCP is a Python-based server that acts as a proxy to multiple MCP servers. It exposes an API surface and transport options (SSE or streamable HTTP) so clients can interact with several MCP backends through a single gateway. The server reads its configuration from a MCP tools JSON file and can be started with a standard ASGI-compatible runner. Once running, you can access the UI or endpoints that expose the proxied MCP tools, making it easier to manage multiple MCP endpoints from one place.
How to install
Prerequisites:
- Python 3.8+ (recommended) and pip
- Git
- Optional: a Python virtual environment tool (e.g., venv, virtualenv)
Install and run:
-
Clone the repository: git clone https://github.com/One-MCP/multi-mcp.git cd multi-mcp
-
Create and activate a virtual environment (optional but recommended): python -m venv venv
On Windows:
venv\Scripts\activate
On macOS/Linux:
source venv/bin/activate
-
Install dependencies: uv pip install -r requirements.txt
-
Start the server (as per the project README): hypercorn src.main:app
Alternatively, with explicit module execution:
python -m hypercorn src.main:app
-
Ensure configuration is available via CONFIG path or defaults, and start using the endpoints documented in the README.
Additional notes
Environment variables determine authentication, configuration source, and transport behavior. Common variables to set include AUTH_TOKEN (optional), CONFIG (path to MCP configuration JSON), ENCODING, TRANSPORT (stdio, sse, or http), USE_NAMESPACE, and DEBUG. If you encounter authentication issues, verify the token format (Bearer token for Authorization header or plain token for X-MCP-Token). The server can proxy multiple MCP endpoints defined in the configuration file; ensure each target MCP server is reachable from the host running this gateway. For development, you can switch TRANSPORT to http to test via standard HTTP requests, or sse for server-sent events streaming.
Related MCP Servers
web-eval-agent
An MCP server that autonomously evaluates web applications.
mcp-neo4j
Neo4j Labs Model Context Protocol servers
Gitingest
mcp server for gitingest
zotero
Model Context Protocol (MCP) server for the Zotero API, in Python
fhir
FHIR MCP Server – helping you expose any FHIR Server or API as a MCP Server.
unitree-go2
The Unitree Go2 MCP Server is a server built on the MCP that enables users to control the Unitree Go2 robot using natural language commands interpreted by a LLM.