Skip to main content
Glama

Unified MCP Server

A unified MCP server that mounts multiple MCP servers using a mcp.json configuration file, similar to Claude Desktop and Cursor.

Quick Start

  1. Configure servers in mcp.json:

{
  "mcpServers": {
    "playwright": {
      "command": "npx",
      "args": ["@playwright/mcp@latest"]
    },
    "context7": {
      "command": "npx",
      "args": ["@upstash/context7-mcp"]
    },
    "filesystem": {
      "command": "npx",
      "args": ["@modelcontextprotocol/server-filesystem", "/tmp"],
      "disabled": true
    }
  }
}
  1. Run with Docker:

docker-compose up --build
  1. Or run locally:

uv run main.py

Related MCP server: mcpd-proxy

Features

  • Single Endpoint: Access all MCP servers through http://localhost:8929/mcp

  • Tool Prefixing: All tools are prefixed with server name (e.g., playwright_navigate)

  • Dynamic Mounting: Add/remove servers by editing mcp.json and restarting

  • Built-in Management: Use list_servers and list_tools to inspect configuration

  • HTTP Streaming: Full MCP-over-HTTP support with streaming protocol

Configuration

mcp.json Format

{
  "mcpServers": {
    "server-name": {
      "command": "executable",
      "args": ["arg1", "arg2"],
      "env": {
        "ENV_VAR": "value"
      },
      "disabled": false
    }
  }
}
  • command: Executable to run

  • args: Command line arguments

  • env: Environment variables (merged with system env)

  • disabled: Set to true to disable the server

Available Official Servers

  • @playwright/mcp@latest - Web automation (22 tools)

  • @upstash/context7-mcp - Documentation queries (2 tools)

  • @modelcontextprotocol/server-filesystem - File operations

  • @modelcontextprotocol/server-brave-search - Web search

  • @modelcontextprotocol/server-sqlite - SQLite database

  • @modelcontextprotocol/server-github - GitHub integration

Tools

Built-in Tools

  • list_servers - Show all configured servers and their status

  • list_tools - Show all available tools from mounted servers

Mounted Server Tools

All tools from mounted servers are prefixed with the server name:

  • playwright_navigate - Navigate to a URL

  • playwright_click - Click on elements

  • context7_query-docs - Query documentation

  • context7_resolve-library-id - Resolve library IDs

Testing

Use the MCP Inspector to test your server:

npx @modelcontextprotocol/inspector \
  --transport http \
  --url http://localhost:8929/mcp

Environment Variables

  • HOST - Server host (default: localhost)

  • PORT - Server port (default: 8929)

  • DEBUG - Enable debug logging (default: false)

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    C
    maintenance
    A proxy MCP server that aggregates tools from multiple MCP servers and forwards calls to the appropriate server, used with the Metatool App for GUI tool management.
    5
    Apache 2.0
  • A
    license
    Not graded
    quality
    A
    maintenance
    An MCP server that acts as a proxy between IDEs and the mcpd daemon, exposing all mcpd-managed MCP servers through a unified interface.
    37 npm
    20
    Apache 2.0
  • A
    license
    Not graded
    quality
    C
    maintenance
    A universal MCP server that acts as a unified gateway for dynamically connecting and managing multiple MCP servers via a single HTTP endpoint.
    7 npm
    6
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    An MCP server that proxies multiple MCP servers, allowing you to configure and access multiple MCP servers through a single endpoint with namespace support.
    4
    MIT