100+ integrations are ready to connect to your AI.Connect your first MCP

Cal.com MCP server for your AI

Pull up today's bookings, reschedule or cancel them, mark no-shows, spin up a new event type, and check what's genuinely free before your assistant offers anyone a time.

PopMCPCal.com

Show me every booking on my discovery call this week and who's attending

Supported Cal.com tools

Every read and write the server exposes — bookings, event types, schedules, slots, webhooks and admin — plus the account changes it can watch for.

calcom_add_attendee

Add an attendee to a booking

calcom_add_guests

Add guests to an existing booking

calcom_cancel_booking

Cancel a booking

calcom_confirm_booking

Confirm a booking

calcom_create_booking

Create a booking

calcom_decline_booking

Decline a booking

calcom_get_booking

Get a booking

calcom_get_booking_attendees

Get all attendees for a booking

calcom_get_bookings

Get all bookings

calcom_mark_no_show

Mark a booking absence

calcom_reschedule_booking

Reschedule a booking

calcom_update_booking_location

Update booking location for an existing booking

calcom_create_event_type

Create an event type

calcom_delete_event_type

Delete an event type

calcom_get_event_type_by_id

Get an event type

calcom_get_event_types

Get all event types

calcom_update_event_type

Update an event type

calcom_check_calendar_connection

Check a calendar connection

calcom_get_busy_times

Get busy times

calcom_get_calendars

Get all calendars

calcom_create_my_ooo

Create an out-of-office entry for the authenticated user

calcom_delete_my_ooo

Delete an out-of-office entry for the authenticated user

calcom_get_me

Get my profile

calcom_get_my_ooo

Get all out-of-office entries for the authenticated user

calcom_update_me

Update my profile

calcom_update_my_ooo

Update an out-of-office entry for the authenticated user

calcom_create_schedule

Create a schedule

calcom_delete_schedule

Delete a schedule

calcom_get_default_conferencing_app

Get your default conferencing application

calcom_get_default_schedule

Get default schedule

calcom_get_schedule

Get a schedule

calcom_get_schedules

Get all schedules

calcom_list_installed_conferencing_apps

List your conferencing applications

calcom_update_schedule

Update a schedule

calcom_create_webhook

Create a webhook

calcom_delete_webhook

Delete a webhook

calcom_get_available_slots

Get available time slots for an event type

calcom_get_webhook

Get a webhook

calcom_get_webhooks

Get all webhooks

calcom_reserve_slot

Reserve a slot

calcom_update_webhook

Update a webhook

calcom_assign_organization_attribute_option_to_user

Assign an attribute to an user

calcom_block_org_booking

Block an organization booking attendee

calcom_check_team_stripe_connection

Check team Stripe connection

calcom_connect_team_app

Connect your conferencing application to a team

calcom_create_delegation_credential

Save delegation credentials for your organization

calcom_create_event_type_workflow

Create organization team workflow for event-types

calcom_create_form_workflow

Create organization team workflow for routing-forms

calcom_create_membership

Create a membership

calcom_create_org_team_membership

Create a membership

calcom_create_organization

Create an organization within an organization

calcom_create_organization_attribute

Create an attribute

calcom_create_organization_attribute_option

Create an attribute option

calcom_create_organization_user

Create an user

calcom_create_organization_user_ooo

Create an out-of-office entry for an user

calcom_create_organization_webhook

Create a webhook

calcom_create_user_schedule

Create a schedule

calcom_delete_delegation_credential

Delete delegation credentials of your organization

calcom_delete_membership

Delete a membership

calcom_delete_org_team_membership

Delete a membership

calcom_delete_organization

Delete an organization within an organization

calcom_delete_organization_attribute

Delete an attribute

calcom_delete_organization_attribute_option

Delete an attribute option

calcom_delete_organization_user

Delete an user

calcom_delete_organization_user_ooo

Delete an out-of-office entry for an user

calcom_delete_organization_webhook

Delete a webhook

