mx3健身房mcp
MCP服务器 MX3健身 旧金山诺埃谷的健身房预订。
让克劳德查看日程安排、预订时段、取消预订和查看剩余积分。
作为Claude代码插件安装
claude plugin add orban/mx3-gym-mcp在shell配置文件中设置凭据:
export MX3_USERNAME="your@email.com"
export MX3_PASSWORD="your-password"重新启动克劳德代码。MCP工具将自动可用。
手动安装
克隆仓库并安装依赖项:
git clone https://github.com/orban/mx3-gym-mcp.git
cd mx3-gym-mcp
npm install添加到您的Claude代码配置中(~/.claude.json 在项目的 mcpServers):
{
"mx3-gym": {
"type": "stdio",
"command": "npx",
"args": ["tsx", "/path/to/mx3-gym-mcp/src/server.ts"],
"env": {
"MX3_USERNAME": "your@email.com",
"MX3_PASSWORD": "your-password"
}
}
}工具
get_schedule
获取给定日期的插槽可用性。显示按类型分组的所有电台及其可用时间。
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
date | string | 否 | YYYY-MM-DD格式的日期。默认为今天。 |
book_slot
预留一个健身房名额。
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
station | string | Yes | 车站名称(例如“Noe 1”、“Air Bike”)或车站ID |
date | string | 是 | YYYY-MM-DD格式的日期 |
time | string | 是 | 以h:mmam/pm格式表示的时间(例如“早上5:00”、“下午1:30”) |
取消_预订
取消现有预订。
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
station_name | string | 是 | 站名(例如“Noe 1”、“Open Gym 2”) |
date | string | 是 | YYYY-MM-DD格式的日期 |
time | string | 是 | 以h:mmam/pm格式表示的时间 |
获取\_ \_预订
列出即将到来的预订和剩余的健身房积分。没有参数。
车站
私人车站(1小时): Noe 1,Noe 2,Noe 3,Noe 4
开放式健身房(30分钟): 开放健身房1、开放健身房2、开放健身房3
有氧运动(30分钟): 空中自行车、空中划船、登山、Peloton、跑步机
发展
npm install
npm run typecheck # Type check
npm test # Run tests
npm start # Start MCP server (requires MX3_USERNAME, MX3_PASSWORD)运作原理
MX3 Fitness平台使用传统的PHP/HTML系统(AccelSite),没有JSON API。此服务器:
- 通过基于cookie的登录进行身份验证
userName,password,以及隐藏的表单字段 - 通过以下方式获取日程HTML
POST /reserve-noe-station和locID=51550&refreshDate={date} - 从以下位置分析插槽可用性 `
` 使用cheerio的元素
- 书籍插槽通过
v2=true&reserve={stationId}&res_date={date}&res_time={time} - 通过取消
v2=true&unreserve={reservationId}&resourceID={stationId} - 在以下位置从整页HTML读取预订
#my_reservations
会话Cookie在内存中管理,到期时会自动重新验证。
许可证
麻省理工学院
