acuity-scheduling
What this MCP does
Manages Acuity Scheduling calendars, clients, appointment types, availability, bookings, cancellations, and rescheduling.
Tools
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['appointmentTypeID', 'month'], 'properties': {'month': {'type': 'string', 'description': "Month to check, formatted YYYY-MM, e.g. '2026-08'."}, 'timezone': {'type': 'string', 'description': "IANA timezone for the returned times, e.g. 'America/New_York'."}, 'appointmentTypeID': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Class appointment type id (required).'}, 'includeUnavailable': {'type': 'boolean', 'description': 'If true, also include full/unavailable class times.'}}}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['appointmentTypeID', 'month'], 'properties': {'month': {'type': 'string', 'description': "Month to check, formatted YYYY-MM, e.g. '2026-08'."}, 'timezone': {'type': 'string', 'description': "IANA timezone for the returned dates, e.g. 'America/New_York'."}, 'calendarID': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Restrict to a specific calendar id.'}, 'appointmentTypeID': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Appointment type id to check availability for (required).'}}}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['appointmentTypeID', 'date'], 'properties': {'date': {'type': 'string', 'description': "Date to check, formatted YYYY-MM-DD, e.g. '2026-08-15'."}, 'timezone': {'type': 'string', 'description': "IANA timezone for the returned times, e.g. 'America/New_York'."}, 'calendarID': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Restrict to a specific calendar id.'}, 'appointmentTypeID': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Appointment type id to check availability for (required).'}}}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['id'], 'properties': {'id': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Appointment id to cancel (required).'}, 'admin': {'type': 'boolean', 'description': 'If true, cancel as admin (bypasses client cancellation restrictions).'}, 'noEmail': {'type': 'boolean', 'description': 'If true, suppress cancellation emails.'}, 'cancelNote': {'type': 'string', 'description': 'Optional note explaining the cancellation.'}}}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['appointmentTypeID', 'datetime', 'firstName', 'lastName', 'email'], 'properties': {'admin': {'type': 'boolean', 'description': 'If true, book as admin — bypasses availability checks and required-form enforcement. Default false.'}, 'email': {'type': 'string', 'description': 'Client email (required).'}, 'notes': {'type': 'string', 'description': 'Notes to attach to the appointment.'}, 'phone': {'type': 'string', 'description': 'Client phone number.'}, 'fields': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'value'], 'properties': {'id': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Intake form field id.'}, 'value': {'type': 'string', 'description': 'Field value.'}}}, 'description': 'Intake form field answers, each { id, value }.'}, 'noEmail': {'type': 'boolean', 'description': 'If true, suppress client/owner confirmation emails.'}, 'datetime': {'type': 'string', 'description': "Start time in ISO 8601 with offset, e.g. '2026-08-15T14:00:00-0400' (required)."}, 'lastName': {'type': 'string', 'description': 'Client last name (required).'}, 'timezone': {'type': 'string', 'description': "IANA timezone for the datetime, e.g. 'America/New_York'."}, 'firstName': {'type': 'string', 'description': 'Client first name (required).'}, 'calendarID': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Calendar id to book on (defaults to an available one).'}, 'appointmentTypeID': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Appointment type id to book (required).'}}}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['firstName', 'lastName'], 'properties': {'email': {'type': 'string', 'description': 'Client email.'}, 'notes': {'type': 'string', 'description': 'Notes about the client.'}, 'phone': {'type': 'string', 'description': 'Client phone number.'}, 'lastName': {'type': 'string', 'description': 'Client last name (required).'}, 'firstName': {'type': 'string', 'description': 'Client first name (required).'}}}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['id'], 'properties': {'id': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Appointment id.'}}}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {}}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'max': {'type': 'integer', 'maximum': 1000, 'minimum': 1, 'description': 'Max appointments to return.'}, 'email': {'type': 'string', 'description': 'Filter by client email.'}, 'maxDate': {'type': 'string', 'description': 'Only appointments on/before this date (YYYY-MM-DD or ISO datetime).'}, 'minDate': {'type': 'string', 'description': 'Only appointments on/after this date (YYYY-MM-DD or ISO datetime).'}, 'canceled': {'type': 'boolean', 'description': 'If true, return canceled appointments (default false).'}, 'lastName': {'type': 'string', 'description': 'Filter by client last name.'}, 'direction': {'enum': ['ASC', 'DESC'], 'type': 'string', 'description': 'Sort order by datetime. ASC (default) or DESC.'}, 'firstName': {'type': 'string', 'description': 'Filter by client first name.'}, 'calendarID': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Filter to a specific calendar id.'}, 'appointmentTypeID': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Filter to a specific appointment type id.'}}}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'includeDeleted': {'type': 'boolean', 'description': 'If true, also include deleted/inactive appointment types.'}}}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'max': {'type': 'integer', 'maximum': 1000, 'minimum': 1, 'description': 'Max blocks to return.'}, 'maxDate': {'type': 'string', 'description': 'Only blocks on/before this date (YYYY-MM-DD or ISO datetime).'}, 'minDate': {'type': 'string', 'description': 'Only blocks on/after this date (YYYY-MM-DD or ISO datetime).'}, 'calendarID': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Filter to a specific calendar id.'}}}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {}}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'search': {'type': 'string', 'description': 'Optional search string to match client name, email, or phone.'}}}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {}}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {}}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'max': {'type': 'integer', 'maximum': 1000, 'minimum': 1, 'description': 'Max orders to return.'}, 'email': {'type': 'string', 'description': 'Filter orders by buyer email.'}}}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {}}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['id', 'datetime'], 'properties': {'id': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Appointment id to reschedule (required).'}, 'admin': {'type': 'boolean', 'description': 'If true, reschedule as admin (bypasses availability checks).'}, 'noEmail': {'type': 'boolean', 'description': 'If true, suppress reschedule emails.'}, 'datetime': {'type': 'string', 'description': "New start time in ISO 8601 with offset, e.g. '2026-08-16T10:00:00-0400' (required)."}, 'calendarID': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Move the appointment to this calendar id.'}}}
Recent tool changes
Similar MCP servers
freedom-mcp
Supports company operations through commitments, teams, agents, customer evidence, leads, content workflows, spreadsheets, commer…
Stable Baseline
Manages company documents, knowledge graphs, whiteboards, projects, plans, tasks, teams, and improvement workflows.
mcp
Manages Nestr workspaces, roles, circles, tensions, governance proposals, comments, daily plans, graph relationships, agents, and…
TaScan
Manages field-service projects, workers, task lists, subtasks, dispatch, geofenced work zones, inspections, remediation workflows…
Tango
Manages shared work between humans and agents through tasks, leases, handoffs, approvals, artifacts, comments, integrations, prog…
AIOProductOS MCP
Combines customer records, support conversations, feedback, product analytics, roadmaps, tasks, experiments, releases, and retent…
agendaforge
Manages events, agendas, sessions, speakers, attendees, sponsors, forms, contacts, email templates, approvals, and organizer work…
Refine Job Search
Tracks job applications, interviews, offers, recruiter email, and company openings, with Gmail synchronization and workflow actio…