Plugged.in MCP Server manages all your other MCPs in one MCP.
The plugged.in MCP Proxy Server is a powerful middleware that aggregates multiple Machine Conversation Protocol (MCP) servers into a single unified interface. It fetches tool, prompt, and resource configurations from the plugged.in App and intelligently routes requests to the appropriate underlying MCP servers.
This proxy enables seamless integration with any MCP client (Claude, Cline, Cursor, etc.) while providing advanced management capabilities through the plugged.in ecosystem.
# Install and run with npx
npx -y @pluggedin/mcp-proxy@latest --pluggedin-api-key YOUR_API_KEY
Add the following to your Claude Desktop configuration:
{
"mcpServers": {
"pluggedin": {
"command": "npx",
"args": ["-y", "@pluggedin/mcp-proxy@latest"],
"env": {
"PLUGGEDIN_API_KEY": "YOUR_API_KEY"
}
}
}
}
Add the following to your Cline configuration:
{
"mcpServers": {
"pluggedin": {
"command": "npx",
"args": ["-y", "@pluggedin/mcp-proxy@latest"],
"env": {
"PLUGGEDIN_API_KEY": "YOUR_API_KEY"
}
}
}
}
For Cursor, you can use command-line arguments instead of environment variables:
npx -y @pluggedin/mcp-proxy@latest --pluggedin-api-key YOUR_API_KEY
Variable | Description | Required | Default |
---|---|---|---|
PLUGGEDIN_API_KEY | API key from plugged.in App | Yes | - |
PLUGGEDIN_API_BASE_URL | Base URL for plugged.in App | No | https://plugged.in |
Command line arguments take precedence over environment variables:
npx -y @pluggedin/mcp-proxy@latest --pluggedin-api-key YOUR_API_KEY --pluggedin-api-base-url https://your-custom-url.com
For a complete list of options:
npx -y @pluggedin/mcp-proxy@latest --help
You can also build and run the proxy server using Docker.
Ensure you have Docker installed and running. Navigate to the pluggedin-mcp
directory and run:
docker build -t pluggedin-mcp-proxy:latest .
A .dockerignore
file is included to optimize the build context.
Run the container, providing the necessary environment variables:
docker run -it --rm \
-e PLUGGEDIN_API_KEY="YOUR_API_KEY" \
-e PLUGGEDIN_API_BASE_URL="YOUR_API_BASE_URL" \
--name pluggedin-mcp-container \
pluggedin-mcp-proxy:latest
Replace YOUR_API_KEY
and YOUR_API_BASE_URL
(if not using the default https://plugged.in
).
While the container is running, you can connect to it using the MCP Inspector:
npx @modelcontextprotocol/inspector docker://pluggedin-mcp-container
This will connect to the standard input/output of the running container.
Press Ctrl+C
in the terminal where docker run
is executing. The --rm
flag ensures the container is removed automatically upon stopping.
The plugged.in MCP Proxy Server acts as a bridge between MCP clients and multiple underlying MCP servers:
sequenceDiagram
participant MCPClient as MCP Client (e.g. Claude Desktop)
participant PluggedinMCP as plugged.in MCP Proxy
participant PluggedinApp as plugged.in App
participant MCPServers as Underlying MCP Servers
MCPClient ->> PluggedinMCP: Request list tools/resources/prompts
PluggedinMCP ->> PluggedinApp: Get capabilities via API
PluggedinApp ->> PluggedinMCP: Return capabilities (prefixed)
MCPClient ->> PluggedinMCP: Call tool/read resource/get prompt
alt Standard capability
PluggedinMCP ->> PluggedinApp: Resolve capability to server
PluggedinApp ->> PluggedinMCP: Return server details
PluggedinMCP ->> MCPServers: Forward request to target server
MCPServers ->> PluggedinMCP: Return response
else Custom instruction
PluggedinMCP ->> PluggedinApp: Get custom instruction
PluggedinApp ->> PluggedinMCP: Return formatted messages
end
PluggedinMCP ->> MCPClient: Return response
alt Discovery tool
MCPClient ->> PluggedinMCP: Call pluggedin_discover_tools
PluggedinMCP ->> PluggedinApp: Trigger discovery action
PluggedinApp ->> MCPServers: Connect and discover capabilities
MCPServers ->> PluggedinApp: Return capabilities
PluggedinApp ->> PluggedinMCP: Confirm discovery complete
PluggedinMCP ->> MCPClient: Return discovery result
end
tools/list
: Fetches from /api/tools
(returns prefixed names)resources/list
: Fetches from /api/resources
resource-templates/list
: Fetches from /api/resource-templates
prompts/list
: Fetches from /api/prompts
and /api/custom-instructions
, merges resultstools/call
: Parses prefix from tool name, looks up server in internal mapresources/read
: Calls /api/resolve/resource?uri=...
to get server detailsprompts/get
: Checks for custom instruction prefix or calls /api/resolve/prompt?name=...
The plugged.in MCP Proxy Server is designed to work seamlessly with the plugged.in App, which provides:
Contributions are welcome! Please feel free to submit a Pull Request.
This project is licensed under the MIT License - see the LICENSE file for details.