
Calendly Mcp Server
Connects Claude directly to your Calendly account via the Calendly API, letting you check availability, view scheduled events, search meetings by invitee, and inspect event types through natural language. The free tier covers read operations like listing upcoming meetings and checking busy times. Premium adds write capabilities including creating one-off scheduling links, canceling and rescheduling events, plus analytics on meeting patterns and invitee history. Useful when you're managing your calendar in conversation with Claude and want to skip opening the Calendly dashboard. Requires a Calendly Personal Access Token from your account's API settings.
- tools
- 35
- transport
- STDIO
- last updated
- Mar 25, 2026
Tools
35 toolsPublic tool metadata for what this MCP can expose to an agent.
users-get_current_userGet current user Returns basic information about your user account. <!-- theme: info --> > #### Required scopes: `users:read` :return: Returns the result object.
Get current user Returns basic information about your user account. <!-- theme: info --> > #### Required scopes: `users:read` :return: Returns the result object.
No parameter schema in public metadata yet.
users-get_userGet user Returns information about a specified User. <!-- theme: info --> > #### Required scopes: `users:read` :param uuid: User unique identifier, or the constant "me" to reference the caller (required) :type uuid: str :return: Returns the result object.1 params
Get user Returns information about a specified User. <!-- theme: info --> > #### Required scopes: `users:read` :param uuid: User unique identifier, or the constant "me" to reference the caller (required) :type uuid: str :return: Returns the result object.
uuidstringevent_types-create_event_typeCreate Event Type Create a new Event Type **NOTE:** * Currently, this endpoint only supports one-on-one event types (kind: "solo"). <!-- theme: info --> > #### Required scopes: `event_types:write` :param create_event_type_request: (required) :type create_event_type_request: Cr...1 params
Create Event Type Create a new Event Type **NOTE:** * Currently, this endpoint only supports one-on-one event types (kind: "solo"). <!-- theme: info --> > #### Required scopes: `event_types:write` :param create_event_type_request: (required) :type create_event_type_request: Cr...
create_event_type_requestobjectevent_types-update_event_typeUpdate Event Type Update an existing Event Type **NOTE:** * Currently, this endpoint only supports one-on-one event types (kind: "solo"). <!-- theme: info --> > #### Required scopes: `event_types:write` :param uuid: (required) :type uuid: str :param update_event_type_request:...2 params
Update Event Type Update an existing Event Type **NOTE:** * Currently, this endpoint only supports one-on-one event types (kind: "solo"). <!-- theme: info --> > #### Required scopes: `event_types:write` :param uuid: (required) :type uuid: str :param update_event_type_request:...
update_event_type_requestobjectuuidstringevent_types-list_event_typesList User's Event Types Returns all Event Types associated with a specified User. Use: * `organization` to look up all Event Types that belong to the organization * `user` to look up a user's Event Types in an organization Either `organization` or `user` are required query par...8 params
List User's Event Types Returns all Event Types associated with a specified User. Use: * `organization` to look up all Event Types that belong to the organization * `user` to look up a user's Event Types in an organization Either `organization` or `user` are required query par...
activevalueadmin_managedvaluecountvalueorganizationvaluepage_tokenvaluesortvalueuservalueuser_availability_schedulevalueevent_types-get_event_typeGet Event Type Returns information about a specified Event Type. <!-- theme: info --> > #### Required scopes: `event_types:read` :param uuid: (required) :type uuid: str :return: Returns the result object.1 params
Get Event Type Returns information about a specified Event Type. <!-- theme: info --> > #### Required scopes: `event_types:read` :param uuid: (required) :type uuid: str :return: Returns the result object.
uuidstringevent_types-list_event_type_available_timesList Event Type Available Times Returns a list of available times for an event type within a specified date range. Date range can be no greater than 1 week (7 days). **NOTE:** * This endpoint does not support traditional keyset pagination. <!-- theme: info --> > #### Required...3 params
List Event Type Available Times Returns a list of available times for an event type within a specified date range. Date range can be no greater than 1 week (7 days). **NOTE:** * This endpoint does not support traditional keyset pagination. <!-- theme: info --> > #### Required...
end_timestringevent_typestringstart_timestringevent_types-list_event_type_availability_scheduleList Event Type Availability Schedules Return the availability for an event type <!-- theme: info --> > #### Required scopes: `availability:read` :param event_type: The URI associated with the event type (required) :type event_type: str :return: Returns the result object.1 params
List Event Type Availability Schedules Return the availability for an event type <!-- theme: info --> > #### Required scopes: `availability:read` :param event_type: The URI associated with the event type (required) :type event_type: str :return: Returns the result object.
event_typestringevent_types-update_event_type_availability_scheduleUpdate Event Type Availability Schedules Update an event type availability schedule <!-- theme: info --> > #### Required scopes: `availability:write` :param event_type: Event Type uri in which to update the availability schedule (required) :type event_type: str :param update_e...2 params
Update Event Type Availability Schedules Update an event type availability schedule <!-- theme: info --> > #### Required scopes: `availability:write` :param event_type: Event Type uri in which to update the availability schedule (required) :type event_type: str :param update_e...
event_typestringupdate_event_type_availability_requestobjectlocations-list_user_meeting_locationsList User Meeting Locations Returns configured location information for a given user. <!-- theme: info --> > #### Required scopes: `locations:read` :param user: The URI associated with the user (required) :type user: str :return: Returns the result object.1 params
List User Meeting Locations Returns configured location information for a given user. <!-- theme: info --> > #### Required scopes: `locations:read` :param user: The URI associated with the user (required) :type user: str :return: Returns the result object.
userstringmeetings-list_eventsList Events Returns a list of Events. * Pass `organization` parameter to return events for that organization (requires admin/owner privilege) * Pass `user` parameter to return events for a specific User * Pass `group` parameter to return events for a specific Group (requires o...10 params
List Events Returns a list of Events. * Pass `organization` parameter to return events for that organization (requires admin/owner privilege) * Pass `user` parameter to return events for a specific User * Pass `group` parameter to return events for a specific Group (requires o...
countvaluegroupvalueinvitee_emailvaluemax_start_timevaluemin_start_timevalueorganizationvaluepage_tokenvaluesortvaluestatusvalueuservaluemeetings-get_eventGet Event Returns information about a specified Event. <!-- theme: info --> > #### Required scopes: `scheduled_events:read` :param uuid: The event's unique identifier (required) :type uuid: str :return: Returns the result object.1 params
Get Event Returns information about a specified Event. <!-- theme: info --> > #### Required scopes: `scheduled_events:read` :param uuid: The event's unique identifier (required) :type uuid: str :return: Returns the result object.
uuidstringmeetings-cancel_eventCancel Event Cancels specified event. <!-- theme: info --> > #### Required scopes: `scheduled_events:write` :param uuid: The event's unique indentifier (required) :type uuid: str :param create_scheduled_event_cancellation_request: Optional cancellation reason. :type create_sch...2 params
Cancel Event Cancels specified event. <!-- theme: info --> > #### Required scopes: `scheduled_events:write` :param uuid: The event's unique indentifier (required) :type uuid: str :param create_scheduled_event_cancellation_request: Optional cancellation reason. :type create_sch...
create_scheduled_event_cancellation_requestvalueuuidstringmeetings-create_inviteeCreate Event Invitee Create a new Event Invitee. Standard notifications, calendar invites, reschedules, and workflows run as if booked via the Calendly UI. **NOTE:** * Access to this endpoint is limited to Calendly users on paid plans (Standard and above). Users on the Free pl...1 params
Create Event Invitee Create a new Event Invitee. Standard notifications, calendar invites, reschedules, and workflows run as if booked via the Calendly UI. **NOTE:** * Access to this endpoint is limited to Calendly users on paid plans (Standard and above). Users on the Free pl...
post_invitee_requestobjectmeetings-list_event_inviteesList Event Invitees Returns a list of Invitees for an event. <!-- theme: info --> > #### Required scopes: `scheduled_events:read` :param uuid: (required) :type uuid: str :param status: Indicates if the invitee "canceled" or still "active" :type status: str :param sort: Order r...6 params
List Event Invitees Returns a list of Invitees for an event. <!-- theme: info --> > #### Required scopes: `scheduled_events:read` :param uuid: (required) :type uuid: str :param status: Indicates if the invitee "canceled" or still "active" :type status: str :param sort: Order r...
countvalueemailvaluepage_tokenvaluesortvaluestatusvalueuuidstringmeetings-get_event_inviteeGet Event Invitee Returns information about a specified Invitee (person invited to an event). <!-- theme: info --> > #### Required scopes: `scheduled_events:read` :param event_uuid: The event's unique identifier (required) :type event_uuid: str :param invitee_uuid: The invitee...2 params
Get Event Invitee Returns information about a specified Invitee (person invited to an event). <!-- theme: info --> > #### Required scopes: `scheduled_events:read` :param event_uuid: The event's unique identifier (required) :type event_uuid: str :param invitee_uuid: The invitee...
event_uuidstringinvitee_uuidstringscheduling_links-create_single_use_scheduling_linkCreate Single-Use Scheduling Link Creates a single-use scheduling link. <!-- theme: info --> > #### Required scopes: `scheduling_links:write` :param create_scheduling_link_request: (required) :type create_scheduling_link_request: CreateSchedulingLinkRequest :return: Returns th...1 params
Create Single-Use Scheduling Link Creates a single-use scheduling link. <!-- theme: info --> > #### Required scopes: `scheduling_links:write` :param create_scheduling_link_request: (required) :type create_scheduling_link_request: CreateSchedulingLinkRequest :return: Returns th...
create_scheduling_link_requestobjectavailability-list_user_availability_schedulesList User Availability Schedules Returns the availability schedules of the given user. <!-- theme: info --> > #### Required scopes: `availability:read` :param user: A URI reference to a user (required) :type user: str :return: Returns the result object.1 params
List User Availability Schedules Returns the availability schedules of the given user. <!-- theme: info --> > #### Required scopes: `availability:read` :param user: A URI reference to a user (required) :type user: str :return: Returns the result object.
userstringavailability-get_user_availability_scheduleGet User Availability Schedule This will return the availability schedule of the given UUID. <!-- theme: info --> > #### Required scopes: `availability:read` :param uuid: The UUID of the availability schedule. (required) :type uuid: str :return: Returns the result object.1 params
Get User Availability Schedule This will return the availability schedule of the given UUID. <!-- theme: info --> > #### Required scopes: `availability:read` :param uuid: The UUID of the availability schedule. (required) :type uuid: str :return: Returns the result object.
uuidstringavailability-list_user_busy_timesList User Busy Times Returns an ascending list of user internal and external scheduled events within a specified date range. Date range can be no greater than 1 week (7 days). **NOTE:** * This endpoint does not support traditional keyset pagination. * External events will only...3 params
List User Busy Times Returns an ascending list of user internal and external scheduled events within a specified date range. Date range can be no greater than 1 week (7 days). **NOTE:** * This endpoint does not support traditional keyset pagination. * External events will only...
end_timestringstart_timestringuserstringmeetings-create_invitee_no_showCreate Invitee No Show Marks an Invitee as a No Show. <!-- theme: info --> > #### Required scopes: `scheduled_events:write` :param create_invitee_no_show_request: (required) :type create_invitee_no_show_request: CreateInviteeNoShowRequest :return: Returns the result object.1 params
Create Invitee No Show Marks an Invitee as a No Show. <!-- theme: info --> > #### Required scopes: `scheduled_events:write` :param create_invitee_no_show_request: (required) :type create_invitee_no_show_request: CreateInviteeNoShowRequest :return: Returns the result object.
create_invitee_no_show_requestobjectmeetings-get_invitee_no_showGet Invitee No Show Returns information about a specified Invitee No Show. <!-- theme: info --> > #### Required scopes: `scheduled_events:read` :param uuid: (required) :type uuid: str :return: Returns the result object.1 params
Get Invitee No Show Returns information about a specified Invitee No Show. <!-- theme: info --> > #### Required scopes: `scheduled_events:read` :param uuid: (required) :type uuid: str :return: Returns the result object.
uuidstringmeetings-delete_invitee_no_showDelete Invitee No Show Undoes marking an Invitee as a No Show. <!-- theme: info --> > #### Required scopes: `scheduled_events:write` :param uuid: (required) :type uuid: str :return: Returns the result object.1 params
Delete Invitee No Show Undoes marking an Invitee as a No Show. <!-- theme: info --> > #### Required scopes: `scheduled_events:write` :param uuid: (required) :type uuid: str :return: Returns the result object.
uuidstringorganizations-get_organizationGet Organization Returns the details of a specified Organization. <!-- theme: info --> > #### Required scopes: `organizations:read` :param uuid: The organization's unique identifier (required) :type uuid: str :return: Returns the result object.1 params
Get Organization Returns the details of a specified Organization. <!-- theme: info --> > #### Required scopes: `organizations:read` :param uuid: The organization's unique identifier (required) :type uuid: str :return: Returns the result object.
uuidstringorganizations-list_organization_membershipsList Organization Memberships Use this to list the Organization Memberships for all users belonging to an organization, use: * `user` to look up a user's membership in an organization * `organization` to look up all users that belong to the organization This endpoint can also...6 params
List Organization Memberships Use this to list the Organization Memberships for all users belonging to an organization, use: * `user` to look up a user's membership in an organization * `organization` to look up all users that belong to the organization This endpoint can also...
countvalueemailvalueorganizationvaluepage_tokenvaluerolevalueuservalueorganizations-get_organization_membershipGet Organization Membership Returns information about a user's Organization Membership <!-- theme: info --> > #### Required scopes: `organizations:read` :param uuid: The organization membership's unique identifier (required) :type uuid: str :return: Returns the result object.1 params
Get Organization Membership Returns information about a user's Organization Membership <!-- theme: info --> > #### Required scopes: `organizations:read` :param uuid: The organization membership's unique identifier (required) :type uuid: str :return: Returns the result object.
uuidstringorganizations-delete_organization_membershipRemove User from Organization Removes a user from an organization. Notes: * To remove users, the caller must have admin rights for the organization * An organization owner can't be removed <!-- theme: info --> > #### Required scopes: `organizations:write` :param uuid: The orga...1 params
Remove User from Organization Removes a user from an organization. Notes: * To remove users, the caller must have admin rights for the organization * An organization owner can't be removed <!-- theme: info --> > #### Required scopes: `organizations:write` :param uuid: The orga...
uuidstringorganizations-list_organization_invitationsList Organization Invitations Returns a list of Organization Invitations that were sent to the organization's members. <!-- theme: info --> > #### Required scopes: `organizations:read` :param uuid: The organization's unique identifier (required) :type uuid: str :param count: T...6 params
List Organization Invitations Returns a list of Organization Invitations that were sent to the organization's members. <!-- theme: info --> > #### Required scopes: `organizations:read` :param uuid: The organization's unique identifier (required) :type uuid: str :param count: T...
countvalueemailvaluepage_tokenvaluesortvaluestatusvalueuuidstringorganizations-create_organization_invitationInvite User to Organization Invites a user to an organization. <!-- theme: info --> > #### Required scopes: `organizations:write` :param uuid: The organization's unique identifier (required) :type uuid: str :param create_organization_invitation_request: (required) :type create...2 params
Invite User to Organization Invites a user to an organization. <!-- theme: info --> > #### Required scopes: `organizations:write` :param uuid: The organization's unique identifier (required) :type uuid: str :param create_organization_invitation_request: (required) :type create...
create_organization_invitation_requestobjectuuidstringorganizations-revoke_organization_invitationRevoke User's Organization Invitation Use this to revoke an Organization Invitation to an organization. Once revoked, the invitation link that was sent to the invitee is no longer valid. <!-- theme: info --> > #### Required scopes: `organizations:write` :param org_uuid: The or...2 params
Revoke User's Organization Invitation Use this to revoke an Organization Invitation to an organization. Once revoked, the invitation link that was sent to the invitee is no longer valid. <!-- theme: info --> > #### Required scopes: `organizations:write` :param org_uuid: The or...
org_uuidstringuuidstringrouting_forms-list_routing_formsList Routing Forms Get a list of Routing Forms for a specified Organization. <!-- theme: info --> > #### Required scopes: `routing_forms:read` :param organization: View organization routing forms associated with the organization's URI. (required) :type organization: str :param...4 params
List Routing Forms Get a list of Routing Forms for a specified Organization. <!-- theme: info --> > #### Required scopes: `routing_forms:read` :param organization: View organization routing forms associated with the organization's URI. (required) :type organization: str :param...
countvalueorganizationstringpage_tokenvaluesortvaluerouting_forms-get_routing_formGet Routing Form Get a specified Routing Form. <!-- theme: info --> > #### Required scopes: `routing_forms:read` :param uuid: (required) :type uuid: str :return: Returns the result object.1 params
Get Routing Form Get a specified Routing Form. <!-- theme: info --> > #### Required scopes: `routing_forms:read` :param uuid: (required) :type uuid: str :return: Returns the result object.
uuidstringrouting_forms-list_routing_form_submissionsList Routing Form Submissions Get a list of Routing Form Submissions for a specified Routing Form. <!-- theme: info --> > #### Required scopes: `routing_forms:read` :param form: View routing form submissions associated with the routing form's URI. (required) :type form: str :p...4 params
List Routing Form Submissions Get a list of Routing Form Submissions for a specified Routing Form. <!-- theme: info --> > #### Required scopes: `routing_forms:read` :param form: View routing form submissions associated with the routing form's URI. (required) :type form: str :p...
countvalueformstringpage_tokenvaluesortvaluerouting_forms-get_routing_form_submissionGet Routing Form Submission Get a specified Routing Form Submission. <!-- theme: info --> > #### Required scopes: `routing_forms:read` :param uuid: (required) :type uuid: str :return: Returns the result object.1 params
Get Routing Form Submission Get a specified Routing Form Submission. <!-- theme: info --> > #### Required scopes: `routing_forms:read` :param uuid: (required) :type uuid: str :return: Returns the result object.
uuidstringshares-create_shareCreate Share Endpoint for our [Customize Once and Share](https://help.calendly.com/hc/en-us/articles/10594902199191) feature. This allows you to customize events for a specific invitee without needing to make an entirely new event type. ***This feature is only available for on...1 params
Create Share Endpoint for our [Customize Once and Share](https://help.calendly.com/hc/en-us/articles/10594902199191) feature. This allows you to customize events for a specific invitee without needing to make an entirely new event type. ***This feature is only available for on...
create_share_requestobjectSponsors
Readme
Calendly MCP Server
An MCP (Model Context Protocol) server that connects Claude Desktop and Claude Code to your Calendly account, enabling natural-language scheduling management.
Installation
pip install calendly-mcp
Getting a Calendly Personal Access Token
- Log in to Calendly
- Go to Settings > Integrations & Apps
- Scroll to API & Connectors and click API
- Click Get a token now (or Generate New Token)
- Give the token a name (e.g., "Claude MCP") and click Create Token
- Copy the token immediately -- it will not be shown again
Configuration
Claude Desktop
Add the following to your claude_desktop_config.json:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"calendly": {
"command": "calendly-mcp",
"env": {
"CALENDLY_ACCESS_TOKEN": "your-token-here",
"LICENSE_KEY": "optional-premium-key"
}
}
}
}
Claude Code
Details
- Repository
- github.com/nyxtoolsdev/calendly-mcp-server
- Category
- Automation & Workflows
- Package
calendly-mcp- Transport
- STDIO
- Registry
- MCP registry, active