By orban
MCP server for MX3 Fitness gym booking at Noe Valley. Check schedules, book slots, cancel reservations, and view credits.
npx claudepluginhub orban/claude-skills --plugin mx3-gym-mcpMCP server for MX3 Fitness gym booking at Noe Valley, San Francisco.
Lets Claude check schedules, book slots, cancel reservations, and view remaining credits.
claude plugin add orban/mx3-gym-mcp
Set your credentials in your shell profile:
export MX3_USERNAME="your@email.com"
export MX3_PASSWORD="your-password"
Restart Claude Code. The MCP tools will be available automatically.
Clone the repo and install dependencies:
git clone https://github.com/orban/mx3-gym-mcp.git
cd mx3-gym-mcp
npm install
Add to your Claude Code config (~/.claude.json under the project's 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 slot availability for a given date. Shows all stations grouped by type with available times.
| Parameter | Type | Required | Description |
|---|---|---|---|
date | string | No | Date in YYYY-MM-DD format. Defaults to today. |
Reserve a gym slot.
| Parameter | Type | Required | Description |
|---|---|---|---|
station | string | Yes | Station name (e.g. "Noe 1", "Air Bike") or station ID |
date | string | Yes | Date in YYYY-MM-DD format |
time | string | Yes | Time in h:mmam/pm format (e.g. "5:00am", "1:30pm") |
Cancel an existing reservation.
| Parameter | Type | Required | Description |
|---|---|---|---|
station_name | string | Yes | Station name (e.g. "Noe 1", "Open Gym 2") |
date | string | Yes | Date in YYYY-MM-DD format |
time | string | Yes | Time in h:mmam/pm format |
List upcoming reservations and remaining gym credits. No parameters.
Private Stations (1hr): Noe 1, Noe 2, Noe 3, Noe 4
Open Gym (30min): Open Gym 1, Open Gym 2, Open Gym 3
Cardio (30min): Air Bike, Air Rower, Climber, Peloton, Tread Mill
npm install
npm run typecheck # Type check
npm test # Run tests
npm start # Start MCP server (requires MX3_USERNAME, MX3_PASSWORD)
The MX3 Fitness platform uses a legacy PHP/HTML system (AccelSite) without a JSON API. This server:
userName, password, and hidden form fieldsPOST /reserve-noe-station with locID=51550&refreshDate={date}<p id="res_time_{stationId}_{date}_{time}"> elements using cheeriov2=true&reserve={stationId}&res_date={date}&res_time={time}v2=true&unreserve={reservationId}&resourceID={stationId}#my_reservationsSession cookies are managed in-memory with automatic re-authentication on expiry.
MIT
Admin access level
Server config contains admin-level keywords
Requires secrets
Needs API keys or credentials to function
Persistent memory system for Claude Code - seamlessly preserve context across sessions
Standalone image generation plugin using Nano Banana MCP server. Generates and edits images, icons, diagrams, patterns, and visual assets via Gemini image models. No Gemini CLI dependency required.
Streamline people operations — recruiting, onboarding, performance reviews, compensation analysis, and policy guidance. Maintain compliance and keep your team running smoothly.
Fast and streamable Excalidraw MCP App