A visual dashboard to create, run and monitor MCP proxies β stdio, SSE, streamable HTTP & OpenAPI.
Zero CLI friction. Live logs. Integrated Inspector. Auto-start flows.
- Visual Flow Builder β Manage your stdio, SSE, streamable HTTP & OpenAPI flows.
- Integrated MCP Inspector β Per-flow or global launch, auto-configured.
- Live event feed β Real-time logs with optional persistence.
- OpenAPI Bridge β Auto-spawns
@ivotoby/openapi-mcp-serverwhen required. - Auto-start system β Flows & Inspector can boot automatically with safe state handling.
- Clean UI, no framework β All vanilla JS with SSE realtime feedback.
- Analytics dashboard β Live spans ingest with transport-aware tagging (
mcp_sse,mcp_http,openapi), tool spans, upstream URL, HTTP method, session id, request/response bodies, and send timestamps for ordering.
npx -y github:lucasiscovici/MCP-Proxy-Studio startuvx --from git+https://github.com/lucasiscovici/MCP-Proxy-Studio@main mcps startnpx -y github:lucasiscovici/MCP-Proxy-Studio stopuvx --from git+https://github.com/lucasiscovici/MCP-Proxy-Studio@main mcps stop# Optional:
# npx -y github:lucasiscovici/MCP-Proxy-Studio status
# npx -y github:lucasiscovici/MCP-Proxy-Studio update
# Force replace container
npx -y github:lucasiscovici/MCP-Proxy-Studio start --force
npx -y github:lucasiscovici/MCP-Proxy-Studio update --force# Optional:
# uvx --from git+https://github.com/lucasiscovici/MCP-Proxy-Studio@main mcps status
# uvx --from git+https://github.com/lucasiscovici/MCP-Proxy-Studio@main mcps update
# Force replace container
uvx --from git+https://github.com/lucasiscovici/MCP-Proxy-Studio@main mcps start --force
uvx --from git+https://github.com/lucasiscovici/MCP-Proxy-Studio@main mcps update --forceOpen: http://localhost:8000
Your config is stored in mcp-dashboard-data volume.
| Component | Port |
|---|---|
| Dashboard UI | 8000 |
| Streamable HTTP | 8001 |
| SSE events | 8002 |
| OpenAPI target (mcpo) | 8003 (/<route>) |
| MCP Inspector UI | 6274 (server: 6277) |
- stdio β command/args/env
- sse β URL + headers
- streamable_http β URL + headers
- openapi β base URL + spec β spawns automatic helper
ssestreamable_httpopenapi
OpenAPI sources always target
streamable_http.
- Streamable target β
http://<host>:8001/<route>/mcp - SSE target β
http://<host>:8002/<route>/sse - OpenAPI target β
http://<host>:8003/<route>
- Create a flow
- Start/Stop (per-flow or global)
- Inspect β Opens MCP Inspector already configured
- Monitor β Live event stream with optional persistence
- Configure β Auto-start behaviors and settings
For OpenAPI sources:
- Runs automatically:
npx -y @ivotoby/openapi-mcp-server - Waits for readiness
- Exposes targets via
mcpoat port 8003 - Inspector opens automatically on
/docs
- FastAPI, Uvicorn, Pydantic
- asyncio, subprocess orchestration
- Vanilla JavaScript
- EventSource (SSE)
- Fetch API
- Docker / docker-compose
- npx, uvx
| Variable | Description |
|---|---|
MCP_PROXY_BIN |
default: mcp-proxy |
MCP_OPENAPI_BIN |
default: uvx mcpo |
MCP_INSPECTOR_BIN |
default: npx -y @modelcontextprotocol/inspector |
MCP_INSPECTOR_PORT / MCP_INSPECTOR_SERVER_PORT |
Inspector ports |
- Backend: FastAPI orchestrates child processes and persists configs in
mcp-dashboard-datavolume - Frontend: Vanilla JS with modals + SSE updates
- Auto-start guarded by container boot ID
git clone https://github.com/lucasiscovici/MCP-Proxy-Studio.git && cd MCP-Proxy-Studiomake devmake prod- OpenAPI β 404: check upstream MCP
- Stdio issues: ensure
npx,uvx, ordockerexist in PATH - Inspector unreachable: check ports
6274/6277
MIT





