Built by Metorial, the integration platform for agentic AI.

Learn More

    Server Summary

    • Schedule calendar meetings

    • Manage event invitees

    • Check booking availability

    • Configure webhook subscriptions

Calendly MCP Server

A powerful Model Context Protocol (MCP) server that provides comprehensive integration with Calendly's scheduling platform. This server enables AI assistants and applications to interact with Calendly's API, allowing them to manage event types, scheduled events, invitees, webhooks, and availability schedules. Whether you're building intelligent scheduling assistants or automating calendar workflows, this MCP server provides the tools and resources needed to seamlessly integrate Calendly's functionality into your applications.

Overview

The Calendly MCP Server bridges the gap between AI applications and Calendly's scheduling ecosystem. It exposes a rich set of tools for querying and managing scheduling data, along with resource templates for accessing specific Calendly entities. This server is designed to help developers and AI systems work efficiently with Calendly data, enabling use cases like automated scheduling assistance, event management, availability checking, and webhook integration.

Features

  • Event Type Management: List and retrieve details about event types, including filtering by user or organization
  • Scheduled Event Operations: Query scheduled events with flexible filtering options and cancel events when needed
  • Invitee Management: Access invitee information for scheduled events with detailed filtering capabilities
  • Single-Use Scheduling Links: Generate one-time scheduling links for specific event types
  • Webhook Integration: Create, list, and delete webhook subscriptions for real-time event notifications
  • Availability Checking: Query user availability schedules and find available booking times
  • Organization Management: Access organization details and membership information
  • User Information: Retrieve authenticated user details and profiles

Tools

list_event_types

List all event types for a user or organization. This tool allows you to discover what types of meetings or appointments are available for scheduling.

Parameters:

  • count (number, optional): Number of results per page (default: 20)
  • active (boolean, optional): Filter by active status to show only active or inactive event types
  • user_uri (string, optional): Filter by user URI to see event types for a specific user
  • organization_uri (string, optional): Filter by organization URI to see event types across an organization

list_scheduled_events

List scheduled events with optional filters. This tool provides access to all scheduled appointments with powerful filtering capabilities.

Parameters:

  • count (number, optional): Number of results per page (default: 20)
  • status (string, optional): Filter by status ("active" or "canceled")
  • user_uri (string, optional): Filter by user URI
  • invitee_email (string, optional): Filter by invitee email address
  • min_start_time (string, optional): Minimum start time in ISO 8601 format
  • max_start_time (string, optional): Maximum start time in ISO 8601 format
  • organization_uri (string, optional): Filter by organization URI

list_event_invitees

List invitees for a specific scheduled event. This tool helps you see who has been invited to or registered for a particular event.

Parameters:

  • event_uuid (string, required): UUID of the scheduled event
  • count (number, optional): Number of results per page (default: 20)
  • email (string, optional): Filter by invitee email address
  • status (string, optional): Filter by invitee status

cancel_scheduled_event

Cancel a scheduled event. This tool allows you to programmatically cancel appointments with an optional reason.

Parameters:

  • event_uuid (string, required): UUID of the event to cancel
  • reason (string, optional): Reason for cancellation

create_single_use_scheduling_link

Create a single-use scheduling link for an event type. This tool generates unique booking links that can only be used a limited number of times.

Parameters:

  • event_type_uri (string, required): URI of the event type
  • owner_uri (string, required): URI of the event owner
  • max_event_count (number, optional): Maximum number of events that can be scheduled (default: 1)

list_webhooks

List all webhook subscriptions for an organization. This tool helps you manage and monitor webhook integrations.

Parameters:

  • organization_uri (string, required): URI of the organization
  • count (number, optional): Number of results per page (default: 20)
  • scope (string, optional): Filter by scope ("organization" or "user")

create_webhook

Create a new webhook subscription. This tool enables real-time notifications for Calendly events.

Parameters:

  • organization_uri (string, required): URI of the organization
  • url (string, required): The callback URL for webhook events
  • events (array, required): Array of event types to subscribe to (e.g., ["invitee.created", "invitee.canceled"])
  • signing_key (string, required): Secret key for webhook signature verification
  • scope (string, optional): Scope of the webhook ("organization" or "user", default: "organization")

delete_webhook

Delete a webhook subscription. This tool removes an existing webhook integration.

Parameters:

  • webhook_uuid (string, required): UUID of the webhook to delete

get_user_availability_schedules

List availability schedules for a user. This tool retrieves the configured availability patterns for a specific user.

Parameters:

  • user_uri (string, required): URI of the user
  • count (number, optional): Number of results per page (default: 20)

list_organization_memberships

List memberships for an organization. This tool shows all members of a Calendly organization.

Parameters:

  • organization_uri (string, required): URI of the organization
  • count (number, optional): Number of results per page (default: 20)
  • email (string, optional): Filter by member email address

get_event_type_available_times

Get available times for booking a specific event type. This tool finds open time slots within a date range for scheduling purposes.

Parameters:

  • event_type_uri (string, required): URI of the event type
  • start_time (string, required): Start of the time range in ISO 8601 format
  • end_time (string, required): End of the time range in ISO 8601 format

Resource Templates

current-user

Access information about the authenticated Calendly user.

URI Pattern: calendly://user/me

This resource provides details about the currently authenticated user, including profile information, organization membership, and account settings.

organization

Get details about a specific Calendly organization.

URI Pattern: calendly://organization/{organization_uuid}

This resource returns comprehensive information about an organization, including branding, settings, and configuration details.

event-type

Get details about a specific event type.

URI Pattern: calendly://event-type/{event_type_uuid}

This resource provides full details about an event type, including duration, description, booking settings, availability rules, and custom questions.

scheduled-event

Get details about a specific scheduled event.

URI Pattern: calendly://event/{event_uuid}

This resource returns detailed information about a scheduled event, including start and end times, invitees, location details, and event-specific metadata.

event-invitee

Get details about a specific event invitee.

URI Pattern: calendly://invitee/{invitee_uuid}

This resource provides information about a specific invitee, including their contact information, responses to custom questions, and booking status.

webhook

Get details about a specific webhook subscription.

URI Pattern: calendly://webhook/{webhook_uuid}

This resource returns configuration details for a webhook subscription, including the callback URL, subscribed events, scope, and status.

Use Cases

The Calendly MCP Server enables a wide range of scheduling automation scenarios:

Intelligent Scheduling Assistants: Build AI assistants that can check availability, suggest meeting times, and help users book appointments through natural conversation.

Event Management Automation: Create workflows that automatically manage scheduled events, send reminders, or handle cancellations based on specific conditions.

Availability Intelligence: Develop systems that analyze scheduling patterns, optimize availability, and provide insights into booking trends.

Integration Workflows: Connect Calendly with other business systems through webhook integrations, enabling real-time synchronization of scheduling data.

Multi-User Coordination: Build tools that help coordinate scheduling across teams and organizations, finding optimal meeting times for multiple participants.

Custom Booking Experiences: Create specialized booking interfaces that leverage Calendly's scheduling engine while providing tailored user experiences.

Getting Started

To use this MCP server, you'll need a Calendly account with API access. The server handles authentication and provides a clean interface to Calendly's API through the Model Context Protocol. Once connected, AI assistants and applications can use the tools and resources to interact with your Calendly data seamlessly.

The server supports pagination for list operations, allowing you to efficiently work with large datasets. All time-based parameters use ISO 8601 format for consistency and clarity. URIs follow Calendly's standard format and can be obtained from resource responses or through the Calendly dashboard.