CAT
/MCP
SkillsMCPMarketplacesDigestToolsAdvertise

This week in Claude

Every Monday: Claude Code, Agent SDK, MCP, and the Anthropic platform moves worth your time.

Skills by Category
Frontend DevelopmentBackend & APIsTesting & QASecurityDevOps & CI/CDGit & Pull RequestsDocumentationCode Review & QualityAI & Agent BuildingSkill Development
MCP Servers by Category
Sales & MarketingWeb & Browser AutomationDatabasesAI & LLM ToolsCloud & InfrastructureCommunication & MessagingDeveloper ToolsDesign & CreativeDocuments & KnowledgeSearch & Web Crawling
Marketplaces by Category
AI Agents & OrchestrationLLM IntegrationDevelopment ToolsFrontend & UIBackend & APIsDatabasesTesting & Code QualityDevOps & CloudSecurity & ComplianceGit & Version Control

Cross AI Tools

Discover Claude Code plugins, extensions, and tools. Automatically updated directory of Anthropic Claude AI marketplaces with development tools, productivity plugins, and integrations.

Resources

  • Browse Skills
  • Browse MCP Servers
  • Browse Marketplaces
  • Plugins Reference

Community

  • About
  • Tools
  • Feedback
  • Privacy Policy
  • Advertise

Built for the Claude Code community with Claude Code by @mertduzgun

Independent project, not affiliated with Anthropic

Calendly Mcp Server

nyxtoolsdev/calendly-mcp-server
35 toolsSTDIOregistry active
Summary

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.

CodeRabbit
CodeRabbit
AI writes the code. CodeRabbit catches the slop.
Try For Free →
Keep your Mac awake
Keep your Mac awake
Keep your Mac awake while Claude Code and 40+ AI agents run. Sleeps when they're idle.
One time payment $9 →
Context.devContext.dev
Context.dev
Integrate web data into your AI product. One API to scrape website & brand data.
Get API Key Now →
Make your agent a DeFi expert
Make your agent a DeFi expert
Agent, run crypto. Access onchain data & trade routes via 1inch.
Install now →
Make money from your Skills
Make money from your Skills
On Capafy, your Skill runs online 24/7 as an agent product, and you get paid every time someone uses it.
Start earning →
AppSignal
AppSignal
Monitor with ease. Code with confidence.
Start Free Trial →
CodeRabbit
CodeRabbit
AI writes the code. CodeRabbit catches the slop.
Try For Free →
Keep your Mac awake
Keep your Mac awake
Keep your Mac awake while Claude Code and 40+ AI agents run. Sleeps when they're idle.
One time payment $9 →
Context.devContext.dev
Context.dev
Integrate web data into your AI product. One API to scrape website & brand data.
Get API Key Now →
Make your agent a DeFi expert
Make your agent a DeFi expert
Agent, run crypto. Access onchain data & trade routes via 1inch.
Install now →
Make money from your Skills
Make money from your Skills
On Capafy, your Skill runs online 24/7 as an agent product, and you get paid every time someone uses it.
Start earning →
AppSignal
AppSignal
Monitor with ease. Code with confidence.
Start Free Trial →

Tools

Public tool metadata for what this MCP can expose to an agent.

35 tools
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.

Parameters* required
uuidstring
User unique identifier, or the constant "me" to reference the caller
event_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...

Parameters* required
create_event_type_requestobject
CreateEventTypeRequest
event_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:...

Parameters* required
uuidstring
update_event_type_requestobject
UpdateEventTypeRequest
event_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...

Parameters* required
sortvalue
Order results by the specified field and direction. Accepts comma-separated list of {field}:{direction} values.Supported fields are: name, position, created_at, updated_at. Sort direction is specified as: asc, desc.
uservalue
View available personal, team, and organization event types associated with the user's URI.
countvalue
The number of rows to return
activevalue
Return only active event types if true, only inactive if false, or all event types if this parameter is omitted.
page_tokenvalue
The token to pass to get the next or previous portion of the collection
organizationvalue
View available personal, team, and organization event types associated with the organization's URI.
admin_managedvalue
Return only admin managed event types if true, exclude admin managed event types if false, or include all event types if this parameter is omitted.
user_availability_schedulevalue
Used in conjunction with `user` parameter, returns a filtered list of Event Types that use the given primary availability schedule.
event_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.

Parameters* required
uuidstring
event_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...