calcom_delete_routing_form_workflow

Delete organization team routing-form workflow

calcom_delete_user_schedule

Delete a schedule

calcom_delete_workflow

Delete organization team workflow

calcom_disconnect_team_app

Disconnect team conferencing application

calcom_get_all_memberships

Get all memberships

calcom_get_all_org_team_bookings

Get organization team bookings

calcom_get_all_org_team_bookings_cursor

Get organization bookings (cursor pagination)

calcom_get_all_org_team_memberships

Get all memberships

calcom_get_all_organization_webhooks

Get all webhooks

calcom_get_all_teams

Get all teams

calcom_get_my_teams

Get teams membership for user

calcom_get_org_membership

Get a membership

calcom_get_org_team_membership

Get a membership

calcom_get_organization

Get an organization within an organization

calcom_get_organization_attribute

Get an attribute

calcom_get_organization_attribute_assigned_options

Get all assigned attribute options by attribute ID

calcom_get_organization_attribute_assigned_options_by_slug

Get all assigned attribute options by attribute slug

calcom_get_organization_attribute_assignment_history

Get attribute assignment history for an user

calcom_get_organization_attribute_options

Get all attribute options

calcom_get_organization_attribute_options_for_user

Get all attribute options for an user

calcom_get_organization_attributes

Get all attributes

calcom_get_organization_routing_forms

Get organization routing forms

calcom_get_organization_schedules

Get all schedules

calcom_get_organization_user_bookings

Get all bookings for an organization user

calcom_get_organization_user_ooo

Get all out-of-office entries for an user

calcom_get_organization_users_ooo

Get all out-of-office entries for organization users

calcom_get_organization_webhook

Get a webhook

calcom_get_organizations

Get all organizations within an organization

calcom_get_organizations_users

Get all users

calcom_get_routing_form_workflow_by_id

Get organization team routing form workflow

calcom_get_routing_form_workflows

Get organization team routing form workflows

calcom_get_team_default_app

Get team default conferencing application

calcom_get_team_o_auth_url

Get OAuth conferencing app's auth URL for a team

calcom_get_team_routing_forms

Get team routing forms

calcom_get_team_stripe_connect_url

Get Stripe connect URL for a team

calcom_get_teams_event_types

Get all team event types

calcom_get_user_schedule

Get a schedule

calcom_get_workflow_by_id

Get organization team workflow

calcom_get_workflows

Get organization team workflows

calcom_list_team_conferencing_apps

List team conferencing applications

calcom_organizations_add_permissions

Add permissions to an organization role (single or batch)

calcom_organizations_create_invite

Create team invite link

calcom_organizations_create_phone_call

Create a phone call

calcom_organizations_create_private_link

Create a private link for a team event type

calcom_organizations_create_role

Create a new organization role

calcom_organizations_create_routing_form_response

Create routing form response and get available slots

calcom_organizations_create_team

Create a team

calcom_organizations_create_team_event_type

Create an event type

calcom_organizations_delete_private_link

Delete a private link for a team event type

calcom_organizations_delete_role

Delete an organization role

calcom_organizations_delete_team

Delete a team

calcom_organizations_delete_team_event_type

Delete a team event type

calcom_organizations_get_all_roles

Get all organization roles

calcom_organizations_get_booking_references

Get booking references

calcom_organizations_get_private_links

Get all private links for a team event type

calcom_organizations_get_role

Get a specific organization role

calcom_organizations_get_routing_form_responses

Get routing form responses

calcom_organizations_get_team

Get a team

calcom_organizations_get_team_event_type

Get an event type

calcom_organizations_get_team_event_types

Get team event types

calcom_organizations_get_team_schedules

Get all team member schedules

calcom_organizations_get_user_schedules

Get all schedules

calcom_organizations_get_verified_email_by_id

Get verified email of an org team by id

calcom_organizations_get_verified_emails

Get list of verified emails of an org team

calcom_organizations_get_verified_phone_by_id

