Cal.com
FreeMaintainedCal.com scheduling MCP server: manage bookings, event types, and availability.
About
Cal.com scheduling MCP server: manage bookings, event types, and availability.
README
npm version npm downloads License: MIT
Cal.com scheduling MCP server - manage bookings, event types, and availability directly from your AI assistant.
Why this server?
Connect Claude, Cursor, or any MCP-compatible AI to your Cal.com account. Create bookings, check availability, manage event types, and view schedules - all via natural language.
Install
Two ways to run this server — pick the one that fits.
Option 1 — Hosted (zero setup)
No local runtime, no env vars on your machine — secrets are AES-256-GCM encrypted server-side via HashiCorp Vault.
- Sign up at aiwerkmcp.com.
- Install Cal.com from the catalog and paste your
CAL_API_KEY. - Point your MCP client (Claude.ai, Cursor, Hermes, …) at your hosted endpoint:
with your Bearer token.https://bridge.aiwerk.ch/u/<your-user-id>/mcp
All 12 tools, 3 resources, and 3 prompts appear. Install other AIWerk recipes from the same bridge.
Option 2 — Self-hosted (npx)
Run directly — you manage the API key:
CAL_API_KEY=cal_live_your_api_key_here npx @aiwerk/mcp-server-cal
Or wire it into your MCP client config — see Configuration below.
Tools
| Tool | Description |
|---|---|
cal_list_bookings |
List bookings with optional filters (status, event type, date range) |
cal_get_booking |
Get details of a specific booking by UID |
cal_create_booking |
Create a new booking (event type, attendee info, time) |
cal_cancel_booking |
Cancel a booking by UID |
cal_reschedule_booking |
Reschedule a booking to a new time |
cal_list_event_types |
List all event types |
cal_get_event_type |
Get event type details by ID |
cal_create_event_type |
Create a new event type |
cal_update_event_type |
Update an existing event type |
cal_delete_event_type |
Delete an event type |
cal_get_availability |
Check available slots for an event type in a date range |
cal_list_schedules |
List all schedules (working hours / availability rules) |
Resources
Resources are automatically available in the AI's context — no need to ask for them.
| Resource | URI | Description |
|---|---|---|
| Upcoming Bookings | cal://bookings/upcoming |
Today's and tomorrow's bookings |
| Event Types | cal://event-types |
All configured event types |
| Schedules | cal://schedules |
Working hours and availability rules |
Prompts
Ready-made prompt templates for common scheduling tasks.
| Prompt | Description |
|---|---|
daily-schedule |
Summarize today's schedule with bookings and free slots |
find-free-slot |
Find next available time for a specific event type |
reschedule-suggestion |
Suggest alternative times for rescheduling a booking |
Configuration
Claude Desktop
Add to ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"cal": {
"command": "npx",
"args": ["@aiwerk/mcp-server-cal"],
"env": {
"CAL_API_KEY": "cal_live_your_api_key_here"
}
}
}
}
Cursor
Add to .cursor/mcp.json in your project or ~/.cursor/mcp.json globally:
{
"mcpServers": {
"cal": {
"command": "npx",
"args": ["@aiwerk/mcp-server-cal"],
"env": {
"CAL_API_KEY": "cal_live_your_api_key_here"
}
}
}
}
OpenClaw / Universal Recipe
{
"name": "cal",
"command": "npx",
"args": ["@aiwerk/mcp-server-cal"],
"env": {
"CAL_API_KEY": "${CAL_API_KEY}"
}
}
Environment Variables
| Variable | Required | Default | Description |
|---|---|---|---|
CAL_API_KEY |
Yes (on tool call) | - | Cal.com API key (cal_ or cal_live_ prefix) |
CAL_BASE_URL |
No | https://api.cal.com/v2 |
Override the Cal.com API base URL |
The server starts and responds to tools/list without CAL_API_KEY. The key is only required when an actual tool is called (lazy credentials pattern).
Getting Your API Key
- Go to Cal.com Settings
- Create a new API key
- Copy the key (starts with
cal_live_for production)
Security
- Never commit your API key to version control
- Use environment variables or a secrets manager
- The server only reads
CAL_API_KEYat tool call time, never logs it
About AIWerk MCP
Part of the AIWerk MCP platform — curated, signed MCP recipes served either as npm packages for self-hosting or through our multi-tenant hosted bridge (bridge.aiwerk.ch).
Other AIWerk MCP servers:
- @aiwerk/mcp-server-imap — IMAP/SMTP email, provider-agnostic
- @aiwerk/mcp-server-wise — Wise (TransferWise) Personal API, read-only
- @aiwerk/mcp-server-clawhub — ClawHub skill catalog
Browse the full catalog (20+ recipes including GitHub, Linear, Notion, Stripe, …) at aiwerkmcp.com.
Contributing
Issues and PRs are welcome! Please open an issue first for larger changes.
License
MIT - AIWerk
Install Cal.com in Claude Desktop, Claude Code & Cursor
unyly install cal-comInstalls into Claude Desktop, Claude Code, Cursor & VS Code — handles npx, uvx and build-from-source repos for you.
First time? Get the CLI: curl -fsSL https://unyly.org/install | sh
Or configure manually
Run in your terminal:
claude mcp add cal-com --env CAL_API_KEY="" -- npx -y @aiwerk/mcp-server-calStep-by-step: how to install Cal.com
FAQ
Is Cal.com MCP free?
Yes, Cal.com MCP is free — one-click install via Unyly at no cost.
Does Cal.com need an API key?
Yes, it requires environment variables: CAL_API_KEY. Unyly injects them into the config during install.
Is Cal.com hosted or self-hosted?
Self-hosted: the server runs locally on your machine via the install command above.
How do I install Cal.com in Claude Desktop, Claude Code or Cursor?
Open Cal.com on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.
Changes
Versions and requested access over time.
- New version published
- New version published
Related MCPs
GitHub
PRs, issues, code search, CI status
by GitHubFilesystem
Secure file operations with configurable access controls.
Memory
Knowledge graph-based persistent memory system.
Template MCP Server
A CLI tool to create a new Model Context Protocol server project with TypeScript support, dual transport options, and an extensible structure
by mcpdotdirectAmap Maps Mcp Server
MCP server for using the AMap Maps API
by duxiaohuiSupabase
Database, auth and storage
by SupabaseEverything
Reference / test server with prompts, resources, and tools.
Git
Tools to read, search, and manipulate Git repositories.
Sequential Thinking
Dynamic and reflective problem-solving through thought sequences.
Time
Time and timezone conversion capabilities.
Compare Cal.com with
Not sure what to pick?
Find your stack in 60 seconds
Author?
Embed badge for your README
Browse similar
All development MCPs
