Supergateway runs a MCP stdio-based servers over SSE (Server-Sent Events) with one command. This is useful for remote access, debugging, or connecting to SSE-based clients when your MCP server only speaks stdio.
Supported by superinterface.ai, supermachine.ai and supercorp.ai.
Run Supergateway via npx:
npx -y supergateway --stdio "uvx mcp-server-git"- --port 8000: Port to listen on (default:- 8000)
- --stdio "command": Command that runs an MCP server over stdio
- --baseUrl "http://localhost:8000": Base URL for SSE clients (stdio to SSE mode; optional)
- --ssePath "/sse": Path for SSE subscriptions (stdio to SSE mode; default:- /sse)
- --messagePath "/message": Path for SSE messages (stdio to SSE mode; default:- /message)
- --sse "https://mcp-server-ab71a6b2-cd55-49d0-adba-562bc85956e3.supermachine.app": SSE URL to connect to
- --logLevel info | none: Controls logging level (default:- info). Use- noneto suppress all logs.
- --cors: Enable CORS
- --healthEndpoint /healthz: Register one or more endpoints (can be used multiple times) that respond with- "ok"
Once started on SSE:
- SSE endpoint: GET http://localhost:8000/sse
- POST messages: POST http://localhost:8000/message
Supergateway also supports running in SSE to Stdio mode. Instead of providing a --stdio command, specify the --sse flag with an SSE URL. In this mode, Supergateway connects to the remote SSE server and exposes a local stdio interface for downstream clients.
Example:
npx -y supergateway --sse "https://mcp-server-ab71a6b2-cd55-49d0-adba-562bc85956e3.supermachine.app"- Run Supergateway:
npx -y supergateway --port 8000 \ --stdio "npx -y @modelcontextprotocol/server-filesystem /Users/MyName/Desktop"
- Use MCP Inspector:
You can then read resources, list tools, or run other MCP actions through Supergateway.npx @modelcontextprotocol/inspector --uri http://localhost:8000/sse 
You can use ngrok to share your local MCP server with remote clients:
npx -y supergateway --port 8000 \
    --stdio "npx -y @modelcontextprotocol/server-filesystem ."
# In another terminal:
ngrok http 8000ngrok then provides a public URL.
A Docker-based workflow avoids local Node.js setup. A ready-to-run Docker image is available here: supercorp/supergateway.
docker run -it --rm -p 8000:8000 supercorp/supergateway \
    --stdio "npx -y @modelcontextprotocol/server-filesystem /" \
    --port 8000Docker will pull the image automatically if you don’t have it locally. The MCP server works on the container’s root directory (/), though you can mount a host directory if desired.
Use the provided Dockerfile if you’d rather build it on your own:
docker build -t supergateway .
docker run -it --rm -p 8000:8000 supergateway \
    --stdio "npx -y @modelcontextprotocol/server-filesystem /" \
    --port 8000Claude Desktop can connect to Supergateway’s SSE endpoint when Supergateway is running in SSE → Stdio mode.
{
  "mcpServers": {
    "supermachineExampleNpx": {
      "command": "npx",
      "args": [
        "-y",
        "supergateway",
        "--sse",
        "https://mcp-server-ab71a6b2-cd55-49d0-adba-562bc85956e3.supermachine.app"
      ]
    }
  }
}{
  "mcpServers": {
    "supermachineExampleDocker": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "supercorp/supergateway",
        "--sse",
        "https://mcp-server-ab71a6b2-cd55-49d0-adba-562bc85956e3.supermachine.app"
      ]
    }
  }
}Model Context Protocol standardizes how AI tools exchange data. If your MCP server only speaks stdio, Supergateway exposes an SSE-based interface so remote clients (and tools like MCP Inspector or Claude Desktop) can connect without extra server changes.
Supergateway is designed with modularity in mind:
- It automatically derives the JSON‑RPC version from incoming requests, ensuring future compatibility.
- Package information (name and version) is retransmitted where possible.
- Stdio-to-SSE mode uses standard logs and SSE-to-Stdio mode logs via stderr (as otherwise it would prevent stdio functionality).
Issues and PRs are welcome. Please open one if you have ideas or encounter any problems.
