什么是 MCPHub ?
MCPHub是一个统一的MCP(Model Context Protocol,模型上下文协议)服务器聚合平台,可以根据场景将多个服务器聚合到不同的流式HTTP(SSE)端点。它通过直观的界面和强大的协议处理能力,简化了您的AI工具集成流程。
? 功能亮点
开箱即用的 MCP 服务器支持:无缝集成 amap-maps、playwright、fetch、slack等常见服务器。集中式管理控制台:在一个简洁的 Web UI中实时监控所有服务器的状态和性能指标。灵活的协议兼容:完全支持 stdio和SSE两种MCP协议。热插拔式配置:在运行时动态添加、移除或更新服务器配置,无需停机。 基于分组的访问控制:自定义分组并管理服务器访问权限。 安全认证机制:内置用户管理,基于 JWT和bcrypt,实现角色权限控制。Docker 就绪:提供容器化镜像,快速部署。
在群晖上以 Docker 方式安装。
在注册表中搜索 samanhappy ,选择第一个 samanhappy/mcphub,版本选择 latest 或者 latest-full。
老苏没有找到这两个版本的具体说明,但一般来说, full 可能意味着包含更多的组件和依赖项
本文写作时,
latest版本对应为0.5.0;而latest-full版本对应为0.5.0-full
端口
本地端口不冲突就行,不确定的话可以用命令查一下
# 查看端口占用
netstat -tunlp | grep 端口号
3535 | 3000 |
环境变量
没有找到官方的明确描述,下面是老苏根据 Dockerfile 整理的的环境变量说明。
HTTP_PROXY | HTTP 请求的代理地址 |
HTTPS_PROXY | HTTPS 请求的代理地址 |
REQUEST_TIMEOUT | 60000 毫秒 |
PNPM_HOME | pnpm |
PATH | pnpm 的路径,用于全局命令的查找 |
UV_PYTHON_INSTALL_MIRROR | PythonPyPI 镜像地址 |
如果有科学上网的环境,可以考虑给容器设置代理地址,当然这不是解决 MCP服务安装问题的唯一的方法;通过设置 UV_PYTHON_INSTALL_MIRROR,也可以解决Python包的安装问题;
如果你熟悉命令行,可能用 docker cli 更快捷
# 运行容器
docker run -d \
--restart unless-stopped \
--name mcphub \
-p 3535:3000 \
samanhappy/mcphub:latest-full
也可以用 docker-compose 安装,将下面的内容保存为 docker-compose.yml 文件
version: '3'
services:
mcphub:
image: samanhappy/mcphub:latest-full
container_name: mcphub
restart: unless-stopped
ports:
- 3535:3000
然后执行下面的命令
# 新建文件夹 mcphub 和 子目录
mkdir -p /volume1/docker/mcphub
# 进入 mcphub 目录
cd /volume1/docker/mcphub
# 将 docker-compose.yml 放入当前目录
# 一键启动
docker-compose up -d
在浏览器中输入 http://群晖IP:3535 就能看到登录界面
默认用户名/密码为
admin/admin123
登录成功后的主界面
进入 Settings --> Language --> 中文
设置完成之后,界面就是中文了
默认带了 4 个服务
可以根据需要进行删、改
而市场中可以直接添加
安装 MCP 服务过程中可能会遇到各种问题,最常见的一般都是网络原因,除了前面提到的网络代理之外,还可以使用国内镜像源
uvx 类型
老苏加了个 web-fetch
没有网络代理和镜像源的情况下,肯定是会显示离线,需要处理一下
对于 Python 包,还可以使用 -i 参数指定国内镜像
修改参数 -i http://mirrors.aliyun.com/pypi/simple mcp-web-fetch
常用国内 PyPI 镜像
清华大学:https://pypi.tuna.tsinghua.edu.cn/simple 阿里云:http://mirrors.aliyun.com/pypi/simple 中国科技大学:https://mirrors.ustc.edu.cn/pypi/simple 华为云:https://repo.huaweicloud.com/repository/pypi/simple 腾讯云:https://mirrors.cloud.tencent.com/pypi/simple
正常情况下,应该是可以成功的
npx 类型
老苏加了个 tavily-mcp
对于 NodeJS 包,可以使用 --registry 参数指定国内 npm 镜像
命令: npx参数: --registry=https://registry.npmmirror.com -y tavily-mcp
为了测试方便,老苏禁用了几个。其实更好的办法是使用分组功能,不过这个不是重点
Cherry Studio
MCPHub 支持 sse 和 mcp 两种协议, 这两种协议在 Cherry Studio 中都支持,但老苏更推荐 mcp 协议,如果使用其他的 AI 客户端就看情况了
类型:选择 mcpURL:填http://群晖IP:3535/mcp
类型:选择 sseURL:填http://群晖IP:3535/sse
如果没有报错的话,切换到工具,可以看到 3 个函数
简单做个测试
MCPHub 解决了老苏不愿意在本机安装 MCP 服务的问题,实现了类似 mcp-proxy 的功能,能将 stdio 服务器代理为 SSE 服务器。除了极个别需要访问本机上文件和应用的 MCP 外,例如 mcp-server-everything-search ,其他的都可以在 MCPHub 中实现集中管理,大大提供了便利性
同时又结合群晖,实现了 MCP 服务的自托管,虽然不如魔搭社区(https://modelscope.cn)方便,但在数据安全性上,会更让人放心一些,尤其是一些会用到 API Key 的应用
