mcphub is a unified hub for managing multiple MCP servers via flexible SSE endpoints, with dockerized deployment and a CLI. It supports OAuth, authentication, and group/server routing.
Collecting history — the radar snapshots this repo daily. The trend line appears after 3 days of data (1 so far).
What it is
mcphub is described as a unified hub for centrally managing and dynamically orchestrating multiple MCP servers/APIs into separate endpoints with flexible routing strategies.
How it works
- Organizes MCP servers into groups and endpoints accessible via HTTP/SSE (all servers, a group, or a specific server).
- Provides a dashboard for centralized management and a CLI for terminal management.
- Supports smart routing using vector semantic search and an MCP Apps proxy for interactive apps.
- Includes options for hot-swappable configuration and optional per-session upstream client isolation.
Getting started
Quick Start / Configuration Create a mcp_settings.json file, for example:
{
"mcpServers": {
"time": {
"command": "npx",
"args": ["-y", "time-mcp"]
},
"fetch": {
"command": "uvx",
"args": ["mcp-server-fetch"]
}
}
}
Docker Deployment
# Run with custom config (recommended)
docker run -p 3000:3000 -v ./mcp_settings.json:/app/mcp_settings.json -v ./data:/app/data samanhappy/mcphub
# Or run with default settings (also mount ./data so credentials and state survive restarts)
docker run -p 3000:3000 -v ./data:/app/data samanhappy/mcphub
Two image variants:
- latest
- latest-full
Open the dashboard at http://localhost:3000 and login with admin (password printed to logs unless ADMIN_PASSWORD is set).
Connect AI Clients / Endpoints
http://localhost:3000/mcp
http://localhost:3000/mcp/{group}
http://localhost:3000/mcp/{server}
http://localhost:3000/mcp/$smart
http://localhost:3000/mcp/$smart/{group}
Terminal management (mcphub CLI)
mcphub login --url http://localhost:3000 --username admin
mcphub servers list
mcphub servers add fetch --type stdio --command uvx --arg mcp-server-fetch
mcphub tools list
mcphub call fetch_url url=https://example.com --json
mcphub keys create --name ci --access-type all
Note: Authentication is enabled by default for MCP endpoints; to allow unauthenticated access, disable Enable Bearer Authentication in the Keys section.
Recent releases
- v1.0.27 (2026-08-03): MCP Apps passthrough for multi-server groups, on-demand stdio server spawning, improved diagnostics by including upstream stderr in connectio
- v1.0.26 (2026-07-28): MCP Toplist rank badge, fixes stdio server handling without arguments, improved error reporting for invalid vector embedding writes
- v1.0.25 (2026-07-24): security hardening and stability improvements, including fix for command injection vulnerability in proxychains4, recovery of stale PostgreSQL connections
- v1.0.24 (2026-07-11): upstream OAuth disconnect support and per-session upstream client isolation, fix for preserving in-flight OAuth state on full page r
- v1.0.23 (2026-07-05): local development convenience with a default admin user and dynamic base URL configuration, fixes layout and i18n issues, improves documentation
Traction
- Stars: 2275, Forks: 278, Open issues: 33
Behind the repo
- No linked startup/company information provided in the facts.
Caveats
- License: Apache-2.0
- Created: 2025-03-31
- Last push: 2026-08-04
- Language: TypeScript
- Configuration relies on mcp_settings.json; details available in documentation






