100+ integrations are ready to connect to your AI.Connect your first MCP

Acuity Scheduling MCP server for your AI

Book, reschedule and cancel appointments, check what's actually bookable before writing, block off calendar time, look up client records, and edit an appointment's intake answers.

PopMCPAcuity Scheduling

Show me next week's appointments by staff calendar and flag any with unpaid balances

Supported Acuity Scheduling tools

Every appointment, availability, client, block, certificate, order and webhook call your agent can make, plus the events it can watch for.

acuity_cancel_appointment

Cancel an appointment.

acuity_create_appointment

Book a new appointment.

acuity_get_appointment

Get a single appointment by its numeric id.

acuity_list_appointment_payments

List the payment transactions recorded against an appointment.

acuity_list_appointments

List appointments scheduled for the account.

acuity_reschedule_appointment

Move an appointment to a new time.

acuity_update_appointment

Update an appointment's client details and intake-form answers (a white-list of fields).

acuity_check_times

Validate whether specific time slots are still bookable, before creating an appointment.

acuity_create_block

Block off a range of time on a calendar so it can't be booked.

acuity_create_certificate

Issue a certificate code.

acuity_create_client

Create a client record.

acuity_delete_block

Delete a blocked-off time range (frees the time for booking again).

acuity_delete_client

Delete a client.

acuity_list_availability_classes

List scheduled group class instances (offerings) and their available spots.

acuity_list_availability_dates

List the bookable dates in a month for an appointment type.

acuity_list_availability_times

List the bookable time slots on a date for an appointment type.

acuity_list_blocks

List blocked-off time ranges (times marked unavailable for booking).

acuity_list_certificates

List issued certificate codes (redeemable package/coupon/gift-certificate codes).

acuity_list_clients

List (or search) the account's clients.

acuity_update_client

Update a client.

acuity_create_webhook

Subscribe to an Acuity event.

acuity_delete_webhook

Delete (unsubscribe) a webhook subscription by id.

acuity_list_webhooks

List the account's active webhook subscriptions.

acuity_get_account

Get the authenticated Acuity account profile: business name, email, timezone, currency, and plan.

acuity_list_appointment_types

List the account's appointment types (services and classes).

acuity_list_forms

List the account's intake forms.

acuity_list_labels

List the appointment labels defined for the account.

acuity_list_orders

List orders (product/package/gift-certificate purchases).

acuity_list_calendars

List the account's calendars (staff members / resources / locations).

acuity_check_certificate