Get verified phone number of an org team by id

calcom_organizations_get_verified_phone_numbers

Get list of verified phone numbers of an org team

calcom_organizations_list_permissions

List permissions for an organization role

calcom_organizations_remove_permission

Remove a permission from an organization role

calcom_organizations_remove_permissions

Remove multiple permissions from an organization role

calcom_organizations_request_email_verification_code

Request email verification code

calcom_organizations_request_phone_verification_code

Request phone number verification code

calcom_organizations_set_permissions

Replace all permissions for an organization role

calcom_organizations_team_add_permissions

Add permissions to an organization team role (single or batch)

calcom_organizations_team_create_role

Create a new organization team role

calcom_organizations_team_create_routing_form_response

Create routing form response and get available slots

calcom_organizations_team_delete_role

Delete an organization team role

calcom_organizations_team_get_all_roles

Get all organization team roles

calcom_organizations_team_get_role

Get a specific organization team role

calcom_organizations_team_get_routing_form_responses

Get organization team routing form responses

calcom_organizations_team_get_user_schedules

Get schedules of a team member

calcom_organizations_team_list_permissions

List permissions for an organization team role

calcom_organizations_team_remove_permission

Remove a permission from an organization team role

calcom_organizations_team_remove_permissions

Remove multiple permissions from an organization team role

calcom_organizations_team_set_permissions

Replace all permissions for an organization team role

calcom_organizations_team_update_role

Update an organization team role

calcom_organizations_team_update_routing_form_response

Update routing form response

calcom_organizations_update_private_link

Update a private link for a team event type

calcom_organizations_update_role

Update an organization role

calcom_organizations_update_routing_form_response

Update routing form response

calcom_organizations_update_team

Update a team

calcom_organizations_update_team_event_type

Update a team event type

calcom_organizations_verify_email

Verify an email for an org team

calcom_organizations_verify_phone_number

Verify a phone number for an org team

calcom_report_org_booking

Report an organization booking

calcom_set_team_default_app

Set team default conferencing application

calcom_unassign_organization_attribute_option_from_user

Unassign an attribute from an user

calcom_update_delegation_credential

Update delegation credentials of your organization

calcom_update_membership

Update a membership

calcom_update_org_team_membership

Update a membership

calcom_update_org_webhook

Update a webhook

calcom_update_organization

Update an organization within an organization

calcom_update_organization_attribute

Update an attribute

calcom_update_organization_attribute_option

Update an attribute option

calcom_update_organization_attribute_option_for_user

Update an attribute assignment for an user

calcom_update_organization_user

Update an user

calcom_update_organization_user_ooo

Update an out-of-office entry for an user

calcom_update_routing_form_workflow

Update organization routing form team workflow

calcom_update_user_schedule

Update a schedule

calcom_update_workflow

Update organization team workflow

calcom_create_team_event_type_webhook

Create a webhook for a team event type

calcom_create_team_member_ooo

Create an out-of-office entry for a team member

calcom_create_team_membership

Create a membership

calcom_delete_all_team_event_type_webhooks

Delete all webhooks for a team event type

calcom_delete_team_event_type_webhook

Delete a webhook for a team event type

calcom_delete_team_member_ooo

Delete an out-of-office entry for a team member

calcom_delete_team_membership

Delete a membership

calcom_get_all_team_bookings

Get team bookings

calcom_get_team_event_type_webhook

Get a webhook for a team event type

calcom_get_team_event_type_webhooks

Get all webhooks for a team event type

calcom_get_team_member_ooo

Get all out-of-office entries for a team member

calcom_get_team_membership

Get a membership

calcom_get_team_memberships

Get all memberships

calcom_get_teams

Get teams

calcom_teams_create_invite

Create team invite link

calcom_teams_create_phone_call

Create a phone call

calcom_teams_create_team

Create a team

calcom_teams_create_team_event_type

Create an event type

calcom_teams_delete_team

