mcp-server-proxy
v1.0.1
Published
A tool that proxies MCP servers or merges multiple MCP servers into a single MCP server
Maintainers
Readme
mcp-server-proxy
A Node.js library for proxying and merging Model Context Protocol (MCP) servers.
Installation
npm install mcp-server-proxyFeatures
- Proxy MCP server requests to another MCP server
- Merge multiple MCP servers into a single endpoint
- Automatically register tools, resources, and prompts from source servers
Usage
Basic Example
import { proxyMcp } from 'mcp-server-proxy';
import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
import { SSEClientTransport } from "@modelcontextprotocol/sdk/client/sse.js";
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
async function main() {
// Create a new MCP server
const server = new McpServer({
name: "mcp-proxy-server",
version: "1.0.0",
})
// Add mcp sse url to proxy
const sseClientTransport = new SSEClientTransport(new URL("http://your-mcp-sse-url/sse"))
await proxyMcp(server, sseClientTransport)
// Add stdio mcp server to proxy
const stdioClientTransport = new StdioClientTransport({
command:"node",
args: ["dist/example.js"],
})
await proxyMcp(server, stdioClientTransport)
// Add streamable http mcp server to proxy
const streamableHTTPClientTransport = new StreamableHTTPClientTransport(new URL("http://your-mcp-http-url"))
await proxyMcp(server, streamableHTTPClientTransport)
// Start the proxy server example as a stdio transport
const stdioServerTransport = new StdioServerTransport()
server.connect(stdioServerTransport)
console.error("MCP Proxy Server running on stdio");
}
main().catch(console.error);API Reference
proxyMcp(mcpServer, proxyTransport, proxyOptions?)
Registers all tools, resources, and prompts from a source MCP server to your target MCP server.
- mcpServer: The target MCP server instance
- proxyTransport: ClientTransport to connect to the source MCP server
- proxyOptions: Optional request options for the connection
Returns: Promise resolving to the updated MCP server
License
MIT
