Labsco
MCP SERVER

Mindbody MCP Server

by vespo92

Run a yoga or fitness studio from a conversation — schedules, bookings, waitlists, substitutes, client records, memberships and checkout, over the Mindbody API.

ERP & Vertical Business Systems
Summary
Test against site -99 before you point it at the real studio.

The breadth is the appeal and also the risk: checkout and contract purchase sit on the same connection as the schedule lookup, so an assistant that misreads an instruction can sell a membership. The sandbox site ID exists for exactly this, and the cache means the read-heavy half — schedules, staff, class lists — stays fast once warm.

What it is

An MCP server covering the Mindbody public API for studio operations. It is not a reporting connector: the same server that shows you today's schedule books a client into a class, checks them in, and processes the package they bought. Caching sits in front of the API so repeated schedule reads are cheap.

What you get
  • Classes — `getClasses` with filters, `getClassDescriptions`, `getClassSchedules`, `addClientToClass`, `removeClientFromClass`, `getWaitlistEntries`, `substituteClassTeacher`
  • Clients — `getClients`, `addClient`, `updateClient`, `getClientVisits`, `getClientMemberships`, `addClientArrival` for check-in, `getClientAccountBalances`, `getClientContracts`
  • Sales — `getServices`, `getPackages`, `getProducts`, `getContracts`, `checkoutShoppingCart`, `purchaseContract`
  • Sites and staff — `getSites`, `getLocations`, `getPrograms`, `getResources`, `getSessionTypes`, `getStaff`, `getTeacherSchedule`, with multi-location support
  • Appointments — `getStaffAppointments`, `addAppointment`, `updateAppointment`, `getBookableItems`, `getActiveSessionTimes`, `getScheduleItems`
  • Enrollments — `getEnrollments`, `addClientToEnrollment`, `getClientEnrollments`
  • 50+ tools across 7 categories, served over stdio locally or SSE for a deployed instance
Requirements

A Mindbody developer account and an app, which gives you four values: `MINDBODY_API_KEY`, `MINDBODY_SITE_ID`, `MINDBODY_SOURCE_NAME` and `MINDBODY_SOURCE_PASSWORD`. Site ID `-99` is the sandbox — start there, because the live equivalent takes real bookings and real payments. Node.js 18+ or Bun 1.0+; run it with `npx @vespo92/mindbody-mcp` or `bunx @vespo92/mindbody-mcp`. For a deployed instance set `MCP_TRANSPORT=sse` with `MCP_PORT`, `MCP_HOST` and `MCP_CORS_ORIGIN`, and optionally `MCP_SSL_CERT` and `MCP_SSL_KEY`; `/health`, `/info` and `/sse` are exposed. Package `@vespo92/mindbody-mcp`, MIT.

Setup effort

One command plus a key — npx @vespo92/mindbody-mcp, then supply credentials