Open Source·AI Agent Infrastructure

Your Calendar, Controlled by Agents.

Book meetings. Generate booking links. Check availability. Pull intake form answers. Full Calendly control in under 60 seconds.

Calendly has no official CLI built for autonomous agents. Agents can’t book meetings, surface intake data, or manage webhooks without custom API wrappers.
So we built calendly-cli — the missing CLI for agents on Calendly.

40
Commands + MCP Tools
60s
To Full Access
CLI
+ MCP Native
OpenClaw
OpenClaw
CLI / MCP
Calendly
Calendly
40 commands · 12 command groups · 40 MCP tools · CLI + MCP native

Why calendly-cli Exists

Without calendly-cli

  • No official CLI — Calendly only offers a REST API and dashboard UI
  • Agents can’t book meetings or surface intake data without custom API wrappers
  • Booking links must be created manually one-at-a-time in the dashboard
  • Webhook configuration requires dashboard access — slow and manual
  • Intake form answers are locked behind the dashboard — no programmatic access

With calendly-cli

  • Full calendar visibility in one command — past, present, and future events with invitee data
  • Agents book meetings directly — find open slot, create booking with name + email, done
  • Booking links generated on-demand — personalized, one-time or multi-use, any event type
  • Webhooks created programmatically — pipe bookings to Slack, n8n, or FranConnect in seconds
  • Intake form answers surfaced instantly — MRR, challenges, timeline pulled for every prospect

Quick Start

1. Install

Terminal
npm install -g calendly-cli

2. Authenticate

Terminal
# Personal access token from Calendly → Account → Integrations → API & Webhooks
calendly login --token YOUR_PERSONAL_ACCESS_TOKEN

# Or set as environment variable (recommended for agents)
export CALENDLY_TOKEN=YOUR_PERSONAL_ACCESS_TOKEN

3. Verify

Terminal
# List your upcoming scheduled events
calendly events list --status active --count 10

# Check today's availability
calendly availability list --start-time 2026-03-18T09:00:00Z --end-time 2026-03-18T17:00:00Z

# View your event types
calendly event-types list

What Your Agent Can See and Do

Events

List all scheduled events — past, present, and future. Filter by status, date range, invitee email, or sort order. Get complete event details including invitee answers.

Availability

Check real-time open slots for any date range. See busy times from Calendly plus external calendar blocks. Query working hours and availability schedules.

Bookings

Book meetings directly — find an open slot, create the booking with name + email. No scheduling link required. Your agent handles the full booking flow autonomously.

Booking Links

Generate one-time or multi-use booking links for any event type. Send personalized scheduling links to prospects without touching the dashboard.

Event Types

View your event types with settings, durations, and custom questions. Create one-off event types with custom name, duration, and date range for specific sessions.

Webhooks

Create webhooks that fire notifications to any URL when someone books or cancels. Configure new automations in seconds — pipe straight to Slack, n8n, or FranConnect.

No-Shows

Mark meetings as no-shows programmatically — or undo them. Keep your pipeline data clean without manual dashboard work after every missed call.

Organization

Manage org membership — invite or remove members, view pending invitations, and inspect org-level scheduling settings. Full admin access from the terminal.

Agent Workflows — Real Use Cases

Your agent has full Calendly access from the terminal. These are real use cases — each one completes in under 10 seconds.

Morning Calendar Brief

Agent Prompt

What's on my calendar today and tomorrow? Any new bookings overnight?

Your agent lists all scheduled events for the next 48 hours, flags new bookings that came in overnight, and surfaces invitee intake form answers — a complete scheduling brief before the day starts.

1
calendly events list --status active --count 25

List all active upcoming events

2
calendly events list --min-start-time 2026-03-18T00:00:00Z --max-start-time 2026-03-20T00:00:00Z

Filter to today and tomorrow

3
calendly events get <event-uuid> --include-invitees

Pull invitee details and intake answers