Delete a team

calcom_teams_delete_team_event_type

Delete a team event type

calcom_teams_get_team

Get a team

calcom_teams_get_team_event_type

Get an event type

calcom_teams_get_team_event_types

Get team event types

calcom_teams_get_team_schedules

Get all team member schedules

calcom_teams_get_verified_email_by_id

Get verified email of a team by id

calcom_teams_get_verified_emails

Get list of verified emails of a team

calcom_teams_get_verified_phone_by_id

Get verified phone number of a team by id

calcom_teams_get_verified_phone_numbers

Get list of verified phone numbers of a team

calcom_teams_request_email_verification_code

Request email verification code

calcom_teams_request_phone_verification_code

Request phone number verification code

calcom_teams_update_team

Update a team

calcom_teams_update_team_event_type

Update a team event type

calcom_teams_verify_email

Verify an email for a team

calcom_teams_verify_phone_number

Verify a phone number for an org team

calcom_update_team_event_type_webhook

Update a webhook for a team event type

calcom_update_team_member_ooo

Update an out-of-office entry for a team member

calcom_update_team_membership

Update membership

calcom_bookings_get_booking_references

Get booking references

calcom_get_booking_attendee

Get a specific attendee for a booking

calcom_get_booking_by_seat_uid

Get a booking by seat UID

calcom_get_booking_recordings

Get all the recordings for the booking

calcom_get_booking_routing_trace

Get the routing trace for a booking

calcom_get_booking_transcripts

Get Cal Video real time transcript download links for the booking

calcom_get_calendar_links

Get 'Add to Calendar' links for a booking

calcom_get_video_sessions

Get Video Meeting Sessions.

calcom_reassign_booking

Reassign a booking to auto-selected host

calcom_reassign_booking_to_user

Reassign a booking to a specific host

calcom_request_reschedule

Request to reschedule a booking

calcom_create_o_auth_client

Create an OAuth client

calcom_create_o_auth_client_webhook

Create a webhook

calcom_create_user

Create a managed user

calcom_delete_all_o_auth_client_webhooks

Delete all webhooks

calcom_delete_o_auth_client

Delete an OAuth client

calcom_delete_o_auth_client_webhook

Delete a webhook

calcom_delete_user

Delete a managed user

calcom_force_refresh

Force refresh tokens

calcom_get_managed_users

Get all managed users

calcom_get_o_auth_client_by_id

Get an OAuth client

calcom_get_o_auth_client_webhook

Get a webhook

calcom_get_o_auth_client_webhooks

Get all webhooks

calcom_get_o_auth_clients

Get all OAuth clients

calcom_get_user_by_id

Get a managed user

calcom_update_o_auth_client

Update an OAuth client

calcom_update_o_auth_client_webhook

Update a webhook

calcom_update_user

Update a managed user

calcom_create_event_type_webhook

Create a webhook

calcom_delete_all_event_type_webhooks

Delete all webhooks

calcom_delete_event_type_webhook

Delete a webhook

calcom_event_types_create_private_link

Create a private link for an event type

calcom_event_types_delete_private_link

Delete a private link for an event type

calcom_event_types_get_private_links

Get all private links for an event type

calcom_event_types_update_private_link

Update a private link for an event type

calcom_get_event_type_history

Get event type history

calcom_get_event_type_webhook

Get a webhook

calcom_get_event_type_webhooks

Get all webhooks

calcom_update_event_type_webhook

Update a webhook

calcom_add_calendar_credentials

Save Apple calendar credentials

calcom_check_ics_feed

Check an ICS feed

calcom_create_ics_feed

Save an ICS feed

calcom_disconnect_calendar

Disconnect a calendar

calcom_get_booking_average_duration

Get average booking duration

calcom_get_booking_event_trends

Get booking event trends

calcom_get_booking_kpi_stats

Get booking KPI stats

calcom_get_booking_member_stats

Get booking member stats

calcom_get_calendar_event_details

