Назад към всички

calendly-quick-book

// Book Calendly meetings instantly. Triggers on "book", "schedule calendly", "calendly book", or any request to book a meeting without sending a link.

$ git log --oneline --stat
stars:1,933
forks:367
updated:March 4, 2026
SKILL.mdreadonly
SKILL.md Frontmatter
namecalendly-quick-book
descriptionBook Calendly meetings instantly. Triggers on "book", "schedule calendly", "calendly book", or any request to book a meeting without sending a link.
user-invocabletrue
metadata[object Object]

Calendly Quick Book

Book Calendly meetings via natural language. No tab switching, no link sending.

Default Configuration

SettingValue
Default Calendly Linkhttps://calendly.com/YOUR_USERNAME
Calendly UsernameYOUR_USERNAME

Note: Update the values above with your own Calendly username after installation.

Commands

InputAction
book [name] [email] [timezone] [time]Book a meeting
calendly book [name] [email] [timezone] [time]Book a meeting

Input Fields

FieldRequiredExample
NameYesJohn Smith
EmailYesjohn@acme.com
TimezoneYesEST, PST, UTC
TimeYestomorrow 2pm

Timezone Mapping

InputIANA Format
EST/EDTAmerica/New_York
CST/CDTAmerica/Chicago
MST/MDTAmerica/Denver
PST/PDTAmerica/Los_Angeles
GMT/UTCUTC

API Workflow

Step 1: Get Current User

curl -s "https://api.calendly.com/users/me" \
  -H "Authorization: Bearer $CALENDLY_API_TOKEN"

Step 2: Get Event Types

curl -s "https://api.calendly.com/event_types?user={USER_URI}" \
  -H "Authorization: Bearer $CALENDLY_API_TOKEN"

Step 3: Get Available Times

curl -s "https://api.calendly.com/event_type_available_times?event_type={EVENT_TYPE_URI}&start_time={START_UTC}&end_time={END_UTC}" \
  -H "Authorization: Bearer $CALENDLY_API_TOKEN"

Step 4: Create Booking

curl -s -X POST "https://api.calendly.com/invitees" \
  -H "Authorization: Bearer $CALENDLY_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "event_type": "{EVENT_TYPE_URI}",
    "start_time": "{TIME_UTC}",
    "invitee": {
      "name": "{NAME}",
      "email": "{EMAIL}",
      "timezone": "{TIMEZONE_IANA}"
    }
  }'

Response Format

Success

✅ Meeting Booked!

📅 [Date]
⏰ [Time] [Timezone]
👤 [Name] ([Email])
📍 Calendar invite sent automatically

No Availability

⚠️ No availability at [time]

Nearest slots:
1. [Option 1]
2. [Option 2]
3. [Option 3]

Errors

ErrorResponse
Invalid emailAsk to confirm email
Token expiredDirect to Calendly settings
No event typesDirect to create one in Calendly