home / mcp / calendly mcp server
Provides access to Calendly data and scheduling actions via MCP, including user, event, invitee, and Scheduling API capabilities.
Configuration
View docs{
"mcpServers": {
"meamitpatil-calendly-mcp-server": {
"command": "npx",
"args": [
"calendly-mcp-server"
],
"env": {
"CALENDLY_API_KEY": "your_personal_access_token_here",
"CALENDLY_USER_URI": "https://api.calendly.com/users/your_user_id",
"CALENDLY_CLIENT_ID": "YOUR_CLIENT_ID",
"CALENDLY_ACCESS_TOKEN": "YOUR_ACCESS_TOKEN",
"CALENDLY_CLIENT_SECRET": "YOUR_CLIENT_SECRET",
"CALENDLY_REFRESH_TOKEN": "YOUR_REFRESH_TOKEN",
"CALENDLY_ORGANIZATION_URI": "https://api.calendly.com/organizations/your_org_id"
}
}
}
}You can run a dedicated MCP server that integrates with Calendly, enabling you to manage users, events, invitees, and scheduling workflows directly from your MCP client. This server supports both API-based access via tokens or OAuth1280-based authentication, and it exposes a Scheduling API to book meetings programmatically with flexible location options and real-time availability checks.
You use the Calendly MCP Server by starting it through an MCP client (such as Claude Desktop) using one of the supported start methods. Once running, you will access a set of tools that let you fetch current user details, list and manage events, handle invitees, and explore scheduling options. The Scheduling API lets you discover event types, check availability, and schedule meetings with a chosen time and location. Use your MCP client to invoke the available tools by name and provide the required parameters as described in each tool’s usage notes.
To begin, choose an authentication method that fits your use case. For internal applications or quick testing, you can use a Personal Access Token (PAT). For public applications with multiple users, you’ll use OAuth 2.0 and store client credentials and tokens securely.
Prerequisites: you need Node.js 18+ installed on your machine.
Option 1: NPX (Recommended) Run directly without installation.
npx calendly-mcp-serverOption 2: Manual Installation 1. Clone the project 2. Install dependencies 3. Build the project
git clone https://github.com/meAmitPatil/calendly-mcp-server.git
cd calendly-mcp-server
npm install
npm run buildAuthentication supports two methods. Choose one and set the corresponding environment variables.
Personal Access Token (PAT) usage:
export CALENDLY_API_KEY="your_personal_access_token_here"OAuth 2.0 usage:
export CALENDLY_CLIENT_ID="your_client_id_here"
export CALENDLY_CLIENT_SECRET="your_client_secret_here"
```
Optional tokens if you already have them:
```
export CALENDLY_ACCESS_TOKEN="your_access_token_here"
export CALENDLY_REFRESH_TOKEN="your_refresh_token_here"You can connect the Calendly MCP Server to your MCP client using either NPX or a local installation. The following examples show how to configure the client with environment variables for each method.
{
"mcpServers": {
"calendly": {
"command": "npx",
"args": ["calendly-mcp-server"],
"env": {
"CALENDLY_API_KEY": "your_personal_access_token_here",
"CALENDLY_USER_URI": "https://api.calendly.com/users/your_user_id",
"CALENDLY_ORGANIZATION_URI": "https://api.calendly.com/organizations/your_org_id"
}
}
}
}If you prefer OAuth 2.0, place the credentials and optional tokens in the MCP client configuration.
{
"mcpServers": {
"calendly": {
"command": "npx",
"args": ["calendly-mcp-server"],
"env": {
"CALENDLY_CLIENT_ID": "your_client_id_here",
"CALENDLY_CLIENT_SECRET": "your_client_secret_here",
"CALENDLY_ACCESS_TOKEN": "your_access_token_here",
"CALENDLY_REFRESH_TOKEN": "your_refresh_token_here",
"CALENDLY_USER_URI": "https://api.calendly.com/users/your_user_id",
"CALENDLY_ORGANIZATION_URI": "https://api.calendly.com/organizations/your_org_id"
}
}
}
}If you installed locally, start the server with Node.js and point to the built index file.
{
"mcpServers": {
"calendly": {
"command": "node",
"args": ["path/to/calendly-mcp-server/dist/index.js"],
"env": {
"CALENDLY_API_KEY": "your_personal_access_token_here",
"CALENDLY_USER_URI": "https://api.calendly.com/users/your_user_id",
"CALENDLY_ORGANIZATION_URI": "https://api.calendly.com/organizations/your_org_id"
}
}
}
}The server exposes a Scheduling API to list event types, check availability, and schedule meetings with invitees and a chosen location.
Common issues include missing authentication tokens, invalid event type URIs, or time formats. Ensure you set the correct environment variables and that times are in ISO 8601 UTC format when scheduling.
If you encounter permission issues, verify that your Calendly plan supports scheduling via API and that tokens have the needed scopes.
Generate OAuth authorization URL for user authentication.
Exchange authorization code for access and refresh tokens.
Refresh access token using a refresh token.
Get information about the currently authenticated user.
List scheduled events with optional filtering.
Get details of a specific event.
List invitees for a specific event.
Cancel a specific event.
List organization memberships for the authenticated user.
List available event types for scheduling meetings.
Get available time slots for a specific event type.
Schedule a meeting by creating an invitee for a specific event type and time.