Calendly MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| CALENDLY_API_KEY | No | Personal Access Token for Calendly API. Required for PAT authentication. | |
| CALENDLY_USER_URI | No | User URI for default context. Recommended for better performance. | |
| CALENDLY_CLIENT_ID | No | OAuth client ID. Required for OAuth authentication. | |
| CALENDLY_ACCESS_TOKEN | No | OAuth access token. Optional, can be set if already obtained. | |
| CALENDLY_CLIENT_SECRET | No | OAuth client secret. Required for OAuth authentication. | |
| CALENDLY_REFRESH_TOKEN | No | OAuth refresh token. Optional, can be set if already obtained. | |
| CALENDLY_ORGANIZATION_URI | No | Organization URI for default context. Recommended for better performance. |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| get_oauth_urlA | Generate OAuth authorization URL for user authentication |
| exchange_code_for_tokensA | Exchange authorization code for access and refresh tokens |
| refresh_access_tokenC | Refresh access token using refresh token |
| get_current_userA | Get the current authenticated user information |
| list_eventsC | List scheduled events for the authenticated user |
| get_eventB | Get details of a specific event |
| list_event_inviteesB | List invitees for a specific event |
| cancel_eventC | Cancel a specific event |
| list_organization_membershipsB | List organization memberships for the authenticated user |
| list_event_typesB | List available event types for scheduling meetings |
| get_event_type_availabilityB | Get available time slots for a specific event type |
| schedule_eventB | Schedule a meeting by creating an invitee for a specific event type and time |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 12 tools
Each tool targets a distinct action or resource: auth (OAuth URL, token exchange, refresh), user info, events (list/get/cancel/schedule), event types (list/availability), invitees, and org memberships. There is no overlap or ambiguity between tools.
All tool names follow a consistent verb_noun pattern in snake_case, using clear verbs like get, list, cancel, exchange, refresh, and schedule. The naming is uniform and predictable.
With 12 tools, the set is well-scoped for a Calendly integration. It covers authentication, user, events, event types, invitees, and org memberships without being bloated or sparse.
The toolset covers the full scheduling lifecycle (list event types, check availability, schedule, list/get/cancel events) and authentication. Minor gaps like rescheduling or updating events are missing, but core workflows are complete.