xiaozhi-mcphub
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@xiaozhi-mcphublist all users with their permissions"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
xiaozhi-mcphub:多用户 MCP 工具桥接与控制台
在 MCPHub 与 xiaozhi-mcphub 基础上二次开发,新增完整的真正多用户隔离、权限控制、资源共享和超管中心。

🚀 与原版的主要差异
1. 真正的多用户隔离(核心新增)
原版只有单用户 + 控制台登录账号区分,所有用户看到同一份数据。本项目实现了完整的租户级隔离:
能力 | 原版 | 本项目 |
用户上下文 | 全局单例(并发不安全) | AsyncLocalStorage 请求级(并发安全) |
服务器/分组/端点 | 全局共享 | 按 owner 隔离,普通用户只能看到自己的 |
SSE 路由鉴权 | 信任 URL 参数(无校验) | 校验用户真实存在 + 真实 isAdmin |
数据过滤 |
| 按 owner + shared 过滤 |
2. 权限控制系统
超管可以为每个普通用户设置细粒度权限:
权限 | 说明 | 默认 |
| 是否可以访问市场页面 | ❌ 关闭 |
| 是否可以自行添加服务器 | ❌ 关闭 |
| 管理员(可管理一切) | ❌ |
权限写入 JWT,前后端双重校验
关闭权限后:前端隐藏按钮/页面,后端 API 返回 403
3. 资源共享机制
超管可以将自己名下的服务器/分组/小智端点共享给所有普通用户:
操作 | 所有者 | 管理员 | 普通用户(共享) |
查看列表 | ✅ | ✅ | ✅ |
启用/禁用 | ✅ | ✅ | ✅ |
使用工具 | ✅ | ✅ | ✅ |
查看/修改配置 | ✅ | ✅ | ❌ |
修改/删除 | ✅ | ✅ | ❌ |
4. 用户追踪
每个用户记录:
登录次数(
loginCount)最后登录时间(
lastLoginAt)最后活动时间(
lastActivityAt)
5. 批量用户管理
超管中心支持:
批量添加:粘贴
用户名,密码列表,一键创建批量权限:勾选多个用户,统一设置市场/服务器权限
批量删除:勾选多个用户,一键删除
6. 超管中心页面
集中管理入口(/users,仅管理员可见):
用户统计卡片(用户数、服务器、分组、端点)
用户表格(含追踪数据、权限状态)
共享管理面板(一键切换服务器/分组共享状态)
管理中心快捷入口
Related MCP server: Jira-Mcp
🔧 快速开始
方式一:Docker Compose(推荐)
git clone https://github.com/huangjunsen0406/xiaozhi-mcphub.git
cd xiaozhi-mcphub
docker compose up -d --build访问 http://localhost:3000,默认管理员 admin / admin123
方式二:使用预构建镜像
# docker-compose.deploy.yml 中设置 image
docker compose -f docker-compose.deploy.yml up -d方式三:本地开发
pnpm install
docker compose up -d db # 只启动数据库
export DATABASE_URL="postgres://xiaozhi:xiaozhi123456@localhost:5432/xiaozhi_mcphub"
pnpm dev # 后端 :3000 + 前端 :5173📖 使用指南
超管(管理员)
登录后访问 超管中心(侧边栏 → 用户)
添加用户:单个添加或批量添加(粘贴用户名,密码列表)
设置权限:编辑用户,控制市场访问和服务器创建权限
共享资源:在共享管理面板,一键切换服务器/分组的共享状态
查看追踪:用户表格显示登录次数、最后登录时间
普通用户
管理员创建账号后登录
只能看到自己名下的服务器/分组/端点
管理员共享的资源也可查看和启用,但不能修改配置
默认不能添加服务器、不能访问市场(需管理员授权)
🏗️ 技术架构
后端多用户实现
请求 → auth 中间件(JWT 验证 + 权限补充)
→ userContext 中间件(AsyncLocalStorage 设置用户上下文)
→ 路由处理器
→ dataService.filterData(按 owner + shared 过滤)
→ ensureServerAccess / ensureServerOwnership(归属校验)关键文件
文件 | 说明 |
| AsyncLocalStorage 请求级用户上下文 |
| 按 owner + shared 过滤数据 |
| JWT 验证 + 权限补充 + |
| 控制台 + SSE 用户上下文设置 |
| 服务器归属校验(共享 vs 所有权) |
| 用户 CRUD + 批量操作 |
| 用户实体(含追踪 + 权限字段) |
新增 API
方法 | 路径 | 说明 |
|
| 批量创建用户 |
|
| 批量设置权限 |
|
| 批量删除用户 |
|
| 切换服务器共享 |
|
| 切换分组共享 |
|
| 切换端点共享 |
|
| 设置单个用户权限 |
📦 环境变量
变量 | 默认值 | 说明 |
| postgres://xiaozhi:... | 数据库连接串 |
| 自动生成 | JWT 签名密钥(生产建议手动设置) |
| false | 智能路由开关 |
| 空 | 二级路径部署(如 /mcphub) |
| - | 智能路由所需 |
📄 许可
Apache License 2.0,基于 MCPHub 和 xiaozhi-mcphub 二次开发。
This server cannot be deployed
Maintenance
Related MCP Connectors
MCP server for building and testing AI agents with multi-model experimentation and insights.
A MCP server built for developers enabling Git based project management with project and personal…
MCP server for mandates, delegation, policy-gated execution, credential grants, and audit.
An MCP server for deep research or task groups
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceA production-grade multi-tenant MCP server that provides different tools and configurations to different clients using API key-based routing.1-
- AlicenseNot gradedqualityDmaintenanceMulti-client MCP server for Jira, enabling project and issue management for multiple simultaneous users with efficient resource usage.79 npmGPL 3.0
- FlicenseNot gradedqualityBmaintenanceAn MCP server with HTTP/stdio support, a web admin panel for managing services, capabilities, and user permissions with Bearer token authentication, enabling relay and access control for MCP tools.-
- FlicenseBqualityDmaintenanceMCP server for uControl, enabling read and write operations on schema, assets, and uMap via segregated tools with authentication.24-