Pre-Call Intelligence — Intake Answers on Demand

Agent Prompt

Awesome. What do I have on my calendar for tomorrow?

Your agent surfaces the full scheduled event with time, Zoom link, invitee name — then pulls their intake form answers without being asked. B2B focus, MRR range, main challenge, timeline, and their own words in the notes field. Complete pre-call brief, zero dashboard.

1
calendly events list --min-start-time 2026-03-19T00:00:00Z --max-start-time 2026-03-20T00:00:00Z

List all events scheduled for tomorrow

2
calendly event-invitees list <event-uuid>

Pull invitee details for each event

3
calendly event-invitees get <invitee-uuid>

Extract intake answers: B2B/B2C, MRR, challenge, timeline, notes

Example agent response in Slack
📅

Top of Funnel Introductory Call

Time: 7:00 AM PT (30 min)

With: Marcus Chen — marcus@streamvault.io

His intake answers:

  • B2B focused
  • MRR: $50K–250K/mo
  • Main challenge: needs more qualified leads
  • Timeline: ASAP
  • Notes: "I'm looking to get leads and customers for myself and also learn cold outreach for myself."

Sounds like a solid prospect — streamvault.io, B2B, good MRR, and ready to move. Want me to do any prep or research on his company before the call?

Send a Personalized Booking Link

Agent Prompt

Send Alex Torres a booking link for a 30-minute Priority Discovery Call.

Agent generates a one-time booking link for the specified event type and returns it ready to embed in an outreach sequence or paste directly into a message — in seconds, no dashboard needed.

1
calendly event-types list

List available event types and their UUIDs

2
calendly scheduling-links create --max-event-count 1 --owner <event-type-uuid>

Generate a one-time booking link

3
calendly scheduling-links create --max-event-count 5 --owner <event-type-uuid>

Or generate a multi-use link for sequences

Find an Open Slot and Book a Meeting

Agent Prompt

Find me an open slot Thursday afternoon and book a call with Jane at jane@company.com.

Agent checks real-time availability for Thursday afternoon, selects an open slot, and creates the booking with Jane's details — the full scheduling flow completed autonomously without any human touchpoint.

1
calendly availability list --start-time 2026-03-19T12:00:00Z --end-time 2026-03-19T18:00:00Z

Check Thursday afternoon open slots

2
calendly invitees create --start-time <slot> --event-type-uuid <uuid> --name "Jane Smith" --email jane@company.com

Book the meeting directly

3
calendly events list --invitee-email jane@company.com

Confirm booking was created successfully

Intake Form Intelligence — Weekly Pipeline Review

Agent Prompt

Who booked this week and what did they say on the intake form? Pull MRR, challenges, and timeline.

Agent lists all bookings for the week, fetches each event's invitee data, and extracts intake form answers — MRR, biggest challenges, timeline to close — a complete pipeline readout without a CRM.

1
calendly events list --min-start-time 2026-03-16T00:00:00Z --max-start-time 2026-03-23T00:00:00Z

List all bookings this week

2
calendly event-invitees list <event-uuid>

Get invitee details for each event

3
calendly event-invitees get <invitee-uuid>

Pull full intake form answers (MRR, challenges, timeline)

Webhook Setup — Slack Notification on Booking

Agent Prompt

Set up a webhook to ping Slack when someone books a Discovery Call.

Agent creates a Calendly webhook targeting your Slack endpoint that fires on every booking event — instant Slack notification the moment a prospect schedules, without polling or manual checks.

1
calendly webhooks list

Check existing webhooks (FranConnect, n8n already live)

2
calendly webhooks create --url https://hooks.slack.com/... --events invitee.created --scope organization

Create webhook for new bookings

3
calendly webhooks create --url https://your-n8n.com/webhook/... --events invitee.created,invitee.canceled

Or route to n8n for multi-step automation

Pipeline Cleanup — Cancel and Mark No-Shows

Agent Prompt

