Beltche MCP服务器
MCP(模型上下文协议)服务器 皮带 -BJJ健身房管理平台。
允许像ChatGPT这样的人工智能助手与您的Beltche帐户进行交互,以管理学生、培训和健身房数据。
🚀 快速开始
# Clone and install
git clone https://github.com/gajda-w/Beltche-MCP-Server.git
cd Beltche-MCP-Server
npm install
# Configure environment
cp .env.example .env
# Edit .env with your OAuth credentials
# Run
npm run dev
对于ChatGPT集成,请使用ngrok公开: ngrok http 3000
🔧 MCP工具
| 工具 | 说明 |
|---|
authorize | 生成OAuth URL,返回 linkToken + authUrl |
get_students | 接送学生(要求 linkToken) |
create_gym | 创建新的健身房/俱乐部(需要 linkToken) |
📊 API覆盖范围
显示MCP服务器当前支持哪些Beltche API端点的表:
健身房
| 端点 | 方法 | 状态 | MCP工具 |
|---|
| 创建健身房 | POST /api/v1/gyms | ✅ | create_gym |
| 获取所有健身房 | GET /api/v1/gyms | ❌ | - |
| 按ID进入健身房 | GET /api/v1/gyms/{id} | ❌ | - |
| 更新健身房 | PUT /api/v1/gyms/{id} | ❌ | - |
| 删除健身房 | DELETE /api/v1/gyms | ❌ | - |
学生
| 端点 | 方法 | 状态 | MCP工具 |
|---|
| 让所有学生 | GET /api/v1/students | ✅ | get_students |
| 创建学生 | POST /api/v1/students | ❌ | - |
| 更新学生 | PUT /api/v1/students/{studentID} | ❌ | - |
| 删除学生 | DELETE /api/v1/students | ❌ | - |
| 通过ID获取学生 | GET /api/v1/students/{studentID} | ❌ | - |
| 提升学生 | GET /api/v1/students/{studentID}/promote | ❌ | - |
| 让我出席 | GET /api/v1/students/my-attendance | ❌ | - |
类
| 端点 | 方法 | 状态 | MCP工具 |
|---|
| 获取所有课程 | GET /api/v1/gyms/{id}/class | ❌ | - |
| 按ID获取类 | GET /api/v1/gyms/{id}/class/{classid} | ❌ | - |
| 获取今天的课程 | GET /api/v1/gyms/{id}/classes/today | ❌ | - |
| 创建类 | POST /api/v1/gyms/{id}/class | ❌ | - |
| 更新类 | PUT /api/v1/gyms/{id}/class/{classid} | ❌ | - |
| 删除类 | DELETE /api/v1/gyms/{id}/class | ❌ | - |
| 出勤记录 | POST /api/v1/gyms/{id}/class/{classid}/presence | ❌ | - |
| 检查出勤情况 | GET /api/v1/gyms/{id}/class/{classid}/presence | ❌ | - |
课堂笔记
| 端点 | 方法 | 状态 | MCP工具 |
|---|
| 创建笔记 | POST /api/v1/gyms/{id}/class/{classid}/note | ❌ | - |
| 获取注释 | GET /api/v1/gyms/{id}/class/{classid}/note | ❌ | - |
| 更新说明 | PUT /api/v1/gyms/{id}/class/{classid}/note/{noteid} | ❌ | - |
| 删除注释 | DELETE /api/v1/gyms/{id}/class/{classid}/note/{noteid} | ❌ | - |
对练
| 端点 | 方法 | 状态 | MCP工具 |
|---|
| 创建陪练 | POST /api/v1/gyms/{id}/class/{classid}/sparring | ❌ | - |
| 打拳击 | GET /api/v1/gyms/{id}/class/{classid}/sparring | ❌ | - |
| 删除陪练 | DELETE /api/v1/gyms/{id}/class/{classid}/sparring/{sparringid} | ❌ | - |
级别组
| 端点 | 方法 | 状态 | MCP工具 |
|---|
| 获取级别组 | GET /api/v1/gyms/{id}/levelgroup | ❌ | - |
| 创建级别组 | POST /api/v1/gyms/{id}/levelgroup | ❌ | - |
| 更新组 | PUT /api/v1/gyms/{id}/levelgroup/{group_id} | ❌ | - |
| 删除组 | DELETE /api/v1/gyms/{id}/levelgroup/{group_id} | ❌ | - |
| 将学生添加到组 | POST /api/v1/gyms/{id}/levelgroup/{group_id}/student | ❌ | - |
会员计划
| 端点 | 方法 | 状态 | MCP工具 |
|---|
| 获取计划 | GET /api/v1/gyms/{id}/membership-plans | ❌ | - |
| 按ID获取计划 | GET /api/v1/gyms/{id}/membership-plans/{planId} | ❌ | - |
| 制定计划 | POST /api/v1/gyms/{id}/membership-plans | ❌ | - |
| 更新计划 | PUT /api/v1/gyms/{id}/membership-plans/{planId} | ❌ | - |
| 删除计划 | DELETE /api/v1/gyms/{id}/membership-plans/{planId} | ❌ | - |
会员资格
| 端点 | 方法 | 状态 | MCP工具 |
|---|
| 获得健身房会员资格 | GET /api/v1/gyms/{id}/memberships | ❌ | - |
| 获取学生会员资格 | GET /api/v1/gyms/{id}/memberships/student/{studentId} | ❌ | - |
| 分配成员资格 | POST /api/v1/gyms/{id}/memberships/assign | ❌ | - |
| 通过ID获取会员资格 | GET /api/v1/gyms/{id}/memberships/{membershipId} | ❌ | - |
| 扩大会员资格 | POST /api/v1/gyms/{id}/memberships/{membershipId}/extend | ❌ | - |
支付
| 端点 | 方法 | 状态 | MCP工具 |
|---|
| 创建付款 | POST /api/v1/gyms/{id}/payment | ❌ | - |
| 获得学生付款 | GET /api/v1/gyms/{id}/student/{student_id}/payment | ❌ | - |
| 学生付款历史 | GET /api/v1/gyms/{id}/payment-history/student/{studentId} | ❌ | - |
| 处理会员付款 | GET /api/v1/gyms/{id}/memberships/{membershipId}/payment | ❌ | - |
通知
| 端点 | 方法 | 状态 | MCP工具 |
|---|
| 创建通知 | POST /api/v1/gyms/{id}/notifications | ❌ | - |
| 获取健身房通知 | GET /api/v1/gyms/{id}/notifications | ❌ | - |
| 获取用户通知 | GET /api/v1/gyms/{id}/user-notifications | ❌ | - |
| 标记为已读 | PUT /api/v1/gyms/{id}/notifications/{notificationId}/read | ❌ | - |
注册
| 端点 | 方法 | 状态 | MCP工具 |
|---|
| 获取待处理的注册 | GET /api/v1/registration/gym/{gymId}/pending | ❌ | - |
| 批准注册 | POST /api/v1/registration/request/{requestId}/approve | ❌ | - |
| 拒绝注册 | POST /api/v1/registration/request/{requestId}/reject | ❌ | - |
服装订单
| 端点 | 方法 | 状态 | MCP工具 |
|---|
| 创建活动 | POST /api/v1/clothing-orders | ❌ | - |
| 获取活动 | GET /api/v1/clothing-orders | ❌ | - |
| 获取活动订单 | GET /api/v1/clothing-orders/{id}/orders | ❌ | - |
| 积极开展学生活动 | GET /api/v1/clothing-orders/active | ❌ | - |
其他
| 端点 | 方法 | 状态 | MCP工具 |
|---|
| 获取腰带排名 | GET /api/v1/beltrank | ❌ | - |
| 获取类标签 | GET /api/v1/gyms/tags | ❌ | - |
传说:
📦 脚本
| 脚本 | 描述 |
|---|
npm run dev | 具有热重载功能的开发服务器 |
npm run build | 为生产而建 |
npm start | 运行生产服务器 |
npm test | 运行测试 |
📝 环境变量
| 变量 | 必填 | 描述 |
|---|
OAUTH_CLIENT_ID | ✅ | FusionAuth客户端ID |
OAUTH_CLIENT_SECRET | ✅ | FusionAuth客户端机密 |
OAUTH_AUTHORIZE_URL | ✅ | FusionAuth授权URL |
OAUTH_TOKEN_URL | ✅ | 融合令牌URL |
OAUTH_REDIRECT_BASE | ✅ | OAuth回调的基本URL |
REDIS_URL | ❌ | Redis URL(生产) |
📚 文档
📄 许可证
ISC