Parameters* required
end_timestring
End time of the requested availability range. Date must be in the future of start_time.
event_typestring
The uri associated with the event type
start_timestring
Start time of the requested availability range. Date cannot be in the past.
event_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.

Parameters* required
event_typestring
The URI associated with the event type
event_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...

Parameters* required
event_typestring
Event Type uri in which to update the availability schedule
update_event_type_availability_requestobject
UpdateEventTypeAvailabilityRequest
locations-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.

Parameters* required
userstring
The URI associated with the user
meetings-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...

Parameters* required
sortvalue
Order results by the specified field and direction. Accepts comma-separated list of {field}:{direction} values. Supported fields are: start_time. Sort direction is specified as: asc, desc.
uservalue
Return events that are scheduled with the user associated with this URI
countvalue
The number of rows to return
groupvalue
Return events that are scheduled with the group associated with this URI
statusvalue
Whether the scheduled event is `active` or `canceled`
page_tokenvalue
The token to pass to get the next or previous portion of the collection
organizationvalue
Return events that are scheduled with the organization associated with this URI
invitee_emailvalue
Return events that are scheduled with the invitee associated with this email address
max_start_timevalue
Include events with start times prior to this time (sample time format: "2020-01-02T03:04:05.678123Z"). This time should use the UTC timezone.
min_start_timevalue
Include events with start times after this time (sample time format: "2020-01-02T03:04:05.678123Z"). This time should use the UTC timezone.
meetings-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.

Parameters* required
uuidstring
The event's unique identifier
meetings-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...

Parameters* required
uuidstring
The event's unique indentifier
create_scheduled_event_cancellation_requestvalue
Optional cancellation reason.
meetings-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...

Parameters* required
post_invitee_requestobject
PostInviteeRequest
meetings-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...

Parameters* required
sortvalue
Order results by the **created_at** field and direction specified: ascending ("asc") or descending ("desc")
uuidstring
countvalue
The number of rows to return
emailvalue
Indicates if the results should be filtered by email address
statusvalue
Indicates if the invitee "canceled" or still "active"
page_tokenvalue
The token to pass to get the next or previous portion of the collection
meetings-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...

Parameters* required
event_uuidstring
The event's unique identifier
invitee_uuidstring
The invitee's unique identifier
scheduling_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...

Parameters* required
create_scheduling_link_requestobject
CreateSchedulingLinkRequest
availability-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.

Parameters* required
userstring
A URI reference to a user
availability-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.

Parameters* required
uuidstring
The UUID of the availability schedule.
availability-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...

Parameters* required
userstring
The uri associated with the user
end_timestring
End time of the requested availability range. Date must be in the future of start_time.
start_timestring
Start time of the requested availability range. Date cannot be in the past.
meetings-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.

Parameters* required
create_invitee_no_show_requestobject
CreateInviteeNoShowRequest
meetings-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.

Parameters* required
uuidstring
meetings-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.

Parameters* required
uuidstring
organizations-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.

Parameters* required
uuidstring
The organization's unique identifier
organizations-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...

Parameters* required
rolevalue
Indicates if the results should be filtered by role
uservalue
Indicates if the results should be filtered by user
countvalue
The number of rows to return
emailvalue
Indicates if the results should be filtered by email address
page_tokenvalue
The token to pass to get the next or previous portion of the collection
organizationvalue
Indicates if the results should be filtered by organization
organizations-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.

Parameters* required
uuidstring
The organization membership's unique identifier
organizations-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...

Parameters* required
uuidstring
The organization membership's unique identifier
organizations-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...

Parameters* required
sortvalue
Order results by the field name and direction specified (ascending or descending). Returns multiple sets of results in a comma-separated list.
uuidstring
The organization's unique identifier
countvalue
The number of rows to return
emailvalue
Indicates if the results should be filtered by email address
statusvalue
Indicates if the results should be filtered by status ("pending", "accepted", or "declined")
page_tokenvalue
The token to pass to get the next or previous portion of the collection
organizations-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...

Parameters* required
uuidstring
The organization's unique identifier
create_organization_invitation_requestobject
CreateOrganizationInvitationRequest
organizations-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...

Parameters* required
uuidstring
The organization invitation's unique identifier
org_uuidstring
The organization’s unique identifier
routing_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...

