Server facts
MCP Hub
Project
- Author
- ravitemer
- Repository
- github.com/ravitemer/mcp-hub
- License
- MIT
- Category
- MCP Gateways & Proxies
Tech
- Runtime / language
- node
- Transports
- stdio
- Remote available
- No
- Authentication
- Not specified
Activity
- GitHub stars
- 521
- Last commit
- Data as of
Tags
- Hot Reload
- Mcp Proxy
- Oauth
- Server Management
Overview
MCP Hub centralizes connections between MCP clients and multiple underlying servers. It offers a management surface through REST endpoints and a web interface, while a separate MCP endpoint exposes the capabilities of connected servers to clients. This lets a client use one connection instead of configuring every backend individually. Capabilities are namespaced to avoid collisions when different servers expose similarly named operations. The hub handles request routing, connection state, authentication, and updates when servers or their capabilities change. It supports tools, resources, resource templates, and prompts, along with the associated list-change notifications described in the README.
Managed servers can run locally through stdio or connect remotely through streamable HTTP and SSE. Authentication options include OAuth with PKCE and custom headers. Operators can start, stop, enable, or disable servers, monitor status, and use reconnection with backoff. Configuration can come from several files merged in order, including VS Code-compatible server definitions. Variable substitution supports environment values, workspace details, inputs, and command output. Development mode can restart a server when watched files change, while workspace tracking helps distinguish instances in different directories. Installation is through npm, followed by a launch command specifying a port and configuration path. Roots, sampling, and completion are explicitly unsupported, so the hub is not a complete implementation of every MCP capability.
Install & configure
Requirements
- npm
- Install mcp-hub globally
- A configuration file defining managed MCP servers
mcp-hub --port 3000 --config path/to/config.jsonInstall with npm install -g mcp-hub first. Replace the example config path. The sample endpoint uses port 37373, but this launch example selects 3000; connect clients to the chosen port.
Examples are translated from the published configuration. Supply your own credentials and verify requirements in the upstream README. Remote connectors are shown only where a supported configuration format is known.
Config file · macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
Use Settings → Developer → Edit Config when available. Do not assume a Linux configuration path; check the client documentation for your platform. Remote servers use the app’s connector flow when supported, not the local stdio file shown here. Merge this example with existing settings; do not overwrite unrelated servers.
No install command stated in the README — see repo. Check the client documentation for a supported connection method.
Read the Claude Desktop setup guideConfig file · Project: .cursor/mcp.json
User: ~/.cursor/mcp.json
The project path is relative to the workspace root. The tilde denotes your user home directory. Use Cursor’s MCP settings to confirm which configuration and scope your installed version is reading. Merge this example with existing settings; do not overwrite unrelated servers.
No install command stated in the README — see repo. Check the client documentation for a supported connection method.
Read the Cursor setup guideConfig file · Workspace: .vscode/mcp.json
For user scope, use the “MCP: Open User Configuration” command if available. Do not guess a user configuration path across operating systems, profiles, containers, or remote workspaces; check the client documentation. Merge this example with existing settings; do not overwrite unrelated servers.
No install command stated in the README — see repo. Check the client documentation for a supported connection method.
Read the VS Code setup guideConfig file · macOS/Linux: ~/.codeium/windsurf/mcp_config.json
Windows: %USERPROFILE%\.codeium\windsurf\mcp_config.json
Open the MCP configuration through Windsurf’s settings when possible to confirm the active file. Paths can differ in managed or future releases; check the client documentation if this location is not present. Merge this example with existing settings; do not overwrite unrelated servers.
No install command stated in the README — see repo. Check the client documentation for a supported connection method.
Read the Windsurf setup guideConfig file · Project scope: .mcp.json at the repository root
The project file uses mcpServers. For user scope, use claude mcp add --scope user rather than assuming .mcp.json in your home directory is the user configuration. Check the client documentation for managed settings and storage details. Merge this example with existing settings; do not overwrite unrelated servers.
No install command stated in the README — see repo. Check the client documentation for a supported connection method.
Read the Claude Code setup guideExamples are translated from the published configuration. Supply your own credentials and verify requirements in the upstream README. Remote connectors are shown only where a supported configuration format is known.
Tools
No individual tool names were confirmed in the source material. Check the repository for its current tool list.
Names, permissions, and defaults can change. Check the current upstream documentation before granting access.
Use cases
- Connect several MCP clients to a shared set of servers
- Manage local and remote server lifecycles centrally
- Reuse VS Code MCP configuration files
- Restart development servers when watched files change
Strengths
- Combines management APIs with one MCP client endpoint
- Supports local stdio and remote HTTP or SSE servers
- Namespacing reduces capability name collisions
- Includes OAuth PKCE and header authentication
Limitations
- Does not support roots, sampling, or completion
- Requires a port and server configuration to launch
Frequently asked questions
Independent listing, not an affiliation or security review. Grant the least access needed and verify the upstream instructions before running code.