Get meeting details from calendar

calcom_get_calendar_oauth_url

Get OAuth connect URL

calcom_get_failed_bookings_by_field

Get failed bookings by routing field

calcom_get_routed_to_per_period

Get routed-to users per period

calcom_get_routing_form_field_options

Get routing form field options

calcom_get_routing_form_headers

Get routing form response headers

calcom_get_routing_forms_by_status

Get routing forms by status

calcom_insights_get_routing_form_responses

Get routing form responses

calcom_update_calendar_event

Update meeting details in calendar

calcom_clear_my_booking_limits

Clear my booking limits

calcom_get_my_booking_limits

Get my booking limits

calcom_update_my_booking_limits

Update my booking limits

calcom_verified_resources_get_verified_email_by_id

Get verified email by id

calcom_verified_resources_get_verified_emails

Get list of verified emails

calcom_verified_resources_get_verified_phone_by_id

Get verified phone number by id

calcom_verified_resources_get_verified_phone_numbers

Get list of verified phone numbers

calcom_verified_resources_request_email_verification_code

Request email verification code

calcom_verified_resources_request_phone_verification_code

Request phone number verification code

calcom_verified_resources_verify_email

Verify an email

calcom_verified_resources_verify_phone_number

Verify a phone number

calcom_connect_conferencing_app

Connect your conferencing application

calcom_disconnect_conferencing_app

Disconnect your conferencing application

calcom_get_conferencing_oauth_url

Get OAuth conferencing app auth URL

calcom_set_default_conferencing_app

Set your default conferencing application

calcom_delete_reserved_slot

Delete a reserved slot

calcom_get_reserved_slot

Get reserved slot

calcom_update_reserved_slot

Update a reserved slot

calcom_add_selected_calendar

Add a selected calendar

calcom_charge_credits

Charge credits

calcom_check_stripe_connection

Check Stripe connection

calcom_delete_selected_calendar

Delete a selected calendar

calcom_exchange_oauth2_token

Exchange authorization code or refresh token for tokens

calcom_get_available_credits

Check available credits

calcom_get_client

Get OAuth2 client

calcom_get_stripe_connect_url

Get Stripe connect URL

calcom_register_push_subscription

Register an app push subscription

calcom_remove_push_subscription

Remove an app push subscription

calcom_calculate_slots_based_on_routing_form_response

Calculate slots based on routing form response

calcom_refresh_tokens

Refresh managed user tokens

calcom_update_destination_calendars

Update destination calendars

Connect Cal.com to your AI

Credentials off one Cal.com screen, then an endpoint your client signs into. Nothing to deploy, and nothing to install.

In Cal.com open Settings → Developer → API Keys, create a key, and paste it into API Key. It authenticates as a Bearer token over HTTPS and is scoped to that one account — no OAuth app, redirect URL, or client secret.

API Key••••••••••••3f7a
ConnectionVerified

Then just ask for the work

  • Show me every booking on my discovery call this week and who's attending

    • get_event_types
    • get_bookings
    • get_booking_attendees
  • Mark everyone who skipped yesterday's onboarding calls as a no-show

    • get_bookings
    • get_booking_attendees
    • mark_no_show
  • Add a 45-min pricing review event type and book Dana into Thursday morning

    • create_event_type
    • get_available_slots
    • create_booking
  • Check why my demo link has no open slots on Friday afternoon

    • get_event_types
    • get_available_slots
    • get_busy_times
    • get_my_ooo

Use Cal.com from the assistant you already open

One hosted endpoint, registered once per client. The same tools and the same permissions, whichever window the request comes from.

Claude DesktopCustom connector

Add the PopMCP URL under Settings → Connectors and the tools appear in every chat.

Claude WebCustom connector

The same endpoint, registered in the browser. Nothing to install on the machine you are working from.

ChatGPTCustom connector

Register PopMCP as a custom connector, then let ChatGPT read and update the account.

CodexDesktop & CLI

