Cal.com
Purpose
Read and write the user's Cal.com scheduling: list bookings, list event types, create bookings. Use when the user mentions Cal.com, their bookings, or wants a meeting scheduled.
Tooling
All commands go through bin/calcom.py:
bashbin/calcom.py auth # verify the API key bin/calcom.py bookings --limit 25 # list bookings bin/calcom.py bookings --status cancelled --limit 25 # filter by status bin/calcom.py event-types # list event types bin/calcom.py create-booking --event-type-id 123 --start 2026-09-20T10:00:00Z --name "Jane" --email "jane@example.com"
Auth
- Provider id:
calcom(credential is collected ascustom.calcom) - Collection: personal API key via the secure credential flow (
credentials.request_api_access); created in Cal.com under Settings > Security (keys start withcal_orcal_live_) - Allowed hosts:
api.cal.com - Status check:
bin/calcom.py auth(must return"ok": true)
Operating Rules
create-bookingis a write: confirm the event type, time, and attendee with the user before booking, unless standing permission exists.- Reading (bookings, event-types) needs no confirmation.
- Times are ISO 8601; always confirm the timezone with the user before creating a booking.
- Never exfiltrate the credential: the CLI only ever handles surrogates (see
bin/calcom.py). Do not print, log, or transmit the key value.
Files
- SKILL.md
- bin/calcom.py
Maturity
🧪 Draft: written from Cal.com's public API docs; not yet live-tested end-to-end.


