MCP Proxy Server
About
MCP Proxy Server is a central hub that aggregates and serves multiple MCP resource servers through a single unified interface. It connects to, manages, and routes requests to backend MCP servers, combining their capabilities for clients.
Details
- Author
- MCP-Mirror
- Downloads
- 303
- Categories
- Other
Jump to
- Discover and connect to multiple MCP resource servers
- Aggregate resources from all connected servers
- Route tool calls to appropriate backend servers
- Aggregate prompts from all connected servers
- Handle multi-server prompt responses
- Maintain consistent URI schemes across servers
Install dependencies with npm install, build with npm run build, then run with MCP_CONFIG_PATH=./config.json mcp-proxy-server. Provide a JSON configuration file (copy config.example.json) listing the MCP servers to connect. For Claude Desktop, add the server config to claude_desktop_config.json.
MCP Proxy Server
An MCP proxy server that aggregates and serves multiple MCP resource servers through a single interface. This server acts as a central hub that can:
- Connect to and manage multiple MCP resource servers
- Expose their combined capabilities through a unified interface
- Handle routing of requests to appropriate backend servers
- Aggregate responses from multiple sources
Features
Resource Management
- Discover and connect to multiple MCP resource servers - Aggregate resources from all connected servers - Maintain consistent URI schemes across servers - Handle resource routing and resolutionTool Aggregation
- Expose tools from all connected servers - Route tool calls to appropriate backend servers - Maintain tool state and handle responsesPrompt Handling
- Aggregate prompts from all connected servers - Route prompt requests to appropriate backends - Handle multi-server prompt responsesConfiguration
The server requires a JSON configuration file that specifies the MCP servers to connect to. Copy the example config and modify it for your needs:
cp config.example.json config.json
Example config structure:
{
"servers": [
{
"name": "Server 1",
"transport": {
"command": "/path/to/server1/build/index.js"
}
},
{
"name": "Server 2",
"transport": {
"command": "server2-command",
"args": ["--option1", "value1"]
}
}
]
}
The config file must be provided when running the server:
MCP_CONFIG_PATH=./config.json mcp-proxy-server
Development
Install dependencies:
npm install
Build the server:
npm run build
For development with auto-rebuild:
npm run watch
Installation
To use with Claude Desktop, add the server config:
On MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json
On Windows: %APPDATA%/Claude/claude_desktop_config.json
{
"mcpServers": {
"mcp-proxy": {
"command": "/path/to/mcp-proxy-server/build/index.js",
"env": {
"MCP_CONFIG_PATH": "/absolute/path/to/your/config.json"
}
}
}
}
Debugging
Since MCP servers communicate over stdio, debugging can be challenging. We recommend using the MCP Inspector, which is available as a package script:
npm run inspector
The Inspector will provide a URL to access debugging tools in your browser.
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.



