MCPHub:一站式MCP服务器聚合平台

简介

什么是 MCPHub ?

MCPHub 是一个统一的 MCPModel Context Protocol,模型上下文协议)服务器聚合平台,可以根据场景将多个服务器聚合到不同的流式 HTTPSSE)端点。它通过直观的界面和强大的协议处理能力,简化了您的 AI 工具集成流程。

🚀 功能亮点

  • 开箱即用的 MCP 服务器支持 :无缝集成 amap-mapsplaywrightfetchslack 等常见服务器。
  • 集中式管理控制台 :在一个简洁的 Web UI 中实时监控所有服务器的状态和性能指标。
  • 灵活的协议兼容 :完全支持 stdioSSE 两种 MCP 协议。
  • 热插拔式配置:在运行时动态添加、移除或更新服务器配置,无需停机。
  • 基于分组的访问控制:自定义分组并管理服务器访问权限。
  • 安全认证机制 :内置用户管理,基于 JWTbcrypt,实现角色权限控制。
  • Docker 就绪:提供容器化镜像,快速部署。

安装

在群晖上以 Docker 方式安装。

在注册表中搜索 samanhappy ,选择第一个 samanhappy/mcphub,版本选择 latest 或者 latest-full

老苏没有找到这两个版本的具体说明,但一般来说, full 可能意味着包含更多的组件和依赖项

本文写作时, latest 版本对应为 0.5.0;而 latest-full 版本对应为 0.5.0-full

端口

本地端口不冲突就行,不确定的话可以用命令查一下

bash 复制代码
# 查看端口占用
netstat -tunlp | grep 端口号
本地端口 容器端口
3535 3000

环境变量

没有找到官方的明确描述,下面是老苏根据 Dockerfile 整理的的环境变量说明。

环境变量 描述
HTTP_PROXY 用于 HTTP 请求的代理地址
HTTPS_PROXY 用于 HTTPS 请求的代理地址
REQUEST_TIMEOUT 请求超时时间,默认为 60000 毫秒
PNPM_HOME pnpm 的安装目录路径
PATH 包含 pnpm 的路径,用于全局命令的查找
UV_PYTHON_INSTALL_MIRROR Python 包镜像源,设置为阿里云的 PyPI 镜像地址
  1. 如果有科学上网的环境,可以考虑给容器设置代理地址,当然这不是解决 MCP 服务安装问题的唯一的方法;
  2. 通过设置 UV_PYTHON_INSTALL_MIRROR,也可以解决 Python 包的安装问题;

命令行安装

如果你熟悉命令行,可能用 docker cli 更快捷

bash 复制代码
# 运行容器
docker run -d \
   --restart unless-stopped \
   --name mcphub \
   -p 3535:3000 \
   samanhappy/mcphub:latest-full

也可以用 docker-compose 安装,将下面的内容保存为 docker-compose.yml 文件

yaml 复制代码
version: '3'

services:
  mcphub:
    image: samanhappy/mcphub:latest-full
    container_name: mcphub
    restart: unless-stopped
    ports:
      - 3535:3000

然后执行下面的命令

bash 复制代码
# 新建文件夹 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 镜像

正常情况下,应该是可以成功的

npx 类型

老苏加了个 tavily-mcp

对于 NodeJS 包,可以使用 --registry 参数指定国内 npm 镜像

  • 命令: npx
  • 参数: --registry=https://registry.npmmirror.com -y tavily-mcp

为了测试方便,老苏禁用了几个。其实更好的办法是使用分组功能,不过这个不是重点

Cherry Studio

MCPHub 支持 ssemcp 两种协议, 这两种协议在 Cherry Studio 中都支持,但老苏更推荐 mcp 协议,如果使用其他的 AI 客户端就看情况了

  • 类型:选择 mcp
  • URL:填 http://群晖IP:3535/mcp
  • 类型:选择 sse
  • URL:填 http://群晖IP:3535/sse

如果没有报错的话,切换到工具,可以看到 3 个函数

简单做个测试

小结

MCPHub 解决了老苏不愿意在本机安装 MCP 服务的问题,实现了类似 mcp-proxy 的功能,能将 stdio 服务器代理为 SSE 服务器。除了极个别需要访问本机上文件和应用的 MCP 外,例如 mcp-server-everything-search ,其他的都可以在 MCPHub 中实现集中管理,大大提供了便利性

同时又结合群晖,实现了 MCP 服务的自托管,虽然不如魔搭社区(https://modelscope.cn)方便,但在数据安全性上,会更让人放心一些,尤其是一些会用到 API Key 的应用

参考文档

samanhappy/mcphub:一个统一的中心服务器,可将多个 MCP 服务器聚合为单独的可流式传输 HTTP (SSE) 终端节点,以用于不同的场景 --- samanhappy/mcphub: A unified hub server that aggregates multiple MCP servers into separate Streamable HTTP (SSE) endpoints for different scenarios

地址:https://github.com/samanhappy/mcphub
MCPHub - Your Ultimate MCP Server Hub

地址:https://www.hubmcp.dev/
tavily-ai/tavily-mcp

地址:https://github.com/tavily-ai/tavily-mcp
mcp.science/servers/web-fetch at main · pathintegral-institute/mcp.science

地址:https://github.com/pathintegral-institute/mcp.science/tree/main/servers/web-fetch
面向新手的MCP使用教程:在Cherry Studio中配置和使用模型上下文协议 - 文档共建 - LINUX DO

地址:https://linux.do/t/topic/503051

相关推荐
奔驰的小野码8 分钟前
SpringAI实现AI应用-内置顾问
java·人工智能·后端·spring
Black_Cat_yyds17 分钟前
docker host模式问题
运维·docker·容器
CHNMSCS43 分钟前
PyTorch_创建01张量
人工智能·pytorch·python
新加坡内哥谈技术1 小时前
微软与Meta大幅增加人工智能基础设施投入
人工智能
说私域1 小时前
基于开源链动2+1模式AI智能名片S2B2C商城小程序的爆品力构建研究
人工智能·小程序·开源·零售
Echo``1 小时前
2:点云处理—3D相机开发
人工智能·笔记·数码相机·算法·计算机视觉·3d·视觉检测
create172 小时前
使用 AI 如何高效解析视频内容?生成思维导图或分时段概括总结
人工智能·aigc·语音识别·ai写作
TIANE-Kimmy2 小时前
FID和IS的区别
人工智能·深度学习·计算机视觉
知舟不叙2 小时前
使用OpenCV 和 Dlib 实现人脸融合技术
人工智能·opencv·计算机视觉·人脸融合
碣石潇湘无限路2 小时前
【AI】基于生活案例的LLM强化学习(入门帖)
人工智能·经验分享·笔记·生活·openai·强化学习