MCP Proxy
About
A bidirectional MCP proxy connecting stdio and Server-Sent Events (SSE) with OAuth support.
Details
- Author
- stephenlacy
- Categories
- Developer Tools, API
Jump to
Setup
Install MCP Proxy in your MCP client (Claude Desktop, Cursor, Windsurf, and others).
Repository: https://github.com/stephenlacy/mcp-proxy
Follow the installation instructions in the repository README, then restart your MCP client.
A Rust bidirectional MCP proxy supporting SSE and Streamable HTTP transports with OAuth.
- Multiple transports: SSE and Streamable HTTP
- OAuth authentication: Full OAuth flow with automatic token refresh
- Bidirectional proxy: Connect remote servers to local clients or expose local servers remotely
- Fast and lightweight: Built in rust for performance
# from crates.io cargo install rmcp-proxy # from github cargo install --git https://github.com/stephenlacy/mcp-proxy
Connect to a remote MCP server and expose it as a local stdio server. Supports both SSE and Streamable HTTP transports with automatic detection.
- URLs containing/sse→ Uses SSE transport
- All other URLs → Uses Streamable HTTP transport
- Override with--transportflag
# Streamable HTTP mcp-proxy http://localhost:9090/mcp/instances_abc123 # SSE transport mcp-proxy http://localhost:8080/sse mcp-proxy --transport sse http://localhost:8080/events # Specific mcp-proxy --transport streamable-http http://localhost:9090/api
{ "mcpServers": { "my-remote-server": { "command": "mcp-proxy", "args": ["http://example.com/mcp/instances_abc123"] }, "sse-server": { "command": "mcp-proxy", "args": ["--transport", "sse", "http://example.com/sse"] } } }
Connect to a local MCP server via stdio and expose it as a remote server. Supports both SSE and Streamable HTTP endpoints.
# Expose as SSE server mcp-proxy --port 8080 -- your-command --arg1 value1 --arg2 value2 mcp-proxy --port 8080 python mcp_server.py mcp-proxy --port 8080 -- npx -y @modelcontextprotocol/server-everything # Or http+streamable mcp-proxy --port 9090 --transport streamable-http -- python mcp_server.py mcp-proxy --port 8080 -e KEY VALUE -e ANOTHER_KEY ANOTHER_VALUE -- your-command
If you encounter authentication issues, clear the auth cache:
# Clear all auth data mcp-proxy reset # Or manually delete the directory rm -rf ~/.mcp-auth
# Transport selection --transport <TRANSPORT> # sse, streamable-http, or auto (default: auto) # Server mode options --port <PORT> # Port for local server mode (default: random) --host <HOST> # Host to bind to (default: 127.0.0.1) # Environment variables (server mode) -e, --env <KEY> <VALUE> # Set environment variable --pass-environment # Pass through all environment variables # Headers (client mode) -H, --headers <KEY> <VALUE> # Add custom headers # Reset auth mcp-proxy reset # Clear all stored auth data
The upstream rmcp crate dumps noisy logs unfortunately
Control log verbosity with theRUST_LOGenvironment variable:
# Minimal logging RUST_LOG=error mcp-proxy http://example.com/mcp RUST_LOG=debug mcp-proxy http://example.com/mcp RUST_LOG=info mcp-proxy http://example.com/mcp
use rmcp_proxy::{ sse_client::run_sse_client, streamable_http_client::run_streamable_http_client, StreamableHttpClientConfig, SseClientConfig }; // Streamable HTTP client let config = StreamableHttpClientConfig { url: "http://example.com/mcp/instances_abc123".to_string(), headers: HashMap::new(), }; run_streamable_http_client(config).await?; // SSE client let config = SseClientConfig { url: "http://example.com/sse".to_string(), headers: HashMap::new(), }; run_sse_client(config).await?;
This is a web browser that enables your coding agent, such as Claude Code, to visit websites on your behalf and assist you in identifying bugs or creating UI test cases.
One shared context layer for AI agents and humans — live API specs, DB schemas, and versioned contracts across repos so every agent and teammate works from the same source of truth.
The MCP server for Bitrix24 provides AI assistants with structured access to the Bitrix24 API. It delivers up-to-date method descriptions, parameters, and valid values, allowing assistants to work with precise data instead of guesswork. This reduces code errors and accelerates Bitrix24 integration development.
Tool platform by IBM to build, test and deploy tools for any data source
One remote MCP server for 500+ production APIs — Stripe, HubSpot, Postgres, Gmail, and more. OAuth and API key auth, credential management, and a CLI.
An MCP server for interacting with the Postman API, requiring an API key.
Arbitrary code execution and tool-use platform for LLMs by Riza
A command-line tool for interacting with Shopify's Admin GraphQL API, Functions, and Polaris Web Components.
Single tool to control all 100+ API integrations, and UI components
Agent-native developer Q&A API with MCP + A2A endpoints for citations, job pickup, and answer submission.
An MCP server for ABP.IO that enables AI models to interact with your ABP applications and framework.
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.





