Installs into .claude/skills of the current project.
Are you the author of Calcom?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/gabrielmoreira-calcom)
---
name: "calcom"
description: "Read and write Cal.com: list bookings and event types, create bookings. Trigger phrases: cal.com, my bookings, schedule a call."
metadata: { "includeInPrompt": true }
tagline: "List bookings and event types, create bookings."
catalog_auth: "personal API key (per-user, keys start `cal_` / `cal_live_`)"
catalog_hosts: ["api.cal.com"]
---
# 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`:
```bash
bin/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 as `custom.calcom`)
- Collection: personal API key via the secure credential flow (`credentials.request_api_access`); created in Cal.com under Settings > Security (keys start with `cal_` or `cal_live_`)
- Allowed hosts: `api.cal.com`
- Status check: `bin/calcom.py auth` (must return `"ok": true`)
## Operating Rules
1. `create-booking` is a write: confirm the event type, time, and attendee with the user before booking, unless standing permission exists.
2. Reading (bookings, event-types) needs no confirmation.
3. Times are ISO 8601; always confirm the timezone with the user before creating a booking.
4. 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.