π¦
Helper
MCP Helper (aggregating and routing to mcp servers) proof of concept
0 installs
2 stars
3 forks
Trust: 41 β Fair
Maps
Installation
npx mcp-helperAsk AI about Helper
Powered by Claude Β· Grounded in docs
I know everything about Helper. Ask me about installation, configuration, usage, or troubleshooting.
0/500
Loading tools...
Reviews
Documentation
MCP Helper PoC
MCP Helper with Go Envoy external processor.
Run
docker-compose up --build
A streamable HTTP MCP server will now be available at: http://localhost:8080/
Test with MCP Inspector
# Start the inspector
DANGEROUSLY_OMIT_AUTH=true npx @modelcontextprotocol/inspector
- Open http://localhost:6274/?transport=streamable-http&serverUrl=http://localhost:8080#resources
- Click Connect
- Click List Tools
You'll see federated tools from both backend MCP servers (server1 and server2), automatically prefixed to avoid conflicts:

Architecture Overview
Key Components:
- MCP Initialize/Tool List:
main.go-handleInitialization()creates backend sessions,aggregateTools()fetches and prefixes tools from servers - External Processor:
ext-proc/directory handles request/response processing:request.go-extractMCPToolName()pulls tool name from JSON body,stripServerPrefix()removes prefixes, setsx-mcp-serverrouting header, maps session IDsresponse.go-extractHelperSessionFromBackend()reverse-maps backend session IDs to helper sessions
- Routing Rules:
envoy.yaml- routes based onx-mcp-serverheader (server1/server2β backend clusters, default β helper)
Flow: Client β Envoy β Ext-Proc (extracts tool, strips prefix, sets routing headers) β Routes to backend or helper β Response (session reverse mapping) β Client
