Repolode
tbxark

tbxark/mcp-proxy

An MCP proxy server that aggregates multiple MCP servers behind a single HTTP endpoint for clients such as Claude.

Stars
739
Forks
111
Open issues
25
Last commit
last month

What is it?

MCP Proxy Server sits between MCP clients and several downstream MCP servers, exposing their tools, prompts, and resources through one HTTP server. Clients connect once instead of configuring each MCP server separately.

Downstream servers can be launched as local stdio processes or reached over SSE or streamable HTTP, so a single configuration file can mix local and remote servers. Served endpoints use Server-Sent Events or streamable HTTP. For downstream servers that require interactive OAuth, such as Notion, the proxy can hold and refresh the token so every caller shares one authorization.

The project is written in Go and ships as a binary, a Go install target, and a Docker image that includes npx and uvx for launching npm and Python based servers. A remote configuration URL can be passed at startup.

Key features

  • 01Aggregates tools, prompts, and resources from multiple MCP servers.
  • 02Serves clients over Server-Sent Events or streamable HTTP.
  • 03Connects to downstream servers via stdio, SSE, or streamable HTTP.
  • 04Holds and refreshes OAuth tokens for downstream servers that require interactive login.
  • 05Available as a binary, a Go install, or a Docker image.

Use cases

  • Giving an MCP client like Claude one endpoint for several local and remote MCP servers.
  • Sharing a single OAuth authorization for a hosted MCP service across a team.
  • Running MCP servers launched via npx or uvx inside a container with one exposed port.

Quick start

  1. 1

    Clone the repository

    git clone https://github.com/tbxark/mcp-proxy.git
  2. 2

    Enter the project directory

    cd mcp-proxy
  3. 3

    Build the binary

    make build
  4. 4

    Run the proxy with your config file

    ./build/mcp-proxy --config path/to/config.json

Things to know

  • You must write a configuration file that lists the downstream MCP servers before the proxy does anything useful.

Topics

FAQ

What is mcp-proxy?
An MCP proxy server that aggregates multiple MCP servers behind a single HTTP endpoint for clients such as Claude. MCP Proxy Server sits between MCP clients and several downstream MCP servers, exposing their tools, prompts, and resources through one HTTP server. Clients connect once instead of configuring each MCP server separately.
Is mcp-proxy free to use? What license does it have?
mcp-proxy is open source under the MIT license. Check the license terms before using it in commercial products.
Is mcp-proxy still maintained?
Updated within 6 months. The last commit to mcp-proxy was on Sep 15, 2026.
What can I use mcp-proxy for?
Giving an MCP client like Claude one endpoint for several local and remote MCP servers. Sharing a single OAuth authorization for a hosted MCP service across a team. Running MCP servers launched via npx or uvx inside a container with one exposed port.
How do I install mcp-proxy?
Clone the repository: git clone https://github.com/tbxark/mcp-proxy.git Enter the project directory: cd mcp-proxy Build the binary: make build Run the proxy with your config file: ./build/mcp-proxy --config path/to/config.json
Where can I get mcp-proxy?
The source code and installation instructions are on GitHub: https://github.com/tbxark/mcp-proxy

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects