Hatago MCP Hub logo

Hatago MCP Hub

Route multiple local and remote MCP servers through one hub for Claude Code, Codex CLI, Cursor, Windsurf, and VS Code.

Install Hatago MCP Hub

Pick your client, then add it in one click or paste the config.

STDIONode.js
~/Library/Application Support/Claude/claude_desktop_config.json
claude_desktop_config.json
{
  "mcpServers": {
    "hatago-mcp-hub": {
      "command": "npx",
      "args": [
        "-y",
        "@himorishige/hatago-mcp-hub"
      ]
    }
  }
}

Settings → Developer → Edit Config, merge this into mcpServers, then fully quit and reopen Claude Desktop.

We couldn’t confirm it starts correctly

The install command installed and started the server, which then stopped for configuration (such as an API key) that our sandbox does not have — expected for servers that connect to your account.

npx -y @himorishige/hatago-mcp-hub

No response to initialize.

This is an experimental automated check and can have false negatives — missing environment variables, a slow cold install, etc. It doesn’t necessarily mean something’s wrong. Last checked 8d ago.

Overview

The hatago-mcp-hub MCP server combines multiple local and remote MCP servers behind one connection for AI development tools. It launches child servers over STDIO, connects to HTTP or SSE endpoints, and exposes their tools, resources, and prompts through the hub. Use it when you want one client configuration, tag-based server selection, or a shared relay for npm-based and remote MCP servers. STDIO requires a configuration file, while HTTP mode can start without one for development or demonstration.

Use cases

  • Centralize several local MCP servers behind one client connection
  • Proxy remote HTTP or SSE MCP servers
  • Filter development and production servers with tags
  • Share base MCP configuration across environments

Key features

  • STDIO, HTTP, and SSE transport support
  • Local npm server management
  • Remote MCP proxying
  • Tag-based server filtering
  • Configuration inheritance
  • Progress and tool-list notification forwarding

Security & health

What it can reach and how reliably it runs — from our own checks, not the maintainer’s claims.

ActiveLast checked Today

Recent health check succeeded.

9/9 checks healthy over the last 46d

Supply-chain signal

No high-severity advisories surfaced by our automated scan.

Critical 0High 0Medium 0Low 0

Scanned 4d ago via OSV.dev · @himorishige/hatago-mcp-hub (npm)

Adoption & maintenance

Factual signals from GitHub, npm, and our automated checks — not a rating.

GitHub stars27Stargazers on the source repository.
npm downloads265Package downloads in the last 30 days.
Last commit1y agoMost recent push to the default branch.
Install checkRunsOur sandbox started it; it then asked for an API key or config.
Directory activity1 viewsConfig copies, upvotes, and views on AllMCPs.

How Hatago MCP Hub works

What hatago-mcp-hub MCP server does

The hatago-mcp-hub MCP server provides a single MCP entry point for multiple backend servers. It can manage locally launched MCP processes, including npm package servers started with commands such as npx, and proxy remote servers available through HTTP or SSE. Client applications connect to the hub instead of configuring every backend separately.

Connected servers can contribute tools, resources, and prompts. The hub also provides the internal hatago://servers resource, which returns a JSON snapshot containing connected server identifiers, status, transport type, and discovered capabilities.

This arrangement fits development setups that use different MCP servers for files, repositories, databases, or remote services and want to select them from one configuration.

How it works

A JSON configuration defines entries under mcpServers. Each entry can specify a local command and arguments, or a remote URL with an HTTP or SSE transport type. The hub starts or connects to those entries and relays MCP traffic to the client.

The hatago-mcp-hub MCP server supports STDIO, HTTP, and SSE connectivity. In STDIO mode, a client launches the hub as a subprocess. In HTTP mode, the hub listens for MCP connections; the documented endpoint is /mcp, and the default example uses port 3535. Remote HTTP-based MCP servers can be configured as proxied backends.

Server selection can use tags, allowing one configuration to serve different groups such as development, testing, or production. Configuration inheritance through an extends field lets separate files share a base definition. Environment values support ${VAR} and ${VAR:-default} expansion.

Setup and configuration

Run npx @himorishige/hatago-mcp-hub init to create an initial configuration, or install the package globally with npm and use the hatago command. A project dependency can also expose hatago serve through an npm script.

For STDIO, start the hub with an explicit file path:

Terminal
npx @himorishige/hatago-mcp-hub serve --stdio --config ./hatago.config.json

HTTP mode can start without a configuration file:

Terminal
npx @himorishige/hatago-mcp-hub serve --http

Client configuration examples are provided for Claude Code, Gemini CLI, and Codex CLI. The hub can also be tested with MCP Inspector at http://localhost:3535/mcp when running on the documented port.

Tools and capabilities

The hatago-mcp-hub MCP server includes these supported capabilities:

  • Manage local command-based MCP servers.
  • Proxy remote MCP servers over HTTP and SSE.
  • Forward child-server progress notifications for long-running operations.
  • Forward tool-list change notifications through notifications/tools/list_changed.
  • Filter configured servers by one or more tags.
  • Combine base and environment-specific configuration files.
  • Validate configuration using type-safe Zod schemas.
  • Expose optional in-memory metrics at /metrics when HATAGO_METRICS=1.
  • Emit JSON logs with HATAGO_LOG=json, with verbosity controlled by HATAGO_LOG_LEVEL.

The package also exposes a thin IHub interface for external packages and tests, including lifecycle methods and a tool:called event.

Limitations and notes

Changes to the configuration require restarting the server. Process managers such as PM2 or nodemon can be used externally if automatic restarts are needed. Although the hub forwards tool-list change notifications, that behavior does not remove the documented restart requirement for configuration changes.

STDIO mode requires a configuration path. HTTP mode without a configuration is intended for demonstration or development rather than as a substitute for defining backend servers. Metrics are disabled unless explicitly enabled, and the available metrics are described as lightweight, in-memory metrics.

Reviews

No reviews yet — be the first to share how it worked for you.

Frequently Asked Questions about Hatago MCP Hub

hatago-mcp-hub is an MCP server that connects AI clients to multiple local and remote MCP servers through one hub. It manages command-based and npm servers over STDIO, proxies HTTP and SSE servers, and exposes connected servers’ tools, resources, and prompts through a unified MCP connection.

Install it with npm, use it through npx, or add it as a project dependency. Run `npx @himorishige/hatago-mcp-hub init` to create configuration, then start it with `serve --stdio --config <path>` or `serve --http`.

Yes, hatago-mcp-hub is described as working with Cursor. It provides a unified MCP connection for Cursor and can relay configured local STDIO servers or remote HTTP and SSE servers.

Configure a server entry with its URL and set `type` to `http` or `sse`. The hub can then connect to HTTP-based remote MCP servers and expose them through its own MCP endpoint.

Related MCP servers

Add a badge to your READMEShow it’s listed — live SVG, Markdown or HTML.

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewHatago MCP Hub AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/hatago-mcp-hub?style=directory)](https://allmcps.com/mcp/hatago-mcp-hub)
HTML Embed
<a href="https://allmcps.com/mcp/hatago-mcp-hub"><img src="https://allmcps.com/api/badge/hatago-mcp-hub?style=directory" alt="Hatago MCP Hub on AllMCPs" /></a>