MetaMCP MCP Server
About
A proxy server that combines multiple MCP servers into a single endpoint, routing requests to the appropriate underlying server.
Details
- License
- Apache-2.0
Explore
- Compatible with any MCP client.
- Multi-workspaces layer for one-click MCP config switching.
- GUI dynamic updates of MCP configurations.
- Namespace isolation for joined MCP servers.
- Supports stdio, SSE, and Streamable HTTP transports.
Setting up with Highlight
This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:
- Download and install Highlight from highlightai.com/download
- Navigate to the plugins tab and select "Add Custom Plugin"
-
Configure the plugin with the settings below
Plugin Name
MetaMCP MCP ServerCommand (node, npx, python, etc.)Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.
- Enable "Start Automatically" if you want the plugin to start when Highlight launches
From the repository
Sometimes Smithery works (confirmed in Windsurf locally) but sometimes it is unstable because MetaMCP is special that it runs other MCPs on top of it. Please consider using manual installation if it doesn't work instead.
To install MetaMCP MCP Server for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @metatool-ai/mcp-server-metamcp --client claude
export METAMCP_API_KEY=<env>
npx -y @metamcp/mcp-server-metamcp@latest
{
"mcpServers": {
"MetaMCP": {
"command": "npx",
"args": ["-y", "@metamcp/mcp-server-metamcp@latest"],
"env": {
"METAMCP_API_KEY": "<your api key>"
}
}
}
}
For STDIO transport, you can control how stderr is handled from child MCP processes:
METAMCP_STDERR=inherit mcp-server-metamcp --metamcp-api-key <your-api-key>
Available stderr options:
- ignore (default): Ignore stderr output from child processes
- inherit: Pass through stderr from child processes to the parent
- pipe: Capture stderr in a pipe for processing
- overlapped: Use overlapped I/O (Windows-specific)
- METAMCP_API_KEY: API key for MetaMCP
- METAMCP_API_BASE_URL: Base URL for MetaMCP API
- USE_DOCKER_HOST: When set to "true", transforms localhost URLs to host.docker.internal for Docker compatibility
- METAMCP_STDERR: Stderr handling for STDIO transport (overlapped, pipe, ignore, inherit). Defaults to "ignore"
npm install
Claude Desktop / Cursor
Paste into your MCP client config file to install this server.
{
"mcpServers": {
"metamcp mcp server": {
"mcp-server-metamcp": {
"command": "npx",
"args": [
"-y",
"@smithery/cli",
"install",
"@metatool-ai/mcp-server-metamcp",
"--client",
"claude"
]
}
}
}
}
McpServers
{
"mcp-server-metamcp": {
"command": "npx",
"args": [
"-y",
"@smithery/cli",
"install",
"@metatool-ai/mcp-server-metamcp",
"--client",
"claude"
]
}
}
> 🚨 DEPRECATED PACKAGE WARNING 🚨
>
> This local proxy package is deprecated in MetaMCP's 2.0 all-in-one architecture.
>
> Please checkout https://github.com/metatool-ai/metamcp for more details.
MetaMCP MCP Server is a proxy server that joins multiple MCP servers into one. It fetches tool/prompt/resource configurations from MetaMCP App and routes tool/prompt/resource requests to the correct underlying server.
<a href="https://glama.ai/mcp/servers/0po36lc7i6">
</a>
MetaMCP App repo: https://github.com/metatool-ai/metatool-app
Installation
Installing via Smithery
Sometimes Smithery works (confirmed in Windsurf locally) but sometimes it is unstable because MetaMCP is special that it runs other MCPs on top of it. Please consider using manual installation if it doesn't work instead.
To install MetaMCP MCP Server for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @metatool-ai/mcp-server-metamcp --client claude
Manual Installation
export METAMCP_API_KEY=<env>
npx -y @metamcp/mcp-server-metamcp@latest
{
"mcpServers": {
"MetaMCP": {
"command": "npx",
"args": ["-y", "@metamcp/mcp-server-metamcp@latest"],
"env": {
"METAMCP_API_KEY": "<your api key>"
}
}
}
}
Usage
Using as a stdio server (default)
mcp-server-metamcp --metamcp-api-key <your-api-key>
Using as an SSE server
mcp-server-metamcp --metamcp-api-key <your-api-key> --transport sse --port 12006
With the SSE transport option, the server will start an Express.js web server that listens for SSE connections on the /sse endpoint and accepts messages on the /messages endpoint.
Using as a Streamable HTTP server
mcp-server-metamcp --metamcp-api-key <your-api-key> --transport streamable-http --port 12006
With the Streamable HTTP transport option, the server will start an Express.js web server that handles HTTP requests. You can optionally use --stateless mode for stateless operation.
Using with Docker
When running the server inside a Docker container and connecting to services on the host machine, use the --use-docker-host option to automatically transform localhost URLs:
mcp-server-metamcp --metamcp-api-key <your-api-key> --transport sse --port 12006 --use-docker-host
This will transform any localhost or 127.0.0.1 URLs to host.docker.internal, allowing the container to properly connect to services running on the host.
Configuring stderr handling
For STDIO transport, you can control how stderr is handled from child MCP processes:
```bash
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.



