MetaMCP MCP server

Centralizes management of multiple AI services, providing secure API key handling and unified access for streamlined interactions across diverse platforms.
Back to servers
Provider
James Zhang
Release date
Feb 21, 2025
Language
TypeScript
Package
Stats
3.9K downloads
95 stars

MetaMCP MCP Server is a proxy server that consolidates multiple Model Context Protocol (MCP) servers into a single interface. It retrieves tool, prompt, and resource configurations from the MetaMCP App and routes requests to the appropriate underlying MCP server, simplifying management across multiple AI integration points.

Installation

Installing via Smithery

npx -y @smithery/cli install @metatool-ai/mcp-server-metamcp --client claude

Note: Smithery installation may be unstable due to MetaMCP's unique role of running other MCPs. If you encounter issues, please use the manual installation method instead.

Manual Installation

You can run the server directly using npx:

export METAMCP_API_KEY=<your-api-key>
npx -y @metamcp/mcp-server-metamcp@latest

Alternatively, you can configure it in your MCP configuration file:

{
  "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)

The default transport method is stdio, which you can use with:

mcp-server-metamcp --metamcp-api-key <your-api-key>

Using as an SSE server

For Server-Sent Events (SSE) transport:

mcp-server-metamcp --metamcp-api-key <your-api-key> --transport sse --port 12006

With the SSE transport, the server launches an Express.js web server that listens for SSE connections on the /sse endpoint and accepts messages on the /messages endpoint.

Using with Docker

When running inside a Docker container and connecting to services on the host machine:

mcp-server-metamcp --metamcp-api-key <your-api-key> --transport sse --port 12006 --use-docker-host

This transforms any localhost or 127.0.0.1 URLs to host.docker.internal, allowing the container to properly connect to host services.

Command Line Options

Options:
  --metamcp-api-key <key>       API key for MetaMCP (can also be set via METAMCP_API_KEY env var)
  --metamcp-api-base-url <url>  Base URL for MetaMCP API (can also be set via METAMCP_API_BASE_URL env var)
  --report                      Fetch all MCPs, initialize clients, and report tools to MetaMCP API
  --transport <type>            Transport type to use (stdio or sse) (default: "stdio")
  --port <port>                 Port to use for SSE transport (default: "12006")
  --require-api-auth            Require API key in SSE URL path
  --use-docker-host             Transform localhost URLs to use host.docker.internal (can also be set via USE_DOCKER_HOST env var)
  -h, --help                    display help for command

Environment Variables

  • 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

Key Features

  • Compatible with any MCP Client
  • Multi-Workspace support for quick switching between MCP configuration sets
  • GUI dynamic updates of MCP configurations
  • Namespace isolation for joined MCPs

How to add this MCP server to Cursor

There are two ways to add an MCP server to Cursor. The most common way is to add the server globally in the ~/.cursor/mcp.json file so that it is available in all of your projects.

If you only need the server in a single project, you can add it to the project instead by creating or adding it to the .cursor/mcp.json file.

Adding an MCP server to Cursor globally

To add a global MCP server go to Cursor Settings > MCP and click "Add new global MCP server".

When you click that button the ~/.cursor/mcp.json file will be opened and you can add your server like this:

{
    "mcpServers": {
        "cursor-rules-mcp": {
            "command": "npx",
            "args": [
                "-y",
                "cursor-rules-mcp"
            ]
        }
    }
}

Adding an MCP server to a project

To add an MCP server to a project you can create a new .cursor/mcp.json file or add it to the existing one. This will look exactly the same as the global MCP server example above.

How to use the MCP server

Once the server is installed, you might need to head back to Settings > MCP and click the refresh button.

The Cursor agent will then be able to see the available tools the added MCP server has available and will call them when it needs to.

You can also explictly ask the agent to use the tool by mentioning the tool name and describing what the function does.

Want to 10x your AI skills?

Get a free account and learn to code + market your apps using AI (with or without vibes!).

Nah, maybe later