Cal MCP server
{
"mcpServers": {
"aiwerk-cal": {
"command": "npx",
"args": [
"-y",
"@aiwerk/mcp-server-cal@latest"
],
"env": {
"CAL_API_KEY": "<cal_api_key>",
"CAL_BASE_URL": "https://..."
}
}
}
}{
"mcpServers": {
"aiwerk-cal": {
"command": "npx",
"args": [
"-y",
"@aiwerk/mcp-server-cal@latest"
],
"env": {
"CAL_API_KEY": "<cal_api_key>",
"CAL_BASE_URL": "https://..."
}
}
}
}{
"mcpServers": {
"aiwerk-cal": {
"command": "npx",
"args": [
"-y",
"@aiwerk/mcp-server-cal@latest"
],
"env": {
"CAL_API_KEY": "<cal_api_key>",
"CAL_BASE_URL": "https://..."
}
}
}
}{
"servers": {
"aiwerk-cal": {
"command": "npx",
"args": [
"-y",
"@aiwerk/mcp-server-cal@latest"
],
"env": {
"CAL_API_KEY": "${input:cal_api_key}",
"CAL_BASE_URL": "${input:cal_base_url}"
}
}
},
"inputs": [
{
"id": "cal_api_key",
"type": "promptString",
"description": "Cal api key",
"password": true
},
{
"id": "cal_base_url",
"type": "promptString",
"description": "Cal base url",
"password": true
}
]
}{
"mcpServers": {
"aiwerk-cal": {
"command": "npx",
"args": [
"-y",
"@aiwerk/mcp-server-cal@latest"
],
"env": {
"CAL_API_KEY": "<cal_api_key>",
"CAL_BASE_URL": "https://..."
}
}
}
}file .mcp.json (in your project root)file claude_desktop_config.jsonfile ~/.cursor/mcp.jsonfile .vscode/mcp.jsonfile ~/.codeium/windsurf/mcp_config.jsoninstall npx -y @aiwerk/mcp-server-calversion 1.0.6
What it does
An MCP server that connects to Cal.com to manage bookings, event types, and availability through natural language. It enables AI assistants like Claude and Cursor to perform scheduling operations by reading and writing to a Cal.com account via the Cal.com API.
- List and view details of existing bookings, optionally filtered by status, event type, or date range.
- Create new bookings by specifying event type, attendee information, and desired time slots.
- Check available time slots for a specific event type within a date range and reschedule existing bookings.
Tools this server exposes
| Tool | Does |
|---|---|
| cal_list_bookings | List bookings with optional filters for status, event type, and date range. |
| cal_get_booking | Retrieve details of a specific booking by its UID. |
| cal_create_booking | Create a new booking with event type, attendee information, and time details. |
| cal_cancel_booking | Cancel an existing booking by its UID. |
| cal_reschedule_booking | Reschedule a booking to a different time. |
| cal_list_event_types | List all configured event types. |
| cal_get_event_type | Get details of a specific event type by its 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 time slots for an event type within a specified date range. |
| cal_list_schedules | List all schedules containing working hours and availability rules. |
Before you enable it
An MCP server runs with whatever access you give it. Start with a development account rather than production, and check which tools the server exposes before you let an agent call them unattended.