MCP Proxy Server
Agrega múltiples servidores de recursos MCP en una única interfaz.
Documentación
MCP Proxy Server
Un servidor proxy MCP que agrega y sirve múltiples servidores de recursos MCP a través de una única interfaz. Este servidor actúa como un centro central que puede:
- Conectarse y gestionar múltiples servidores de recursos MCP
- Exponer sus capacidades combinadas a través de una interfaz unificada
- Manejar el enrutamiento de solicitudes a los servidores backend apropiados
- Agregar respuestas de múltiples fuentes
Características
Gestión de Recursos
- Descubrir y conectarse a múltiples servidores de recursos MCP
- Agregar recursos de todos los servidores conectados
- Mantener esquemas de URI consistentes entre servidores
- Manejar el enrutamiento y la resolución de recursos
Agregación de Herramientas
- Exponer herramientas de todos los servidores conectados
- Enrutar llamadas de herramientas a los servidores backend apropiados
- Mantener el estado de las herramientas y manejar las respuestas
Manejo de Prompts
- Agregar prompts de todos los servidores conectados
- Enrutar solicitudes de prompts a los backends apropiados
- Manejar respuestas de prompts de múltiples servidores
Configuración
El servidor requiere un archivo de configuración JSON que especifique los servidores MCP a los que conectarse. Copie la configuración de ejemplo y modifíquela según sus necesidades:
cp config.example.json config.json
Estructura de configuración de ejemplo:
{
"servers": [
{
"name": "Server 1",
"transport": {
"command": "/path/to/server1/build/index.js"
}
},
{
"name": "Server 2",
"transport": {
"command": "server2-command",
"args": ["--option1", "value1"],
"env": ["SECRET_API_KEY"]
}
},
{
"name": "Example Server 3",
"transport": {
"type": "sse",
"url": "http://localhost:8080/sse"
}
}
]
}
El archivo de configuración debe proporcionarse al ejecutar el servidor:
MCP_CONFIG_PATH=./config.json mcp-proxy-server
Desarrollo
Instalar dependencias:
npm install
Compilar el servidor:
npm run build
Para desarrollo con reconstrucción automática:
npm run watch
Para desarrollo con ejecución continua:
# Stdio
npm run dev
# SSE
npm run dev:sse
Instalación
Para usar con Claude Desktop, agregue la configuración del servidor:
En MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json
En 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",
"KEEP_SERVER_OPEN": "1"
}
}
}
}
KEEP_SERVER_OPENmantendrá el SSE en ejecución incluso si un cliente se desconecta. Útil cuando múltiples clientes se conectan al proxy MCP.
Depuración
Dado que los servidores MCP se comunican a través de stdio, la depuración puede ser desafiante. Recomendamos usar el Inspector MCP, que está disponible como un script de paquete:
npm run inspector
El Inspector proporcionará una URL para acceder a las herramientas de depuración en su navegador.