mcpField
M
MCP Simple Gateway

MCP Simple Gateway

Local
github.com/denwakeupDeveloper Tools1Updated 77w ago

About MCP Simple Gateway

MCP Simple Gateway is a proxy for consolidating and managing multiple MCP servers through one interface. It is intended for deployments that need token authentication and configurable transport support.

Key features

  1. 01Aggregate multiple MCP servers
  2. 02Token-based authentication
  3. 03JSON configuration
  4. 04Docker support
  5. 05SSE, stdio, and StreamableHTTP support

Use cases

  1. 01Expose several MCP servers through one address
  2. 02Require tokens when accessing proxied servers
  3. 03Configure servers and proxy options in JSON

MCP support

Acts as an MCP proxy, aggregating configured servers and supporting SSE, stdio, and StreamableHTTP connections. It can apply authentication tokens globally or per server.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

mcp.json · Universal config
{
"mcpServers": {
"simple-gateway": {
"command": "npx",
"args": [
"-y",
"mcp-simple-gateway"
]
}
}
}
Run commandnpx -y mcp-simple-gateway

Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.

Packages
npmmcp-simple-gateway

Tools

No tool list yet

Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.

Details

From the project README

npm

MCP Simple Gateway

MCP Simple Gateway is a proxy server for Model Context Protocol (MCP) that allows you to aggregate and manage multiple MCP servers through a single interface.

Key Features

  • 🚀 Aggregation of multiple MCP servers
  • 🔒 Token-based authentication support
  • 📝 Flexible JSON-based configuration
  • 🐳 Docker support
  • 🔌 SSE, stdio and StreamableHTTP MCP supported

Usage

Running via CLI
npx mcp-simple-gateway --config config.json
Running via Docker Compose

Example docker-compose.yml:

services:
  mcp-gateway:
    platform: linux/amd64 # For Apple Silicon Users
    image: ghcr.io/denwakeup/mcp-simple-gateway:latest
    volumes:
      - ./config.json:/app/config.json
    ports:
      - '3000:3000'
    environment:
      - CONFIG_PATH=/app/config.json

Configuration

Example configuration file (config.json):

{
  "proxyServer": {
    "logLevel": "debug",
    "logPretty": true,
    "authTokens": ["your-auth-token"],
    "cors": {
      "origin": true
    }
  },
  "mcpServers": {
    "time": {
      "command": "uvx",
      "args": ["mcp-server-time", "--local-timezone=Europe/Moscow"],
      "proxyOptions": {
        "authTokens": ["server-specific-token"]
      }
    },
    "filesystem": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-filesystem", "/app/files"]
    },
    "echo": {
      "type": "streamableHttp",
      "url": "http://localhost:8080/mcp"
    }
  }
}
Configuration Parameters
  • proxyServer.options:

    • logLevel: Logging level (debug, info, warn, error)
    • logPretty: Log formatting
    • authTokens: Array of authentication tokens (used as default for all servers)
    • cors: CORS configuration options (optional)
  • mcpServers: MCP servers configuration

    • [serverName]:
      • command: Command to start the server (for stdio servers)
      • args: Command arguments (for stdio servers)
      • url: URL of the server (for SSE and StreamableHTTP servers)
      • type: Server type (optional for stdio and SSE, required for StreamableHTTP)
      • proxyOptions: Proxy options for a specific server
        • authTokens: Array of authentication tokens (overrides proxyServer.options.authTokens for the specific server)

Based on the configuration above, the URLs for accessing MCP servers will be as follows:

http://localhost:3000/time/sse
http://localhost:3000/filesystem/sse
http://localhost:3000/echo/sse
  • localhost:3000 - proxy server address and port (default)
  • /time/sse, /filesystem/sse, and /echo/sse - paths to corresponding MCP servers that match the keys in the mcpServers configuration

Roadmap

  • CORS support
  • Streamable HTTP support

License

MIT

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.