MCPHubBETA
FEATURES

Run MCP
with auth, logs, and routing.

MCPHub started as a small config tool. Teams now use it to run MCP servers with auth, routing, logs, and shared access.

01 · Operations

Centralized management

Monitor health, latency, and tool usage for each MCP server. Start, stop, hot-reload, and manage server authentication and OAuth connections from the dashboard.

  • Real-time health checks per server
  • Hot-reload without restarting clients
  • Tool-call activity logs with user, API key, status, latency, and source IP
Operations docs
Servers · health overview
● all healthy
G
github
v2025.05.17
120ms● healthy
P
postgres
v2025.05.16
137ms● healthy
P
playwright
v2025.05.15
154ms● healthy
S
slack
v2025.05.14
171ms● healthy
B
brave-search
v2025.05.13
188ms● healthy
02 · Routing

Four routing modes, one config

Different teams need different views into your MCP fleet. MCPHub exposes the same servers through four URL patterns so you can mix aggregate, scoped, and direct access without re-deploying.

  • /mcp: aggregate, all tools
  • /mcp/{group}: scoped to a named group
  • /mcp/{server}: single server passthrough
  • /mcp/$smart: semantic tool discovery
Routing docs
/mcpaggregate247 tools
/mcp/{group}groupscoped
/mcp/{server}single1 server
/mcp/$smartsemantictop-k
03 · Smart Routing

Semantic tool discovery

A client with 200+ tools wastes context. Smart Routing indexes tool descriptions in a vector store and returns a small set per request.

  • pgvector + OpenAI / Azure OpenAI embeddings
  • OpenAI-compatible endpoints supported
  • Per-request top-k tuning
  • Falls back to keyword search if vector store down
  • Works with every MCP-aware client
Smart Routing guide
“Find the last 5 issues mentioning database timeouts and create a tracking doc.”
SEMANTIC MATCH
github.search_issues0.94
linear.list_issues0.87
notion.create_page0.83
sentry.list_errors0.61
04 · Security

OAuth 2.0 for clients and servers

Secure MCP access with OAuth, OIDC, user-level keys, and bearer keys scoped to specific groups or servers.

  • GitHub, Google, and generic OIDC login
  • OAuth for downstream clients and upstream servers
  • User-level and scoped bearer keys
  • Tool-call activity logs with authentication context
OAuth setup
REQUEST · AUTHORIZATION
POST /mcp/{group}
Authorization: Bearer mcphub-sk-***
X-User-Id:    u_8f3a
X-Scope:      tools.read,tools.write

→ 200 OK · 12 tools available
→ audit: u_8f3a → github.search_issues
→ audit: u_8f3a → linear.list_issues
GitHubGoogleOktaAuth0Generic OIDC
05 · Shared Access

Groups & per-user visibility

Share MCP servers with selected users and expose tailored toolsets through group endpoints. Each group can select which servers, tools, prompts, and resources are exposed.

  • Private, public, and shared server visibility
  • Per-user ownership and access
  • Group endpoints with selected tools, prompts, and resources
  • User-level and scoped bearer keys
Shared access docs
platform-eng
14 users
githubpostgressentrylinear
data-team
8 users
postgressqlitesnowflake
support
22 users
slacknotionlinear
06 · Database mode

PostgreSQL-backed storage

Swap the embedded JSON store for PostgreSQL when you need durable, centralized persistence for production deployments.

  • PostgreSQL-backed configuration and runtime metadata
  • Durable persistence for users, servers, groups, OAuth, and activity data
  • Compatible with managed PostgreSQL services
  • Suitable foundation for production deployments
Database mode
services:
  mcphub:
    image: samanhappy/mcphub
    environment:
      DATABASE_URL: postgres://...
      AUTH_SECRET:  ${AUTH_SECRET}
    depends_on: [postgres]

  postgres:
    image: postgres:16
    volumes: [pgdata:/var/lib/postgresql/data]
NeonSupabaseAWS RDSCrunchySelf-hosted

Put your MCP servers behind one endpoint.

Start with Docker. Connect Claude Desktop in five minutes.