Parameters* required
sortvalue
Order results by the specified field and direction. Accepts comma-separated list of {field}:{direction} values. Supported fields are: created_at. Sort direction is specified as: asc, desc.
countvalue
The number of rows to return
page_tokenvalue
The token to pass to get the next or previous portion of the collection
organizationstring
View organization routing forms associated with the organization's URI.
routing_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.

Parameters* required
uuidstring
routing_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...

Parameters* required
formstring
View routing form submissions associated with the routing form's URI.
sortvalue
Order results by the specified field and direction. Accepts comma-separated list of {field}:{direction} values. Supported fields are: created_at. Sort direction is specified as: asc, desc.
countvalue
The number of rows to return
page_tokenvalue
The token to pass to get the next or previous portion of the collection
routing_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.

Parameters* required
uuidstring
shares-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...

Parameters* required
create_share_requestobject
CreateShareRequest

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

  1. Log in to Calendly
  2. Go to Settings > Integrations & Apps
  3. Scroll to API & Connectors and click API
  4. Click Get a token now (or Generate New Token)
  5. Give the token a name (e.g., "Claude MCP") and click Create Token
  6. 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

Set the environment variable before starting Claude Code:

export CALENDLY_ACCESS_TOKEN="your-token-here"
export LICENSE_KEY="optional-premium-key"   # only if you have a premium license

Then add the MCP server:

claude mcp add calendly -- calendly-mcp

Or add it to your project's .mcp.json:

{
  "mcpServers": {
    "calendly": {
      "command": "calendly-mcp",
      "env": {
        "CALENDLY_ACCESS_TOKEN": "your-token-here"
      }
    }
  }
}

Environment Variables

VariableRequiredDescription
CALENDLY_ACCESS_TOKENYesCalendly Personal Access Token or OAuth2 token
LICENSE_KEYNoLemon Squeezy premium license key
LOG_LEVELNoLogging level: DEBUG, INFO, WARNING, ERROR (default: INFO)
CALENDLY_BASE_URLNoOverride the Calendly API base URL (for testing)

Tools

Free Tier (7 tools)

ToolDescriptionRequired Parameters
list_upcoming_eventsList upcoming scheduled events with optional filtersNone (optional: count, min_start_time, max_start_time, status)
get_event_detailsGet full details of a specific event including invitees and locationevent_uuid
search_eventsSearch events by invitee name or email (case-insensitive partial match)query (optional: min_start_time, max_start_time)
check_availabilityCheck available time slots from your availability schedulesdate_range_start, date_range_end
get_busy_timesGet busy/unavailable time periods for a date rangestart_time, end_time
list_event_typesList all configured event types with name, duration, and statusNone
get_event_type_detailsGet detailed configuration of a specific event typeevent_type_uuid

Premium Tier (5 additional tools)

ToolDescriptionRequired Parameters
create_one_off_eventCreate a single-use scheduling link for a meetingevent_type_uuid, invitee_email, invitee_name, start_time
cancel_eventCancel an existing scheduled event (invitees are notified)event_uuid (optional: reason)
reschedule_eventReschedule an event to a new timeevent_uuid, new_start_time
get_scheduling_statsGet scheduling analytics: total meetings, avg duration, popular timesmin_start_time, max_start_time
get_invitee_insightsAnalyze meeting patterns with a specific contactinvitee_email

Free vs Premium

FeatureFreePremium
View upcoming eventsYesYes
Get event detailsYesYes
Search events by inviteeYesYes
Check availabilityYesYes
View busy timesYesYes
List event typesYesYes
Get event type detailsYesYes
Create scheduling links--Yes
Cancel events--Yes
Reschedule events--Yes
Scheduling analytics--Yes
Invitee insights--Yes
PriceFree$12/month

Upgrade at nyxtools.lemonsqueezy.com/checkout

Usage Examples

Once connected, talk to Claude naturally:

Viewing Your Schedule

  • "What meetings do I have this week?"
  • "Show me my schedule for tomorrow"
  • "List my next 5 meetings"
  • "What canceled meetings did I have this month?"

Event Details

  • "Tell me more about my 3pm meeting"
  • "Who's invited to the design review?"
  • "What's the Zoom link for my next call?"

Searching Events

  • "Do I have any meetings with john@example.com?"
  • "Find all meetings with Sarah"
  • "When did I last meet with the Acme team?"

Checking Availability

  • "Am I free Thursday afternoon?"
  • "What does my availability look like next week?"
  • "What times am I busy tomorrow?"

