- Home
- MCP servers
- Calendly
Calendly
- typescript
11
GitHub Stars
typescript
Language
4 months ago
First Indexed
3 weeks ago
Catalog Refreshed
Documentation & install
Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.
Installation
Add the following to your MCP client configuration file.
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.
How to use
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.
How to install
Prerequisites: you need Node.js 18+ installed on your machine.
Option 1: NPX (Recommended) Run directly without installation.
npx calendly-mcp-server
Option 2: Manual Installation
- Clone the project
- Install dependencies
- Build the project
git clone https://github.com/meAmitPatil/calendly-mcp-server.git
cd calendly-mcp-server
npm install
npm run build
Configuration and usage notes
Authentication 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"
Configuring MCP client connections
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"
}
}
}
}
Additional configuration options for OAuth 2.0
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"
}
}
}
}
Local installation start example
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"
}
}
}
}
Scheduling API and available tools
The server exposes a Scheduling API to list event types, check availability, and schedule meetings with invitees and a chosen location.
Troubleshooting and tips
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.
Available tools
get_oauth_url
Generate OAuth authorization URL for user authentication.
exchange_code_for_tokens
Exchange authorization code for access and refresh tokens.
refresh_access_token
Refresh access token using a refresh token.
get_current_user
Get information about the currently authenticated user.
list_events
List scheduled events with optional filtering.
get_event
Get details of a specific event.
list_event_invitees
List invitees for a specific event.
cancel_event
Cancel a specific event.
list_organization_memberships
List organization memberships for the authenticated user.
list_event_types
List available event types for scheduling meetings.
get_event_type_availability
Get available time slots for a specific event type.
schedule_event
Schedule a meeting by creating an invitee for a specific event type and time.