Wire the endpoint into Codex or the Codex CLI when a task needs live business context, not a fixture.

OpenCodeCoding agent

Register the remote MCP server in OpenCode's config for terminal-first and scripted agent runs.

ZCodeDesktop app

Add PopMCP as an MCP server in Z.ai's desktop app and work the account from the same window.

Cal.com MCP server questions

What teams ask before putting Cal.com behind an AI client.

Do I need to create an OAuth app or a redirect URL to connect Cal.com?

No. Cal.com connects with a single API key, so there is no OAuth app, redirect URL or client secret to configure, and no re-authentication later on. In Cal.com go to Settings → Developer → API Keys, create a key, and paste it into the API Key field on the connect form. It is sent as a Bearer token over HTTPS.

What can the agent actually reach in my Cal.com account?

The connection covers Cal.com's API v2: bookings — create, list, reschedule, cancel, confirm or decline, mark no-shows, add attendees and guests, change the location — along with event types, availability schedules, available-slot lookup and reservations, out-of-office, webhooks, conferencing apps and connected calendars. The Organizations and Teams admin surface, Insights analytics and Credits are covered as well. Your API key is scoped to one Cal.com account, so the server sees exactly what that key sees and nothing beyond it.

How many tools show up in my AI client?

The catalog is 299 operations across 21 API modules, split 122 read and 177 write. PopMCP loads 41 of them by default so the tool list stays a sensible size, and the rest stay searchable — the agent pulls in a less common call, such as an Organizations operation, when a request actually needs it. Switching on the full catalog exposes all of them at once.

Can it handle team and organization scheduling, or only my own calendar?

Organizations and Teams are the two largest modules in the catalog, so team event types and org-level admin are reachable. Those calls sit outside the default load, so either let the agent search for them or turn the full catalog on. The API key is scoped to your one Cal.com account, so the agent reaches the teams and organizations that account belongs to.

How do I stop the agent from double-booking me?

Have it check before it writes. get_available_slots returns bookable times for a specific event type, get_busy_times reads across your connected calendars, and get_my_ooo covers periods you have blocked off. reserve_slot holds a time while a person confirms — skipping that and going straight to create_booking is the usual reason two meetings land on the same hour.

Which Cal.com changes can PopMCP watch for?

The booking lifecycle comes straight from Cal.com webhooks: created, rescheduled, canceled, requested, request rejected, paid, payment started, attendee marked no-show, routing form submitted and meeting ended. PopMCP additionally detects changes Cal.com does not fire a webhook for — a new event type appearing, an availability schedule added or its hours edited, an out-of-office period added, or a new team on the account.

Do I have to run or host the Cal.com MCP server myself?

No. PopMCP hosts it and gives you a Streamable HTTP MCP URL. There is nothing to deploy, no callback URL to register, and no infrastructure to keep running or patch.

Which AI clients can use this MCP server?

Any client that supports a remote Streamable HTTP MCP server — Claude Desktop, Claude Web, ChatGPT custom connectors, Codex and the Codex CLI, OpenCode and Z.ai's ZCode, as well as editors such as Cursor, Windsurf and Zed. Your client signs in to PopMCP with OAuth; the provider credential never leaves the server.

Why do only 41 of the 299 tools load by default?

Loading 299 tool definitions into every conversation burns context before the work starts. PopMCP loads a curated 41-tool set covering the everyday workflows and keeps the rest searchable, so your AI pulls a specialist tool only when a task needs it. You can switch a connection to the full catalog at any time.

What is the difference between a tool and a trigger?

A tool is something your AI calls — there are 299 here. A trigger is something PopMCP watches for you: 15 Cal.com events that can start work on the PopMCP side. Triggers never enter your AI client's context, and none of them ask you to paste a callback URL into Cal.com.

Connect Cal.com to your AI in minutes

Launch a hosted MCP endpoint for Cal.com, keep tool access under control, and start testing real workflow prompts right away.

Connect your first MCP