Event Types

  • "What event types do I have set up?"
  • "Show me the details of my 30-minute meeting type"

Scheduling (Premium)

  • "Schedule a 30-minute call with john@example.com for Tuesday at 2pm"
  • "Set up a meeting with Jane Smith next Wednesday"

Canceling and Rescheduling (Premium)

  • "Cancel my 3pm meeting tomorrow"
  • "Cancel the call with John -- I have a conflict"
  • "Move my 2pm meeting to Thursday at 4pm"
  • "Reschedule the call with Sarah to next Monday morning"

Analytics (Premium)

  • "How many meetings did I have this month?"
  • "What's my average meeting length?"
  • "How much time have I spent in meetings with John?"

Development

Setup

git clone https://github.com/nyxtools/calendly-mcp-server.git
cd calendly-mcp-server
python -m venv venv
source venv/bin/activate   # or venv\Scripts\activate on Windows
pip install -e ".[dev]"

Running Tests

pytest
pytest --cov=calendly_mcp    # with coverage

Linting

ruff check src/ tests/
ruff format src/ tests/
mypy src/

Troubleshooting

"CALENDLY_ACCESS_TOKEN is required"

You have not set the CALENDLY_ACCESS_TOKEN environment variable. Make sure it is configured in your claude_desktop_config.json (under env) or exported in your shell before running Claude Code.

401 Unauthorized errors

Your Calendly Personal Access Token is invalid or has been revoked. Generate a new token at Settings > Integrations & Apps > API in Calendly and update your configuration.

429 Rate limit errors

The Calendly API enforces rate limits. The MCP server automatically retries with exponential backoff, but if you see persistent rate limit errors, reduce the frequency of requests or wait a few minutes.

Connection errors

  • Verify you have internet connectivity
  • Check that api.calendly.com is reachable from your network
  • If behind a proxy, ensure httpx can reach the Calendly API

Premium tools not appearing

  • Verify your LICENSE_KEY is set correctly in the environment
  • Check the server logs for license validation errors (LOG_LEVEL=DEBUG)
  • Ensure your premium subscription is active at nyxtools.lemonsqueezy.com

Server not starting in Claude Desktop

  • Verify the command path is correct (calendly-mcp must be on your PATH)
  • Try running calendly-mcp directly in a terminal to check for errors
  • On Windows, you may need to use the full path to the executable

License

MIT -- see LICENSE for details.

Copyright (c) 2026 NyxTools

Featured
CodeRabbit
CodeRabbit
AI writes the code. CodeRabbit catches the slop.
Try For Free →
Keep your Mac awake
Keep your Mac awake
Keep your Mac awake while Claude Code and 40+ AI agents run. Sleeps when they're idle.
One time payment $9 →
Context.devContext.dev
Context.dev
Integrate web data into your AI product. One API to scrape website & brand data.
Get API Key Now →
Make your agent a DeFi expert
Make your agent a DeFi expert
Agent, run crypto. Access onchain data & trade routes via 1inch.
Install now →
Make money from your Skills
Make money from your Skills
On Capafy, your Skill runs online 24/7 as an agent product, and you get paid every time someone uses it.
Start earning →
AppSignal
AppSignal
Monitor with ease. Code with confidence.
Start Free Trial →
Categories
Automation & Workflows
Registryactive
Packagecalendly-mcp
TransportSTDIO
UpdatedMar 25, 2026
View on GitHub

Related Automation & Workflows MCP Servers

View all →
n8n Workflow Builder

makafeli/n8n-workflow-builder

AI assistant integration for n8n workflow automation through Model Context Protocol (MCP). Connect Claude Desktop, ChatGPT, and other AI assistants to n8n for natural language workflow management.
519
N8N

illuminaresolutions/n8n-mcp-server

MCP server implementation for n8n workflow automation
120
Make Mcp

danishashko/make-mcp

Unofficial MCP server for Make.com automation - build, validate & deploy scenarios via AI
5
n8n Manager MCP

lukisch/n8n-manager-mcp

MCP server for n8n workflow management -- view, create, sync and manage workflows via AI.
1
Airflow

io.github.us-all/airflow

Airflow MCP — list DAGs/runs/task instances, tail logs, trigger and clear (write-gated)
Mcp Workflow

io.github.infoinlet-marketplace/mcp-workflow

Workflow automation for AI agents — browse 125 connectors + 234 templates, run via FluxTurn.