The 2pm prospect didn't show and the Thursday call needs to be cancelled — handle both.

Agent marks the no-show event with the correct status and cancels the upcoming meeting — keeping pipeline data clean and accurate without manual dashboard work.

1
calendly invitees mark-no-show <invitee-uuid>

Mark the missed call as a no-show

2
calendly events cancel <event-uuid> --reason "Prospect requested reschedule"

Cancel the upcoming meeting with a reason

3
calendly events list --status canceled --count 5

Verify cancellations are reflected

Commands Reference

events
calendly events listList all scheduled events
calendly events list --status active --count 25Filter by status (active, canceled)
calendly events list --invitee-email prospect@company.comFilter by invitee email
calendly events list --min-start-time <iso> --max-start-time <iso>Filter by date range
calendly events get <event-uuid>Get details for a specific event
calendly events cancel <event-uuid> --reason "..."Cancel an event with a reason
availability
calendly availability listList open time slots (real-time)
calendly availability list --start-time <iso> --end-time <iso>Check availability for a specific window
calendly busy-times list --start-time <iso> --end-time <iso>See all busy blocks (Calendly + external calendars)
invitees
calendly event-invitees list <event-uuid>List all invitees for an event
calendly event-invitees get <invitee-uuid>Get full invitee data including intake form answers
calendly invitees create --start-time <iso> --event-type-uuid <uuid> --name "..." --email "..."Book a meeting directly for an invitee
calendly invitees mark-no-show <invitee-uuid>Mark an invitee as a no-show
calendly invitees unmark-no-show <invitee-uuid>Undo a no-show marking
event-types
calendly event-types listList all event types with UUIDs and settings
calendly event-types get <uuid>Get full details for an event type
scheduling-links
calendly scheduling-links create --max-event-count 1 --owner <event-type-uuid>Generate a one-time booking link
calendly scheduling-links create --max-event-count 5 --owner <event-type-uuid>Generate a multi-use booking link (5 uses)
webhooks
calendly webhooks listList all active webhooks
calendly webhooks create --url <url> --events invitee.created --scope organizationCreate webhook for new bookings (org-level)
calendly webhooks create --url <url> --events invitee.created,invitee.canceledWebhook for bookings and cancellations
calendly webhooks delete <webhook-uuid>Delete a webhook
organization
calendly org-membership listList all org members and roles
calendly org-invitations listView pending member invitations
calendly org-invitations create --email member@company.comInvite a new member to the organization
calendly org-membership remove <membership-uuid>Remove a member from the organization

How We Integrate It

Calendly CLI is the scheduling layer in our agent stack. Here’s where it fits across GTM operations.

EVE — Executive AI Assistant

EVE has full Calendly access via this CLI. She handles calendar queries, books meetings, generates booking links, and surfaces intake form data — all triggered from Slack messages in natural language.

n8n Automation Pipelines

Booking webhooks route into n8n for multi-step automations — triggering CRM updates, Slack notifications, and follow-up email sequences the moment a prospect books.

Intake Form Intelligence

Every booking includes intake form answers. Our agents surface MRR, biggest challenges, timeline, and tech stack from prospect answers — giving sales full context before the first call.

OpenClaw Agent

OpenClaw uses Calendly CLI to send personalized booking links as part of outbound sequences — replacing generic Calendly links with contextual, one-time links tied to specific call types.

OpenClaw
Calendly

Want us to set this up for your business?

We build and manage OpenClaw agents for B2B teams — fully wired into your Calendly, CRM, and outbound stack.

Your agent handles scheduling, books meetings, surfaces intake intelligence, and fires notifications automatically. Book a Discovery Call and we’ll scope it for your business.

🤖

OpenClaw agent setup

Built and configured for your stack

📅

Calendly integration

Full scheduling control wired in

n8n automation

Bookings trigger your entire pipeline

View on GitHub

Free 30-minute call · No commitment · We’ll scope the build for your specific stack