Validate a certificate code for an appointment type (e.g.

acuity_delete_certificate

Delete an issued certificate by its numeric id.

acuity_get_block

Get a single blocked-off time range by id.

acuity_get_meta

Get account-level metadata for Acuity services.

acuity_get_order

Get a single order by its id.

acuity_list_appointment_addons

List appointment add-on products that can be attached to a booking via addonIDs.

acuity_list_products

List the account's products: packages, subscriptions, and gift certificates available for sale.

Connect Acuity Scheduling to your AI

Credentials off one Acuity Scheduling screen, then an endpoint your client signs into. Nothing to deploy, and nothing to install.

Paste the User ID and API Key from Acuity's Bizz Settings > Integrations > API screen; both sit on one page, with no OAuth popup or redirect URL. The key is scoped to one account, so the server is locked to it.

User IDe.g. 11145481
API Key••••••••••••3f7a
ConnectionVerified

Then just ask for the work

  • Show me next week's appointments by staff calendar and flag any with unpaid balances

    • list_calendars
    • list_appointments
    • list_appointment_payments
  • Move all of Friday's 9am consults to the same slot next Tuesday

    • list_appointments
    • check_times
    • reschedule_appointment
  • Add Priya as a client and book her into the 60-minute massage on Tuesday

    • create_client
    • list_appointment_types
    • list_availability_times
    • create_appointment
  • Which clients bought a package last month but haven't booked a single session yet

    • list_orders
    • list_clients
    • list_appointments

Use Acuity Scheduling from the assistant you already open

One hosted endpoint, registered once per client. The same tools and the same permissions, whichever window the request comes from.

Claude DesktopCustom connector

Add the PopMCP URL under Settings → Connectors and the tools appear in every chat.

Claude WebCustom connector

The same endpoint, registered in the browser. Nothing to install on the machine you are working from.

ChatGPTCustom connector

Register PopMCP as a custom connector, then let ChatGPT read and update the account.

CodexDesktop & CLI

Wire the endpoint into Codex or the Codex CLI when a task needs live business context, not a fixture.

OpenCodeCoding agent

Register the remote MCP server in OpenCode's config for terminal-first and scripted agent runs.

ZCodeDesktop app

Add PopMCP as an MCP server in Z.ai's desktop app and work the account from the same window.

Acuity Scheduling MCP server questions

What teams ask before putting Acuity Scheduling behind an AI client.

Does connecting Acuity Scheduling need an OAuth app or a redirect URL?

No. You copy a User ID and an API Key from Acuity's Bizz Settings > Integrations > API screen and paste both into the connect form. There is no OAuth popup, no redirect URL to register and no token refresh to maintain; authentication happens server-side over HTTPS using HTTP Basic. The key is scoped to a single Acuity account, so the connection is locked to that account.

Can the agent edit an appointment that already exists?

Yes, but Acuity splits the job across three calls, and that is the thing people trip on. acuity_update_appointment handles client details and intake-form answers only, against a white-list of fields; moving a booking to a new day or time is acuity_reschedule_appointment; calling it off is acuity_cancel_appointment. Asking one generic update to do all three will not work.

How does the agent avoid booking a slot that has already gone?

Availability is exposed as separate reads: acuity_list_availability_dates for the bookable dates in a month, acuity_list_availability_times for the slots on a given date, and acuity_list_availability_classes for group class instances and their remaining spots. Before writing, acuity_check_times re-validates specific slots. Have the agent check times immediately before acuity_create_appointment, since availability moves between the read and the write.

Does this cover classes, packages and gift certificates, or only one-to-one bookings?

All of them. acuity_list_appointment_types returns both services and classes, acuity_list_products covers packages, subscriptions and gift certificates offered for sale, and acuity_list_orders with acuity_get_order covers what clients actually bought. Redeemable codes have their own calls for issuing, validating, listing and deleting.

What destructive actions can the agent take, and how do I hold them back?

The write side includes cancelling appointments, deleting clients, deleting blocked-off time, deleting issued certificates and removing webhook subscriptions. Read-only mode keeps all of those out of reach entirely. Full access with approval-required-for-writes leaves them available but holds each call for your confirmation, while reads such as listing appointments or clients run untouched.

Which Acuity events can PopMCP watch, and how many are there?

Fourteen. Six come through Acuity's own webhooks: appointment booked, rescheduled, cancelled and details changed, plus order completed and gift certificate issued. The other eight are change detection over the account - new client added, order placed, time blocked off, appointment type added, product added, calendar added, intake form changed and certificate code added. The agent can also manage subscriptions directly with acuity_create_webhook, acuity_list_webhooks and acuity_delete_webhook.

Do I have to run or host the Acuity Scheduling MCP server myself?

No. PopMCP hosts it and gives you a Streamable HTTP MCP URL. There is nothing to deploy, no callback URL to register, and no infrastructure to keep running or patch.

Which AI clients can use this MCP server?

Any client that supports a remote Streamable HTTP MCP server — Claude Desktop, Claude Web, ChatGPT custom connectors, Codex and the Codex CLI, OpenCode and Z.ai's ZCode, as well as editors such as Cursor, Windsurf and Zed. Your client signs in to PopMCP with OAuth; the provider credential never leaves the server.

Why do only 29 of the 36 tools load by default?

Loading 36 tool definitions into every conversation burns context before the work starts. PopMCP loads a curated 29-tool set covering the everyday workflows and keeps the rest searchable, so your AI pulls a specialist tool only when a task needs it. You can switch a connection to the full catalog at any time.

What is the difference between a tool and a trigger?

A tool is something your AI calls — there are 36 here. A trigger is something PopMCP watches for you: 14 Acuity Scheduling events that can start work on the PopMCP side. Triggers never enter your AI client's context, and none of them ask you to paste a callback URL into Acuity Scheduling.

Connect Acuity Scheduling to your AI in minutes

Launch a hosted MCP endpoint for Acuity Scheduling, keep tool access under control, and start testing real workflow prompts right away.

Connect your first MCP