Skip the install. Get this working in under 2 minutes.
Start a free trial on cloud.anythingmcp.com, add the Mindbody in one click, then point your AI client (Claude, ChatGPT, Copilot or Cursor) at the generated MCP endpoint. No Docker, no git clone, zero engineering experience required.
AnythingMCP is listed in Claude's connector directory: add it to Claude in one click (opens in a new tab), then sign in and choose which MCP servers Claude may use.
Summary
Mindbody for studios, gyms and wellness businesses: locations, programs, classes and schedules, rosters and waiting lists, appointments and free slots, enrollments, clients with passes, memberships, contracts and visits, sales, pricing options, products and staff. Books classes, appointments and enrollments, manages clients and checks them in. Signs in with a staff login; cancelling a whole class installs switched off.
Try asking
Example prompts for Mindbody
Click any prompt to copy it. Paste into Claude, ChatGPT, Cursor, Gemini, Copilot or OpenClaw to run it against this connector.
Claude is AI and can make mistakes. Please double-check responses.
💡 No install? Use cloud.anythingmcp.com directly. Sign in, click Connectors → Mindbody, paste your credentials, mint an MCP API key and you're done. No Docker, no
git clone, no local server.
Mindbody + Claude
Mindbody for studios, gyms and wellness businesses: locations, programs, classes and schedules, rosters and waiting lists, appointments and free slots, enrollments, clients with passes, memberships, contracts and visits, sales, pricing options, products and staff. Books classes, appointments and enrollments, manages clients and checks them in. Signs in with a staff login; cancelling a whole class installs switched off.
Prerequisites
See the full setup instructions baked into the connector (visible in the in-app store when you select the connector). The required environment variables for this connector are:
MINDBODY_API_KEY, MINDBODY_SITE_ID, MINDBODY_USERNAME, MINDBODY_PASSWORD
Step 1 — Get credentials
Setting up takes about 10 minutes. You need a Mindbody developer account, the id of the business's site and a staff login of that site.
- Create a developer account at https://developers.mindbodyonline.com and copy the API key of your source from the API credentials page. Until Mindbody approves the account for live sites, it works with the public sandbox site (site id
-99). - The site owner activates your source for the site: get the activation link for the site id from the developer portal (or the API's
/site/activationcode), and the owner opens it while signed in to Mindbody. - Paste the key into
MINDBODY_API_KEYand the site id intoMINDBODY_SITE_ID. The site id is a number, shown in the business's Mindbody URL and settings. - Enter the user name (often the email) and password of a staff member of that site into
MINDBODY_USERNAMEandMINDBODY_PASSWORD. Use a dedicated staff login with only the permissions the AI needs. - Install the connector and run
mindbody_get_locationsto check the connection.
How sign-in works: there is no browser sign-in. The connector sends the API key and site id in the Api-Key and SiteId headers, exchanges the staff user name and password for a staff user token at /usertoken/issue and renews it automatically. Every call runs with that staff member's permissions, so anything the login may not do in Mindbody answers 403.
What it reads:
- Site set-up: site details, locations, programs, session types, resources (rooms, equipment), staff and the session types each staff member performs.
- Classes: scheduled classes in a period (today by default), class descriptions (the class types), class schedules (the recurring pattern), the roster of a class and waiting lists.
- Appointments: booked appointments, free slots (
mindbody_get_bookable_items), bookable days (mindbody_get_available_dates) and staff schedule items for a calendar view. - Enrollments: workshops, courses and series booked as a whole.
- Clients: search by name, email or id, the complete profile, visits, schedule, pricing options bought with remaining visits, active memberships, contracts (autopay), purchases, account balances and contact logs.
- Sales and catalog: sales, card and payment transactions, pricing options, contracts, packages and retail products.
What it writes:
- Classes:
mindbody_add_client_to_classbooks a client (withwaitlistthe client joins the waiting list when the class is full),mindbody_remove_client_from_classcancels a booking (withlate_cancelas a late cancel, which can use up a visit or charge a fee under the site's policy) andmindbody_remove_from_waitlistdrops a waiting list entry. - Appointments:
mindbody_add_appointmentafter finding a free slot;mindbody_update_appointmentchanges time, staff, session type or notes, or confirms, marks arrived, cancels, late cancels or completes it. - Enrollments:
mindbody_add_client_to_enrollment. - Clients: the AI checks
mindbody_get_client_duplicatesandmindbody_get_required_client_fieldsbeforemindbody_add_client;mindbody_update_clientsends only the fields to change;mindbody_add_arrivalchecks a client in at a location;mindbody_add_contact_lognotes a call, email or visit.
Bookings and cancellations reach real clients, so the AI shows you the client and the class or slot and waits for your yes. Most writes take test: true, which validates the request and returns the result without saving.
Switched off at install: mindbody_cancel_single_class cancels one class occurrence for everyone booked, optionally emailing clients and staff, and the bookings cannot be restored through the API. An admin switches it on when the team needs it.
Data formats: responses wrap the rows in a named list (Classes, Clients, Appointments, Sales, ...) next to PaginationResponse; field names are PascalCase. Client ids (ClientId) are strings set by the business, often a number in text form; UniqueId is Mindbody's numeric id. Class, appointment, staff, location and program ids are integers. Dates and times are in the site's time zone without an offset (2026-11-20T18:00:00). Money is in the site currency, in major units. A class is one occurrence; its ClassDescription is the class type and its ClassScheduleId the recurring schedule.
Paging: limit (default 100, at most 200) and offset. The AI fetches the next page with offset plus limit until offset reaches TotalResults.
Limits: Mindbody counts API calls per site and bills them beyond a free allowance (see the pricing in the developer portal). The AI therefore filters by date, location or ids instead of reading everything.
Common errors: 401 means a wrong API key, a source not activated for the site or a rejected staff login (DeniedAccess, InvalidSiteId). 403 means the staff member lacks a permission. 400 is a business rule with the reason in Error.Message, for example no pricing option, a full class or a time outside the booking window.
The connector does not sell pricing options or products, does not take payments, does not create or change classes, schedules, staff or pricing options, and does not delete clients.
Step 2 — Install the adapter
curl -fsSL https://raw.githubusercontent.com/HelpCode-ai/anythingmcp/main/docker-compose.quickstart.yml -o docker-compose.yml
printf 'JWT_SECRET=%s\nENCRYPTION_KEY=%s\n' "$(openssl rand -hex 32)" "$(openssl rand -hex 32)" > .env
docker compose up -d
Step 3 — Add the connector in Claude
Your server URL: in AnythingMCP, open MCP Servers → the server this connector is on, and copy its URL (
https://cloud.anythingmcp.com/mcp/…). Use it wherever this guide showsYOUR_SERVER_ID.
Recommended path: works on claude.ai web without editing any config file.
- In Claude, open Customize → Connectors.
- Click +, then Add custom connector.
- Enter a name, e.g.
Mindbody, and the remote MCP server URLhttps://cloud.anythingmcp.com/mcp/YOUR_SERVER_ID, then click Add. - Click Connect and sign in to AnythingMCP (OAuth) to allow access.
All tools below appear in your chat: start typing prompts.
Available tools
| Tool | What it does |
|---|---|
mindbody_get_sites | Site (business) details the credentials can reach: name, description, contact, logo, currency, time zone, and whether online booking and… |
mindbody_get_locations | Locations (studios, gyms, branches) of the site with id, name, address, phone, coordinates, tax rates and amenities |
mindbody_get_programs | Programs (service categories) of the site with id, name and schedule type (Class, Enrollment, Appointment, Resource, Media, Arrival) |
mindbody_get_session_types | Session types (bookable kinds of class or appointment, for example 60 minute massage) with id, name, program, default duration and whether… |
mindbody_get_resources | Resources (rooms, equipment) that classes and appointments use, with location, program and schedule types |
mindbody_get_classes | Scheduled classes (single occurrences) in a period with id, class description (name), start and end time, location, staff (teacher)… |
mindbody_get_class_descriptions | Class descriptions (the class types such as Vinyasa Yoga or Spin 45) with id, name, description, program, session type, level and category |
mindbody_get_class_schedules | Class schedules (the recurring pattern behind classes and enrollments): days of the week, start and end time, start and end date, location… |
mindbody_get_class_visits | The roster of one class: the clients booked into it, with visit id, client id, signed-in state, late cancel and the pricing option used |
mindbody_get_waitlist_entries | Waiting list entries of classes with entry id, class, client and the date the client joined |
mindbody_get_staff_appointments | Booked appointments in a period with id, status (Booked, Confirmed, Arrived, Completed, NoShow, LateCanceled), start and end time, client… |
mindbody_get_bookable_items | Free appointment slots: for given session types, the staff, location, start and end times that can be booked in a period |
mindbody_get_available_dates | Days on which a session type can be booked as an appointment in a period, optionally for one location and staff member |
mindbody_get_schedule_items | Staff schedule items in a period: appointments, availabilities and unavailabilities per staff member, for a calendar view |
mindbody_get_enrollments | Enrollments (workshops, courses and series booked as a whole) with schedule, dates, location, staff, capacity and booking window |
mindbody_get_clients | Find clients by name, email or id: client id, unique id, name, email, phone, birth date, status (Active, Inactive, ...), membership icon… |
mindbody_get_client_complete_info | Everything about one client in one call: profile, active pricing options (client services), contracts, memberships and arrival programs |
mindbody_get_client_visits | Visits of a client (classes and appointments attended or booked) in a period, with date, class or appointment, staff, signed-in state, late… |
mindbody_get_client_schedule | Upcoming and past bookings of a client (classes, enrollments, appointments) in a period, optionally with waitlist entries |
mindbody_get_client_services | Pricing options a client bought (class packs, passes, intro offers) with remaining visits, activation and expiration dates and the programs… |
mindbody_get_active_client_memberships | Active memberships of a client with name, start and end date, remaining count and the programs they cover |
mindbody_get_client_contracts | Contracts (autopay agreements) of a client with name, start and end date, autopay schedule, amounts, status and whether it is suspended or… |
mindbody_get_client_purchases | Purchases of a client (sale items with description, amount, tax, payment and date) in a period |
mindbody_get_client_account_balances | Account balances of clients (positive is credit, negative is money owed) |
mindbody_get_contact_logs | Contact logs of a client (calls, emails, follow-ups) with type, text, assigned staff, follow-up date and whether it is complete |
mindbody_get_client_duplicates | Clients that match a first name, last name and email, to check for an existing profile before mindbody_add_client |
mindbody_get_required_client_fields | Which client fields the site requires when creating a client (for example email, phone, birth date, address) |
mindbody_get_sales | Sales in a period with sale id, date, client, location, purchased items (description, amount, discount, tax) and payments |
mindbody_get_services | Pricing options for sale (class packs, drop-ins, intro offers) with id, name, price, online price, tax, count, expiration and the program… |
mindbody_get_contracts | Contracts (memberships with autopay) that a location sells, with name, description, first payment, recurring amount and schedule |
mindbody_get_packages | Packages (bundles of services and products) for sale, with contents and price |
mindbody_get_products | Retail products with barcode id, name, price, online price, tax, category and color and size variants |
mindbody_get_transactions | Card and payment transactions in a period with transaction id, sale, client, location, amount, status and settlement |
mindbody_get_staff | Staff members with id, name, email, phone, bio, image, whether they teach classes or appointments and their availabilities |
mindbody_get_staff_session_types | Session types a staff member can perform, with duration and online booking settings |
mindbody_add_client_to_class | Book a client into a class |
mindbody_remove_client_from_class | Cancel a client's booking in a class. late_cancel true records it as a late cancel, which can use up a visit or charge a fee under the… |
mindbody_remove_from_waitlist | Remove clients from class waiting lists by waiting list entry id, for example when they no longer want a spot |
mindbody_add_appointment | Book an appointment for a client with a staff member at a location and time |
mindbody_update_appointment | Change an appointment (time, staff, session type, notes) or its state with execute: confirm, unconfirm, arrive, unarrive, cancel… |
mindbody_add_client | Create a client profile |
mindbody_update_client | Update a client profile. client holds the client id and only the fields to change, for example {"Id": "100000123", "Email"… |
mindbody_add_arrival | Check a client in at a location (arrival without a class or appointment), using an arrival pricing option |
mindbody_add_contact_log | Add a contact log to a client: a note about a call, email or visit, optionally assigned to staff with a follow-up date |
mindbody_add_client_to_enrollment | Enroll a client in an enrollment (workshop or course series), from a date onward or for the open dates |
mindbody_cancel_single_class | Cancel one class occurrence for everyone booked, optionally emailing clients and staff |
Example prompts
- "Which classes are on the schedule at our downtown location tomorrow, and how many spots are left in each?"
- "Book Anna Keller into tonight's 18:00 Vinyasa Yoga class. Check first that she has a pass that covers it."
- "Find a free 60 minute massage slot with any therapist on Saturday morning."
- "Show me the visits of the last 3 months, the active memberships and the account balance of the client [email protected]."
- "What were our total sales last week, broken down by location?"
FAQ
Does it work with Claude Code as well as Claude Desktop? Yes, point both at https://cloud.anythingmcp.com/mcp/YOUR_SERVER_ID.
Next steps
- Connector landing page
- Connect to ChatGPT
- Connect to Cursor
- Connect to Gemini
- Connect to Meta Muse
- Connect to Microsoft Copilot
Was this guide helpful?