Hub MCP Server
by ni-cio.github.ni-c/mcp-hubv0.11.6
Serve many stdio MCP servers from one container over HTTPS, with path-based routing, an aggregate endpoint using meta-tools, built-in OAuth 2.1 and hot reload.
context tax
queued
security
queued
cold start
queued
freshness
Active2d ago
Install Hub MCP server
Install in Claude Code
claude mcp add hub -- npx -y @ni-c/mcp-hub --stdioInstall in Cursor
{
"mcpServers": {
"hub": {
"command": "npx",
"args": [
"-y",
"@ni-c/mcp-hub",
"--stdio"
]
}
}
}Add to ~/.cursor/mcp.json (global) or .cursor/mcp.json (project).
Install in Claude Desktop
{
"mcpServers": {
"hub": {
"command": "npx",
"args": [
"-y",
"@ni-c/mcp-hub",
"--stdio"
]
}
}
}Settings → Developer → Edit Config (claude_desktop_config.json), then restart.
Install in VS Code
{
"servers": {
"hub": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@ni-c/mcp-hub",
"--stdio"
]
}
}
}Add to .vscode/mcp.json in your workspace.
Install in Windsurf
{
"mcpServers": {
"hub": {
"command": "npx",
"args": [
"-y",
"@ni-c/mcp-hub",
"--stdio"
]
}
}
}Add to ~/.codeium/windsurf/mcp_config.json.
Configuration
| Variable | Required | Secret | Description |
|---|---|---|---|
| CONFIG_PATH | — | — | Path to the mcp.json listing the servers to expose, in Claude Code's mcpServers format (default mcp.json in the working directory) |
| IDLE_TIMEOUT_MINUTES | — | — | Minutes of inactivity before a server is put to sleep; 0 starts every server at launch and keeps it running (default 60) |
| TOOL_CACHE_PATH | — | — | Tool snapshots of sleeping servers (default .mcp-hub/tool-cache.json beside the config) |
| LOG_FILE | — | — | Mirror the hub's log lines into this file; stdout carries the protocol, so logging goes to stderr otherwise |
| EXTERNAL_URL | yes | — | Public base URL exactly as clients see it, e.g. https://mcp.example.net (no path) |
| PASSWORD_HASH | yes | yes | bcrypt hash of the OAuth login password (htpasswd -bnBC 10 "" 'pw' | tr -d ':\n') |
| TRUSTED_PROXIES | — | — | Comma-separated IPs/CIDRs of the reverse proxy allowed to set X-Forwarded-* headers |
| CLIENT_REGISTRATION | — | — | Which mechanisms a client may use to obtain a client_id: cimd (Client ID Metadata Documents), dcr (RFC 7591 dynamic registration), or both |
| CIMD_ALLOWED_ORIGINS | — | — | Comma-separated https origins whose client ID metadata documents are accepted, e.g. https://chatgpt.com; unset admits every https origin |
| PORT | — | — | Listen port inside the container |
Freshness
Active — last maintenance signal 2d ago. The newest of the signals below sets the band.
Last commit (default branch)
2026-10-08 · 2d ago · GitHub
Latest release
2026-10-07 · 3d ago · GitHub · v0.11.6
Package published
no data · npm/PyPI
Registry entry updated
2026-10-07 · 3d ago · official registry · v0.11.6
FAQ
›How do I install the Hub MCP server in Claude Code?
Run: claude mcp add hub -- npx -y @ni-c/mcp-hub --stdio. For Cursor, VS Code, Claude Desktop and Windsurf, use the install tabs above.
›Does Hub require an API key?
Yes. It expects EXTERNAL_URL, PASSWORD_HASH, of which 1 is a secret.
›Can I use Hub as a remote (hosted) MCP server?
Yes — it offers both a hosted endpoint and a local stdio package.
›Is Hub in the official MCP registry?
Yes, as io.github.ni-c/mcp-hub.