Reads genuinely open slots, reserves and books a meeting mid-conversation, reschedules or cancels when plans move, and reassigns a booking to a free colleague.
168actions available
Every action runs live through MCP. Nothing to build, nothing to maintain.
Ayro creates a Cal.com booking for an event type at a customer-specified time during conversation. Your customer walks away with a confirmed meeting on their calendar.
Ayro cancels an existing Cal.com booking instantly using its unique ID. Your team handles cancellations immediately without customers needing to find and click an email link.
Ayro checks free/busy availability for a calendar to find open slots during the conversation. Your customer hears available times in real time instead of playing email tag.
Each card is one request a support team gets, and the Cal actions Ayro runs to close it.
Ayro reads the open slots on the event type alongside the busy periods already on the connected calendar, so the times it offers are ones the person can genuinely take.
Ayro holds the slot while the last details are confirmed, creates the booking, and adds the extra attendee the customer wants on the call, so none of it goes back to email.
When a time stops working, Ayro reschedules the booking by its reference, cancels it where that is what was asked for, or reassigns it to a colleague who is free instead.
Ayro updates an availability schedule when someone's hours change, marks a booking absent when nobody showed, and confirms the pending one that has been sitting waiting on approval.
How it works
Connect once, then just ask. There is no workflow builder to learn and nothing to maintain — Ayro reads the Cal actions it has and picks the ones a request needs.
Authorize the Cal account your team already uses — one consent screen, no API keys, no mapping tables. Ayro can only do what you granted that account, and you can disconnect it at any time.
Describe the job the way you would hand it to a teammate. Ayro maps it to the Cal actions that close it and chains as many as the request needs.
The agent runs the actions inside the conversation the customer is already in, so nobody copies data between tabs and your team can take over at any point.
Get started freeCal · Ayro
What can you do in Cal without me setting anything up?
These, right away:
Great, let's start with the first one.
FAQ
Setup, permissions, and the limits of what Ayro can do inside Cal.
Yes. Retrieve Team Event Types returns the event types a team exposes, Get Team Bookings shows what is already on their calendar, and Get Team Routing Forms reads the routing form that decides where a request goes, so a booking follows the team's own routing rules.
All 168 actions your agent can call on Cal, straight from the live MCP connection.
Create a new attendee for an existing booking in Cal.com.
Adds a new member to a specified team within an organization by creating a team membership.
Adds a new option to an organization's SINGLE_SELECT or MULTI_SELECT attribute.
Cancels an existing and active Cal.com booking using its unique identifier (UID).
Retrieves free/busy availability for a specified calendar to aid scheduling without revealing event details; requires an existing, accessible calendar, noting that data granularity can vary.
Call this read-only action to verify the connection and synchronization status of a user's Google Calendar integration with Cal.
Checks an ICS feed URL (expected as a query parameter) to verify its validity, accessibility, and iCalendar data integrity.
Verifies if Stripe is correctly connected to the Cal scheduling system and functional for processing payments, reporting only on the integration's status.
Retrieves the Stripe integration status and related information for a team, primarily to verify account connection, subscription details, or payment setup; this is a read-only operation that does not modify Stripe settings.
Confirms an existing booking by bookingUid if the booking exists and is in a state allowing confirmation (e.g., not already cancelled or confirmed); this finalizes the booking, does not modify its details, and should typically be performed once.
Initiates or checks the external connection status for a specified calendar, possibly returning a redirect URL for user authorization to complete integration, without altering calendar data.
Creates a new membership for a user within a Cal.com organization.
Creates a new custom attribute for an existing organization, used to enhance data collection for event bookings or user profiles.
Create a new workflow for routing forms within an organization team.
Creates a webhook for an organization that sends HTTP POST notifications to a specified URL when triggered by events (e.g., booking created, cancelled, meeting started).
Creates a new team profile, or updates one if a 'slug' matches, customizing branding, scheduling, privacy, and operational details.
Schedules a phone call event in Cal.com using existing eventType, organization, and team IDs; this action only registers the event details and does not initiate the actual phone call.
Configures Cal.ai phone call automation for a team event type, enabling AI-powered outbound calls for appointment reminders or custom conversations.
Creates a new event type for a specified team in Cal.com; ensure teamId, any provided scheduleId, hosts.userId, and destinationCalendar details are valid and accessible.
Creates a highly customizable Cal.com team event type with extensive scheduling, booking, and host assignment options; schedulingType is required, lengthInMinutes must be included in lengthInMinutesOptions, destination calendar details (from /api/v2/calendars) must be valid if provided, and host User IDs must be valid team members.
Creates a new team with customizable attributes within an existing and accessible Cal.com organization specified by orgId.
Creates a shareable invite link for a Cal.com team that allows new members to join.
Adds a user to a team with a specified role, acceptance status, and impersonation settings; ensure teamId and userId refer to existing, valid entities.
Creates a Cal.com user availability schedule, defining its name, timezone, weekly recurring availability, and specific date overrides; if isDefault is true, this schedule replaces any existing default and applies to event types not linked to a specific schedule.
Creates a new schedule defining a user's availability with weekly slots and date-specific overrides in an organization; setting 'isDefault' to true may replace an existing default schedule for the user.
Creates a webhook for an existing eventTypeId in Cal.com, sending notifications for specified triggers to a subscriberUrl that handles POST requests.
Declines a pending booking using its bookingUid, optionally with a reason; this action is irreversible and applies only to bookings awaiting confirmation.
Permanently deletes all webhooks associated with a specific team event type.
Disconnects the specified conferencing application (e.g., 'zoom', 'google_meet') for the Cal.com account, immediately terminating any ongoing call or meeting; use with caution.
Remove an existing destination calendar by its unique ID.
Same connection, same setup. Pick the next one your team already uses.
Reports what a property portfolio contains, creates properties and units in bulk, maintains unit groups and attributes, and moves properties test to live.
Checks live availability, amends confirmed stays, reconciles linked calendars, and keeps listing attributes accurate mid-conversation.
Checks open times, issues single-use scheduling links, cancels bookings, marks no-shows, and reads routing form answers.
Answers attendee questions from the live roster, sends event invitations, adjusts sessions and halls, and keeps sponsor records current.
Checks property and room-type availability, captures enquiries and callback requests, triages the reservations inbox, and reconciles channel bookings.
Checks which slots are genuinely free, books one with the guest's details attached, creates the contact behind it, and handles cancellations and no-shows.

Authorize the account and your agent has all 168 actions from the first conversation.
