
Hatago Mcp Hub
io.github.himorishige由 GitHub 账号 himorishige 发布v0.0.16更新于 Nov 10, 2026
Unified MCP Hub for managing multiple Model Context Protocol servers
概览
一个本地枢纽,把多个 MCP 服务器聚合到单一端点,让助手通过一个连接使用它们的全部工具。
- 可以做什么
- Hatago MCP Hub 作为本地进程运行,可同时连接多个 MCP 服务器并通过统一接口对外提供。它支持 STDIO、HTTP 和 SSE 传输,可通过 npx 启动 npm 发布的服务器,也能代理远程 HTTP MCP 服务器。它提供基于标签的过滤、配置继承、环境变量展开,以及列出已连接服务器状态与工具的内置资源。
- 适用场景
- 当你已使用多个 MCP 服务器,希望用一份配置文件统一管理,而不必在 Claude Code、Codex CLI、Cursor、Windsurf 或 VS Code 中逐个注册时适用。也适合用标签和共享基础配置按环境或团队分组管理服务器。
- 运行要求
- 需要 Node.js 与 npm,以便通过 npx 或全局安装运行该包。STDIO 模式必须提供配置文件,HTTP 模式可无配置启动。下游服务器的凭据通过配置中的环境变量或请求头提供,连接远程服务器需要网络访问。
安装
在 SourceWeft 中
- 打开 控制台中的 Hatago Mcp Hub,将其添加到工作区。
- 为需要使用其工具的对话启用该服务。
Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。
其他 MCP 客户端
参照 仓库 中的启动说明。
README
English | 日本語
🏮 Hatago MCP Hub
[npm] [GitHub Release] [Ask DeepWiki]
Hatago (旅籠) — A relay point connecting modern AI tools with MCP servers.
Overview
Hatago MCP Hub is a lightweight hub that unifies access to multiple MCP (Model Context Protocol) servers from tools like Claude Code, Codex CLI, Cursor, Windsurf, and VS Code.
Documentation
- Docs index:
docs/README.md - Canonical CLI & Hub guide:
packages/mcp-hub/README.md - Public docs site (JA default): https://hatago.dev/ja/ — English: https://hatago.dev/en/
Dev.to: Getting Started with Multi-MCP Using Hatago MCP Hub — One Config to Connect Them All
✨ Features
🚀 Performance (v0.0.14)
- 8.44x Faster Startup - 85.66ms → 10.14ms
- 17% Smaller Package - 1.04MB → 854KB
- Simplified Architecture - Direct server management without abstraction layers
🎯 Simple & Lightweight
- Zero Configuration Start (HTTP mode) -
npx @himorishige/hatago-mcp-hub serve --http - Non-invasive to Existing Projects - Doesn't pollute your project directory
🔌 Rich Connectivity
- Multi-Transport Support - STDIO / HTTP / SSE
- Remote MCP Proxy - Transparent connection to HTTP-based MCP servers
- NPX Server Integration - Dynamic management of npm package MCP servers
🏮 Additional Features
Configuration Updates
- Manual Restart Required - Configuration changes require server restart
- Alternative Solutions:
- Use process managers (PM2, nodemon) for auto-restart
- Example:
nodemon --exec "hatago serve --http" --watch hatago.config.json - Or with PM2:
pm2 start "hatago serve" --watch hatago.config.json
- Dynamic Tool List Updates - Supports
notifications/tools/list_changednotification
Progress Notification Forwarding
- Child Server Notification Forwarding - Transparent forwarding of
notifications/progress - Long-running Operation Support - Real-time progress updates
- Local/Remote Support - Works with many MCP server types
Built-in Internal Resource
hatago://servers- JSON snapshot of currently connected servers (id, status, type, tools, resources, prompts)
Enhanced Features
- Environment Variable Expansion - Claude Code compatible
${VAR}and${VAR:-default}syntax - Configuration Validation - Type-safe configuration with Zod schemas
- Tag-based Server Filtering - Group and filter servers using tags
- Configuration Inheritance - Extend base configurations with
extendsfield for DRY principle
Minimal Hub Interface (IHub)
External packages (server/test-utils) use a thin IHub interface to avoid tight coupling with the concrete class.
Extracted modules for thin hub:
- RPC handlers:
packages/hub/src/rpc/handlers.ts - HTTP handler:
packages/hub/src/http/handler.ts
📁 Project Structure
📦 Installation
Quick Start (No Installation)
Global Installation
As Project Dependency
🚀 Usage
Claude Code, Codex CLI, Gemini CLI
STDIO Mode (Recommended)
Claude Code / Gemini CLI
Add to .mcp.json:
Codex CLI
Add to ~/.codex/config.toml:
HTTP Mode
Claude Code / Gemini CLI
Add to .mcp.json:
Codex CLI
Add to ~/.codex/config.toml:
MCP Inspector
For testing and debugging:
Visit MCP Inspector
Metrics (opt-in)
Enable lightweight in-memory metrics and expose an HTTP endpoint:
Notes:
- Metrics are disabled by default and add near-zero overhead when off.
- JSON logs are available when
HATAGO_LOG=json(respectingHATAGO_LOG_LEVEL).
⚙️ Configuration
Basic Configuration
Create hatago.config.json:
Remote Server Configuration
Configuration Strategies
Strategy 1: Tag-based Filtering
Group servers with tags in a single configuration file:
Start with specific tags:
Strategy 2: Configuration Inheritance
Split configurations by environment using the extends field:
Base configuration (~/.hatago/base.config.json):
Work configuration (./work.config.json):
Features:
- Inheritance: Child configs override parent values
- Multiple parents:
"extends": ["./base1.json", "./base2.json"] - Path resolution: Supports
~, relative, and absolute paths - Environment deletion: Use
nullto remove inherited env vars
Choosing a Strategy
Environment Variable Expansion
Supports Claude Code compatible syntax:
${VAR}- Expands to the value of VAR (error if undefined)${VAR:-default}- Uses default value if VAR is undefined
📋 Commands
hatago init
Create configuration file with interactive setup:
hatago serve
Start MCP Hub server:
Loading Environment Variables from Files
Use --env-file <path...> to load variables before config parsing. This helps resolve ${VAR} and ${VAR:-default} placeholders without exporting variables globally.
- Format:
KEY=VALUE,export KEY=VALUE,#comments, blank lines. - Quotes are stripped; supports escaped
\n,\r,\t. - Paths: relative to CWD,
~/expanded to home. - Precedence: files are applied in the given order; existing
process.envkeys are preserved unless--env-overrideis provided.
✨ Performance Improvements (v0.0.14)
- 8.44x faster startup: 85.66ms → 10.14ms
- 17% smaller package: 1.04MB → 854KB (181KB reduction)
- Simplified architecture: Removed EnhancedHub and management layers
- Trade-off: Built-in config watching removed (use nodemon/PM2 instead)
🔧 Advanced Usage
Programmatic API
Creating Custom Hub
🏗️ Architecture
Supported MCP Servers
Local Servers
- Any executable MCP server
- Python, Node.js, or binary servers
- Custom scripts with MCP protocol
NPX Servers
@modelcontextprotocol/server-filesystem@modelcontextprotocol/server-github@modelcontextprotocol/server-memory- Any npm-published MCP server
Remote Servers
- DeepWiki MCP (
https://mcp.deepwiki.com/sse) - Any HTTP-based MCP endpoint
- Custom API servers with MCP protocol
🐛 Troubleshooting
Common Issues
-
"No onNotification handler set" warning
- Normal in HTTP mode with StreamableHTTP transport
- Hub handles notifications appropriately
-
Server connection failures
- Verify environment variables are set
- Check remote server URLs are accessible
- Use
--verboseflag for detailed logs
-
Tool name collisions
- Hatago automatically prefixes with server ID
- Original names preserved in hub
Debug Mode
📚 Documentation
🤝 Contributing
Contributions are welcome! Please see our GitHub repository for more information.
📄 License
MIT License
🔗 Links
🙏 Credits
Built with the Hono and the Model Context Protocol SDK by Anthropic.
来源:README.md,提交 fcb2bef
工具
0版本历史
1- v0.0.16最新Sep 16, 2026
评分
已满足适用检查项的 50%
该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。
- 近 30 天内可连通25 分
请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。
- 已声明认证方式10 分
请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。
- 已列出工具15 分
请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。
- 描述必需15 分
- 图标10 分
- 文档15 分
- 许可证10 分