Acuity Scheduling MCP server. Read appointments, types, calendars and availability; create, cancel or reschedule bookings.
Add to your MCP config, then reload & authorize:
{
"mcpServers": {
"acuity-scheduling": {
"url": "https://acuity-scheduling.usefulapi.io/mcp"
}
}
}| Tool | Type | What it does |
|---|---|---|
acuity_list_appointments | read | List appointments List appointments scheduled on the account, with optional filters. Acuity REST: GET /appointments. |
acuity_get_appointment | read | Get appointment Get a single appointment by its id. Acuity REST: GET /appointments/{id}. |
acuity_list_appointment_types | read | List appointment types List the account's appointment types (services and classes), including price, duration and calendars. Acuity REST: GET /appointment-types. |
acuity_list_calendars | read | List calendars List the account's calendars (staff/resources appointments can be booked on). Acuity REST: GET /calendars. |
acuity_availability_dates | read | Get available dates List dates in a month that have availability for an appointment type. Acuity REST: GET /availability/dates. |
acuity_availability_times | read | Get available times List available time slots on a given date for an appointment type. Acuity REST: GET /availability/times. |
acuity_availability_classes | read | Get available classes List group class time slots (for class-type appointment types) in a month. Acuity REST: GET /availability/classes. |
acuity_list_clients | read | List clients List clients on the account, optionally filtered by a search string (name/email/phone). Acuity REST: GET /clients. |
acuity_list_forms | read | List intake forms List the account's custom intake forms and their fields. Acuity REST: GET /forms. |
acuity_list_products | read | List products List the account's products / packages / gift certificates for sale. Acuity REST: GET /products. |
acuity_list_orders | read | List orders List store orders (product / package / gift-certificate purchases). Acuity REST: GET /orders. |
acuity_list_blocks | read | List blocked-off times List blocked-off (unavailable) time ranges on the account's calendars. Acuity REST: GET /blocks. |
acuity_list_labels | read | List labels List the appointment labels (colored tags) defined on the account. Acuity REST: GET /labels. |
acuity_get_me | read | Get account info Get the authenticated Acuity account's profile (name, email, timezone, plan, currency). Acuity REST: GET /me. |
acuity_create_appointment | write | Create appointment CREATES a new appointment (books a client into a time slot). This MODIFIES the calendar and, unless suppressed, may send confirmation emails. Acuity REST: POST /appointments. |
acuity_cancel_appointment | write | Cancel appointment CANCELS an existing appointment. This MODIFIES the calendar and, unless suppressed, may send cancellation emails. Acuity REST: PUT /appointments/{id}/cancel. |
acuity_reschedule_appointment | write | Reschedule appointment RESCHEDULES an existing appointment to a new time (and optionally a new calendar). This MODIFIES the calendar and, unless suppressed, may send update emails. Acuity REST: PUT /appointments/{id}/reschedule. |
acuity_create_client | write | Create client CREATES a new client record in the account's client list. This ADDS data to the account. Acuity REST: POST /clients. |
acuity_usage_status | Usage status (free-tier meter) Report the caller's current free-tier usage this month: calls used, monthly limit, remaining, and whether the cap is reached. Read-only; does not count against the meter. | |
acuity_upgrade | Upgrade to Pro (unlimited) Subscribe to the Pro plan for UNLIMITED Acuity Scheduling tool calls (the free tier caps monthly usage). Choose monthly ($9/month) or yearly ($90/year — 2 months free) billing. Returns a Stripe Checkout link to open in your browser; after payment your account upgrades automatically. Read-only; does not count against the meter. |
| Plan | Price | Limit |
|---|---|---|
| Free | $0 | 100 tool calls / month |
| Proper user | $9/mo · $90/yr | Unlimited |
This is a Model Context Protocol endpoint — meant to be connected from an AI client, not opened in a browser. An invalid_token response at the URL is the auth gate working as designed; clients authenticate automatically.