# CalendlyApi import StarterToolInfo from "@/app/_components/starter-tool-info"; import ToolInfo from "@/app/_components/tool-info"; import Badges from "@/app/_components/badges"; import TabbedCodeBlock from "@/app/_components/tabbed-code-block"; import TableOfContents from "@/app/_components/table-of-contents"; import ToolFooter from "@/app/_components/tool-footer"; import { Callout } from "nextra/components"; The CalendlyApi MCP Server offers a comprehensive suite of tools for managing scheduling and event-related tasks within Calendly. Users can easily build agents and applications that can: ## Available Tools If you need to perform an action that's not listed here, you can [get in touch with us](mailto:contact@arcade.dev) to request a new tool, or [create your own tools](/guides/create-tools/tool-basics/build-mcp-server). ## CalendlyApi.ListEventInvitees
Retrieve a list of invitees for a given event. **Parameters** - **event_uuid** (`string`, required) The unique identifier for the event whose invitees are being retrieved. - **filter_by_email** (`string`, optional) Specify an email address to filter invitees by email. - **invitee_status** (`string`, optional) Filter invitees by their status: 'active' for current invitees or 'canceled' for those who have canceled. - **number_of_invitees_to_return** (`number`, optional) Specifies the number of invitee rows to return in the response. - **pagination_token** (`string`, optional) A token to retrieve the next or previous page of invitees. Useful for paginated responses. - **sort_order_by_created_at** (`string`, optional) Specify the order of results based on the creation date as 'asc' for ascending or 'desc' for descending. ## CalendlyApi.ListScheduledEvents
Retrieve a list of scheduled events from Calendly. **Parameters** - **event_status** (`string`, optional) Indicate if the event is 'active' or 'canceled'. - **events_sort_order** (`string`, optional) Specify sorting order for events. Use 'start_time:asc' or 'start_time:desc'. - **group_uri** (`string`, optional) URI of the group to fetch scheduled events for. Requires admin/owner or group admin privilege. - **invitee_email** (`string`, optional) Email address of the invitee to filter and return related scheduled events. - **max_start_time_utc** (`string`, optional) Include events with start times prior to this UTC time. Format: YYYY-MM-DDTHH:MM:SS.ssssssZ - **min_start_time** (`string`, optional) Include events starting after this UTC time. Format: "2020-01-02T03:04:05.678123Z". - **number_of_rows_to_return** (`number`, optional) Specify the number of event entries to retrieve. - **organization_uri** (`string`, optional) URI of the organization to retrieve scheduled events for. Requires admin/owner privileges. - **pagination_token** (`string`, optional) Token for navigating to the next or previous set of scheduled events. - **user_uri** (`string`, optional) URI identifying the user for whom to return scheduled events. Use alone for personal events or with 'organization' for specific user events within an organization. ## CalendlyApi.ListEventTypes
Fetches event types for a specified user or organization. **Parameters** - **number_of_event_types_to_return** (`number`, optional) The number of event types to return. Specify the desired count of returned rows. - **only_admin_managed** (`boolean`, optional) Return only admin managed event types if true, exclude them if false, or include all if omitted. - **organization_uri** (`string`, optional) URI to view available personal, team, and organization event types. - **pagination_token** (`string`, optional) Token to retrieve the next or previous set of event types in pagination. - **return_active_event_types_only** (`boolean`, optional) Set to true to return only active event types, false for only inactive, or omit to include all event types. - **sort_event_types_by** (`string`, optional) Specify field and direction to order results. Use `field:asc` or `field:desc`. Fields: name, position, created_at, updated_at. - **user_availability_schedule_filter** (`string`, optional) Filters event types by the given primary availability schedule when used with the 'user' parameter. - **user_uri** (`string`, optional) The user's URI to view associated personal, team, and organization event types. ## CalendlyApi.CreateEventType
Create a new one-on-one event type in Calendly. **Parameters** - **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation - **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' ## CalendlyApi.GetCalendlyUserInfo
Retrieve user information from Calendly. **Parameters** - **user_unique_identifier** (`string`, required) The unique identifier of the user. Use 'me' to reference the caller. ## CalendlyApi.GetUserAccountInfo
Retrieve basic information about the current Calendly user. **Parameters** This tool does not take any parameters. ## CalendlyApi.GetEventInviteeInfo
Fetch information about a specific event invitee. **Parameters** - **event_unique_identifier** (`string`, required) The unique identifier for the specific Calendly event. Use this to specify which event's invitee details to retrieve. - **invitee_unique_identifier** (`string`, required) The unique identifier of the invitee for a specific event. ## CalendlyApi.CreateEventInvitee
Create a new event invitee on Calendly. **Parameters** - **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation - **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' ## CalendlyApi.GetEventDetails
Retrieve information about a specified scheduled event. **Parameters** - **event_unique_identifier** (`string`, required) The unique identifier for the event to retrieve details. ## CalendlyApi.GetEventTypeInfo
Retrieve information about a specified event type on Calendly. **Parameters** - **event_type_uuid** (`string`, required) The unique identifier (UUID) for the event type to be retrieved. ## CalendlyApi.UpdateEventType
Update details of an existing event type with Calendly. **Parameters** - **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation - **event_type_uuid** (`string`, optional) The unique identifier for the event type to be updated. This is essential for specifying which one-on-one event type you intend to modify. Required when mode is 'execute', ignored when mode is 'get_request_schema'. - **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' ## CalendlyApi.ListOrganizationInvitations
Retrieve organization invitations sent to members. **Parameters** - **organization_unique_identifier** (`string`, required) The unique identifier for the organization to retrieve invitations for. - **filter_by_email** (`string`, optional) Email address to filter the results of organization invitations. - **filter_by_status** (`string`, optional) Filter results by invitation status: 'pending', 'accepted', or 'declined'. - **pagination_token** (`string`, optional) Token for fetching the next or previous set of organization invitations. - **rows_to_return** (`number`, optional) Specify the number of organization invitation records to retrieve in the request. - **sort_order** (`string`, optional) Specify the field and direction (ascending or descending) for sorting results. Format: `field:asc` or `field:desc`. Use a comma-separated list for multiple criteria. ## CalendlyApi.InviteUserToOrganization
Invite a user to join an organization. **Parameters** - **organization_unique_identifier** (`string`, required) The unique identifier for the organization to which the user is being invited. - **user_email** (`string`, required) The email address of the user to be invited to the organization. ## CalendlyApi.RevokeOrganizationInvitation
Revoke an organization invitation in Calendly. **Parameters** - **invitation_unique_identifier** (`string`, required) The unique identifier for the organization invitation to be revoked. - **organization_unique_identifier** (`string`, required) The organization's unique identifier required to revoke the invitation. ## CalendlyApi.GetOrganizationInvitation
Fetches details of an organization's invitation. **Parameters** - **organization_invitation_uuid** (`string`, required) The unique identifier of the organization's invitation. Provide this to retrieve specific invitation details. - **organization_unique_id** (`string`, required) The unique identifier for the organization. ## CalendlyApi.GetOrganizationMembershipInfo
Retrieve details about a user's organization membership in Calendly. **Parameters** - **organization_membership_uuid** (`string`, required) The unique identifier for the organization's membership to retrieve details for a user. ## CalendlyApi.RemoveUserFromOrganization
Remove a user from an organization with admin rights. **Parameters** - **organization_membership_unique_id** (`string`, required) The unique identifier for the organization membership to be removed. ## CalendlyApi.GetOrganizationMemberships
Retrieve organization memberships and related details. **Parameters** - **filter_by_email** (`string`, optional) A specific email address to filter the organization memberships by. Only memberships associated with this email will be returned. - **filter_by_organization** (`string`, optional) Filter the results by organization. Provide the organization's unique identifier or name to retrieve specific memberships. - **filter_by_role** (`string`, optional) Filter the results by role. Options: 'owner', 'admin', 'user'. - **filter_by_user** (`string`, optional) Filter the results by a specific user. Provide the user's identifier to narrow the search. - **next_page_token** (`string`, optional) Token used to retrieve the next or previous set of results for paginated data. - **number_of_rows_to_return** (`number`, optional) Specify the number of rows to return in the response. ## CalendlyApi.CreateWebhookSubscription
Create a webhook subscription for events in Calendly. **Parameters** - **callback_url** (`string`, required) The endpoint URL to receive POST requests for subscribed events in Calendly. - **event_subscriptions** (`array[string]`, required) List of user events to subscribe to. Examples include 'invitee.created', 'invitee.canceled', etc. - **organization_reference** (`string`, required) The unique reference identifier for the organization associated with the webhook. - **webhook_subscription_scope** (`string`, required) Specifies the scope of the webhook subscription: "organization", "user", or "group". - **group_reference** (`string`, optional) The unique reference to the group that the webhook will be tied to. - **user_reference** (`string`, optional) The unique reference or ID of the user for whom the webhook will be tied. - **webhook_signing_key** (`string`, optional) Optional secret key shared between your application and Calendly for verifying webhook signatures. Useful for ensuring webhook messages' authenticity. ## CalendlyApi.ListWebhookSubscriptions
Retrieve webhook subscriptions for an organization or user. **Parameters** - **filter_scope** (`string`, required) Filter the list by organization, user, or group. Acceptable values are 'organization', 'user', or 'group'. - **organization_id** (`string`, required) The ID of the organization that owns the subscriptions being returned. This field is always required. - **filter_by_group** (`string`, optional) Optional; filters the results by group when scope is set to 'group'. - **filter_by_user** (`string`, optional) Filter results by user when 'scope' is set to 'user'. - **number_of_rows_to_return** (`number`, optional) Specify the number of rows to be returned in the result set. - **pagination_token** (`string`, optional) The token to retrieve the next or previous portion of the collection. - **sort_by_field_and_direction** (`string`, optional) Specify the field and direction to order results. Use `created_at:asc` or `created_at:desc`. ## CalendlyApi.GetWebhookSubscription
Retrieve details of a specific webhook subscription. **Parameters** - **webhook_identifier** (`string`, required) The unique identifier of the webhook subscription to retrieve. ## CalendlyApi.DeleteWebhookSubscription
Delete a webhook subscription on Calendly. **Parameters** - **webhook_uuid** (`string`, required) The unique identifier for the webhook subscription to be deleted. This is required to specify which subscription will be removed. ## CalendlyApi.CreateSchedulingLink
Creates a single-use scheduling link for appointments. **Parameters** - **maximum_event_count** (`number`, required) The maximum number of events that can be scheduled using this link. Currently, only '1' is supported. - **resource_owner_link** (`string`, required) A link to the resource owning this scheduling link, typically an Event Type URL. - **resource_type** (`string`, required) Resource type for the scheduling link. This is always 'EventType'. ## CalendlyApi.DeleteInviteeData
Request removal of invitee data from all booked events. **Parameters** - **invitee_email_list** (`array[string]`, required) A list of invitee emails to remove data for from all booked events. Each entry should be a valid email address. ## CalendlyApi.GetInviteeNoShowDetails
Fetch details of a specified invitee no-show. **Parameters** - **invitee_uuid** (`string`, required) The unique identifier for the invitee whose no-show information is being requested. ## CalendlyApi.UndoInviteeNoShowStatus
Undo the no-show status for a Calendly invitee. **Parameters** - **invitee_unique_id** (`string`, required) The unique identifier for the invitee whose no-show status is to be undone. ## CalendlyApi.MarkInviteeNoShow
Mark an invitee as a no show in Calendly. **Parameters** - **invitee_id** (`string`, optional) The unique identifier for the invitee to be marked as a no show. This is required to specify which invitee did not attend. ## CalendlyApi.GetGroupInfo
Retrieve information about a specified group in Calendly. **Parameters** - **group_unique_identifier** (`string`, required) A unique identifier for the group whose information is to be retrieved from Calendly. ## CalendlyApi.ListGroupRelationships
Retrieve a list of group relationships for a given owner. **Parameters** - **filter_by_group** (`string`, optional) Filter results by a specific group using a group identifier. - **filter_by_organization** (`string`, optional) Filter results by organization. Provide the organization ID or URI to narrow down the list of group relationships. - **filter_by_owner_uri** (`string`, optional) The URI to filter results by owner, either an Organization Membership URI or Organization Invitation URI. - **number_of_rows** (`number`, optional) Specify the number of rows to return in the response. - **pagination_token** (`string`, optional) Token to navigate to the next or previous portion of the collection. ## CalendlyApi.GetGroupRelationshipByUuid
Retrieve group relationship details using a UUID. **Parameters** - **group_relationship_uuid** (`string`, required) The unique identifier (UUID) of the group relationship to retrieve details for. Use this to specify which relationship to fetch. ## CalendlyApi.GetOrganizationDetails
Retrieve details of a specified organization using UUID. **Parameters** - **organization_uuid** (`string`, required) The unique identifier for the organization to retrieve details. ## CalendlyApi.CancelScheduledEvent
Cancels a specified scheduled event on Calendly. **Parameters** - **event_unique_identifier** (`string`, required) The unique identifier for the event to be canceled. - **cancellation_reason** (`string`, optional) The reason for canceling the event. Provide a clear and concise explanation. ## CalendlyApi.ListRoutingForms
Retrieve routing forms for a specified organization. **Parameters** - **organization_uri** (`string`, required) The URI of the organization to view its routing forms. It should be a valid string representing the organization's endpoint. - **number_of_rows** (`number`, optional) The number of routing form entries to return for the request. - **pagination_token** (`string`, optional) Token for fetching the next or previous portion of the routing forms collection. - **sort_order** (`string`, optional) Specify the order of results using field and direction. Format: `created_at:asc` or `created_at:desc`. Use comma for multiple fields. ## CalendlyApi.GetRoutingForm
Retrieve details of a specified routing form. **Parameters** - **routing_form_uuid** (`string`, required) A unique identifier for the routing form to be retrieved. ## CalendlyApi.ListRoutingFormSubmissions
Get a list of Routing Form Submissions for a specified form. **Parameters** - **routing_form_uri** (`string`, required) The URI of the routing form to view its submissions. This specifies which form's submissions to retrieve. - **number_of_rows_to_return** (`nu∫mber`, optional) Specify the number of routing form submissions to return. - **pagination_token** (`string`, optional) Token for retrieving the next or previous set of form submissions. - **sort_order** (`string`, optional) Specify field and direction to sort results. Format: `created_at:asc` or `created_at:desc`.b**∫** ## CalendlyApi.GetRoutingFormSubmission
Retrieve a specified Routing Form Submission by UUID. **Parameters** - **submission_uuid** (`string`, required) Unique identifier for the routing form submission to be retrieved. ## CalendlyApi.ListAvailableEventTimes
Retrieve available times for an event type within a date range. **Parameters** - **availability_end_time** (`string`, required) End time for the availability range, must be after the start time. - **availability_start_time** (`string`, required) The start time for the availability range. Must be a future date, not in the past. - **event_type_uri** (`string`, required) The URI associated with the event type to retrieve its available times. ## CalendlyApi.ListActivityLogEntries
Fetch a list of activity log entries. **Parameters** - **organization_uri** (`string`, required) URI of the organization to filter activity log entries. - **actions** (`array[string]`, optional) Specify one or more actions associated with the log entries. Accepts an array of strings. - **entry_categories** (`array[string]`, optional) Specify the categories of log entries to filter the results. This is an array of strings, each representing a category. - **filter_by_search_term** (`string`, optional) Filters entries using supported operators: `|`, `+`, `"`, `-`, `()`, `*`. For example, `this | that` or `(email) + (signup)`. - **include_entries_after** (`string`, optional) Include entries that occurred after this time. Use format: "YYYY-MM-DDTHH:MM:SS.sssZ" (UTC). - **max_occurred_at_time** (`string`, optional) Include entries that occurred prior to this UTC time in the format "YYYY-MM-DDTHH:MM:SS.SSSZ". - **number_of_rows_to_return** (`integer`, optional) Specifies the number of activity log entries to return in the response. - **pagination_token** (`string`, optional) Token to get the next portion of the activity log collection. - **sort_order** (`array[string]`, optional) Specify the field and direction to sort results. Format: `field:asc` or `field:desc`. - **user_associated_uris** (`array[string]`, optional) Return entries from the user(s) associated with the provided URIs. This should be an array of strings representing the URIs of users. ## CalendlyApi.CreateCustomShareLink
Create a shareable link for a customized event. **Parameters** - **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation - **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' ## CalendlyApi.ListUserBusyTimes
Retrieve user's scheduled events within a specific date range. **Parameters** - **availability_start_time** (`string`, required) Start time for the availability range. The date must not be in the past. - **end_time** (`string`, required) End time for the requested availability range, must be after the start_time. - **user_uri** (`string`, required) The URI associated with the user to retrieve busy times for. ## CalendlyApi.GetUserAvailabilitySchedules
Fetch a user's availability schedules. **Parameters** - **user_uri_reference** (`string`, required) A URI reference to the specified user whose availability schedules are to be retrieved. ## CalendlyApi.GetUserAvailabilitySchedule
Retrieve a user's availability schedule using their UUID. **Parameters** - **user_uuid** (`string`, required) The UUID of the availability schedule you want to retrieve. ## CalendlyApi.DeleteScheduledEventsData
Delete scheduled events data within a past time range. **Parameters** - **deletion_start_time_utc** (`string`, required) The UTC timestamp to start deleting scheduled events data. Must be in the past and not older than 24 months. - **end_time_utc** (`string`, required) The UTC timestamp marking the end of the time range for data deletion, in the past, no greater than 24 months ago. ## CalendlyApi.FetchEventTypeHosts
Fetches a list of event type hosts from Calendly. **Parameters** - **event_type_uri** (`string`, required) The URI associated with the event type to identify the hosts. - **number_of_rows_to_return** (`number`, optional) Specify the number of rows to fetch from the list of event type hosts. This determines the size of the dataset returned. - **pagination_token** (`string`, optional) Token for fetching the next or previous portion of the event type host list. ## CalendlyApi.CreateOneOffEvent
Create a one-off event type in Calendly. **Parameters** - **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation - **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' ## CalendlyApi.GetSampleWebhookData
Retrieve sample webhook data for testing integrations. **Parameters** - **organization_identifier** (`string`, required) The unique identifier for the organization. It specifies which organization the sample webhook data belongs to. - **webhook_event_type** (`string`, required) Specify the type of webhook event to simulate, such as 'invitee.created' or 'invitee.canceled'. - **webhook_scope** (`string`, required) Specify the scope for the sample webhook data. Options are 'user', 'organization', or 'group'. - **user_identifier** (`string`, optional) The unique identifier for a user in Calendly whose webhook data you want to test. - **webhook_event_group** (`string`, optional) Specify the group for the webhook event to categorize and filter data. Typically used for organizing related webhooks. ## CalendlyApi.FetchOutgoingCommunications
Retrieve outgoing SMS and email communications. **Parameters** - **organization_uri** (`string`, required) Return outgoing communications from the organization associated with this URI. This should be a valid URI string. - **created_before** (`string`, optional) Include outgoing communications created before this time in UTC format (e.g., "2020-01-02T03:04:05.678Z"). - **number_of_records_to_return** (`integer`, optional) The maximum number of outgoing communications records to retrieve. - **pagination_token** (`string`, optional) Token for fetching the next set of outgoing communications. - **start_time_utc** (`string`, optional) Include communications created after this UTC time (e.g. "2020-01-02T03:04:05.678Z"). ## CalendlyApi.GetGroupList
Retrieve a list of groups from Calendly. **Parameters** - **organization_uri** (`string`, required) URI for the organization to return associated groups from Calendly. - **number_of_rows** (`number`, optional) Specify the number of rows (groups) to return from the query. Used to limit results. - **pagination_token** (`string`, optional) Token for retrieving the next or previous set of groups in the list. ## CalendlyApi.GetUserLocationInfo
Retrieve configured location details for a specific user. **Parameters** - **user_uri** (`string`, required) The URI identifying the specific user to retrieve location information for. ## CalendlyApi.GetEventAvailability
Retrieve availability for a specific event type. **Parameters** - **event_type_uri** (`string`, required) The URI associated with the specific event type to retrieve availability. ## CalendlyApi.UpdateEventAvailability
Update an event type availability schedule. **Parameters** - **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation - **event_type_uri** (`string`, optional) URI of the event type to update the availability schedule for. Required when mode is 'execute', ignored when mode is 'get_request_schema'. - **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema' ## Reference Below is a reference of enumerations used by some of the tools in the CalendlyApi MCP Server: ### ToolMode - **GET_REQUEST_SCHEMA**: `get_request_schema` - **EXECUTE**: `execute` --- ## Auth The Arcade Calendly MCP Server uses the [Calendly auth provider](/references/auth-providers/calendly) to connect to users' Calendly accounts. With the Arcade Cloud Platform, there's nothing to configure. Your users will see `Arcade` as the name of the application that's requesting permission. With a self-hosted installation of Arcade, you need to [configure the Calendly auth provider](/references/auth-providers/calendly#configuring-calendly-auth) with your own Calendly app credentials.