Connect Calendr MCP
13 Aug 2026 · by Peter Grillet
This guide walks through generating an API token and adding the MCP server to your AI client.
What you need before you start
- A calendr.so account with access to your firm
- Node.js 18 or later installed (the MCP server runs via npx)
- An MCP-compatible client such as Cursor or Claude Desktop
- Permission to generate API tokens (available from Settings → Integrations)
Step 1: Generate an API token
- In Calendr, go to Settings → Integrations
- Under API tokens, enter a name that helps you remember where the token is used (for example, Cursor on MacBook or Claude Desktop)
- Click Generate API token
- On the token page, copy the token immediately — it is shown while your session is active, but will not be displayed again after you sign out
Step 2: Copy the MCP configuration
Replace your-token-here with the API token you copied in Step 1 if it is not already filled in.
CALENDR_API_BASE should be:
- https://calendr.so
Step 3: Add the server to Cursor
- Open Cursor Settings
- Go to MCP (or Features → MCP depending on your Cursor version)
- Click Add new MCP server or edit your MCP config file
- Paste the Calendr server block from Step 2
Save the configuration and restart Cursor if prompted
Step 4: Add the server to Claude Desktop
- Open Claude Desktop’s MCP config file:
- macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
- Windows: %APPDATA%\Claude\claude_desktop_config.json
- Add the calendr server block from Step 2 inside the top-level mcpServers object
- Save the file and restart Claude Desktop
If the file is empty or new, wrap the server block like this:
Step 5: Test that it works
- “List my Calendr event types”
- “How many bookings did we have in the last 30 days?”
- “Search for organisations named Acme”
Then try a low-risk write action:
- “Check availability for [event type] tomorrow”
- “Create a booking for [name] at [time] on [event type]”
What the MCP server can do
Scheduling
- list_event_types — List booking pages for your firm
- get_availability — Get open slots for an event type on a date
- create_booking — Book a meeting
- get_booking — Fetch booking details
- cancel_booking — Cancel a booking (requires confirm=true)
- reschedule_booking — Move a booking to a new time
CRM
- Organisation — the company or client entity
- Person — an individual’s name
- Contact card — links a person to an email address and optionally an organisation
- list_organizations, get_organization, create_organization, update_organization, delete_organization
- list_people, get_person, create_person, update_person, delete_person
- list_contact_cards, update_contact_card, delete_contact_card
Form submissions (read-only)
- list_qualifying_form_submissions
- list_booking_form_submissions
Team management
- list_team_members — List users in the firm
- invite_user — Invite a new colleague (admin only)
- archive_user — Archive a user (admin only; requires confirm=true)
Reporting
- get_booking_summary — Booked, cancelled, and rescheduled counts for a date range
- get_booking_breakdown — Breakdown by team member or event type
Permissions and security
- 120 requests per minute per token
- 20 destructive actions per 5 minutes per token
- 10 invitations per hour per token
Troubleshooting
- Confirm Node.js 18+ is installed (node --version)
- Confirm the JSON config is valid (no trailing commas, matching braces)
- Restart the AI client after saving the config
- Check the token is copied correctly with no extra spaces
- Confirm the token has not been revoked
- Generate a new token if needed
- The action requires admin permissions — create the token from an admin account, or ask a firm admin to perform the action
- Destructive actions need confirm=true
- Check required fields are provided (for example, invitee email on bookings)
- Confirm CALENDR_API_BASE is set to https://calendr.so in production configs
- Token secrets are only shown during your active session on the token page
- If you did not save it, revoke the token and generate a new one
Quick setup checklist
- Node.js 18+ installed
- API token generated in Settings → Integrations
- Token copied and saved securely
- MCP config added to Cursor or Claude Desktop
- AI client restarted
- Test query returned event types or booking data
- Token revoked for any device or person that no longer needs access
Related help articles
Event Types & Karbon: Pushing data into Karbon from Booking Forms
Once Karbon is connected in Calendr, you control what gets sent to Karbon from each event type. This article covers how to configure an event type so booking form answers flow into Karbon — contacts, organizations, work items, and timeline notes.
Connect Karbon to Calendr (Complete Guide)
Calendr’s Karbon integration links your booking pages to your Karbon practice management workspace. This guide walks through connecting the integration and configuring your event types.