Calendly for AI agents

Calendly automates appointment scheduling with shareable booking links, calendar availability checks, and reminders, cutting out the email back-and-forth over meeting times. Connect it once through Arc0, and your agent, or Claude, ChatGPT and Cursor, can use it through one MCP endpoint, limited to what each user approved.

SchedulingOAuth 2.0MCP + RESTcalendly.com
AUDIT LOG · CALENDLYPOLICY: acme-support
09:41:07 · claude · u_8f2read
calendly.list_events
List events (Deprecated)✓ allowed · 212ms
09:41:08 · claude · u_8f2read
calendly.get_user
Get user✓ allowed · 164ms
09:41:09 · claude · u_8f2write
calendly.create_share
Create share✓ approved · approved by user
09:41:12 · claude · u_8f2destructive
calendly.delete_invitee_data
Delete invitee data✕ blocked · policy: deny
EVERY CALENDLY CALL, ON THE RECORD
01 · USE CASES

What agents do in Calendly.

01

Check open time slots

Check an event type's open time slots before sharing a scheduling link with someone.

02

Create a single-use link

Create a single-use scheduling link for a one-off meeting that shouldn't be reused.

03

Confirm before canceling an event

Confirm before canceling a scheduled event, since the invitee needs to be told once it's off.

02 · ACTIONS

57 Calendly actions, graded by risk.

Every Calendly action is tagged read, write or destructive, so one policy covers the whole app and new actions inherit the right default.

read

36

Look things up. Allowed by default.

  • calendly.get_user
    Get user
  • calendly.get_event
    Get event
  • calendly.get_group
    Get group
  • calendly.list_events
    List events (Deprecated)
  • calendly.list_groups
    List groups
  • calendly.get_event_type
    Get event type
  • calendly.get_current_user
    Get current user (Deprecated)
  • calendly.get_organization
    Get organization
  • calendly.get_routing_form
    Get routing form
  • calendly.list_event_types
    List Event Types
  • calendly.get_event_invitee
    Get event invitee
  • calendly.list_routing_forms
    List routing forms
  • calendly.get_invitee_no_show
    Get invitee no show
  • calendly.list_event_invitees
    List event invitees
  • calendly.list_user_locations
    List User Meeting Locations
  • calendly.list_user_busy_times
    List user busy times
+ 20 MORE

write

13

Create and change things. Allow, or ask the user first.

  • calendly.create_share
    Create share
  • calendly.post_invitee
    Create Event Invitee
  • calendly.create_webhooks
    Create webhook subscription
  • calendly.create_event_type
    Create Event Type
  • calendly.update_event_type
    Update Event Type
  • calendly.create_event_invitee
    Create event invitee (Deprecated)
  • calendly.create_scheduling_link
    Create scheduling link
  • calendly.create_one_off_event_type
    Create One-Off Event Type
  • calendly.update_event_type_availability
    Update Event Type Availability
  • calendly.create_single_use_scheduling_link
    Create single use scheduling link
  • calendly.who_am_i
    Who Am I
  • calendly.invitee_no_show
    Mark invitee as no-show
  • calendly.organization_invitation
    Invite user to organization

destructive

8

Delete, cancel or archive. Ask first, or deny outright.

  • calendly.delete_invitee_data
    Delete invitee data
  • calendly.cancel_scheduled_event
    Cancel scheduled event
  • calendly.delete_invitee_no_show
    Delete invitee no show
  • calendly.delete_scheduled_event_data
    Delete scheduled event data
  • calendly.delete_webhook_subscription
    Delete webhook subscription
  • calendly.remove_user_from_organization
    Remove user from organization
  • calendly.delete_organization_membership
    Delete organization membership
  • calendly.revoke_user_s_organization_invitation
    Revoke a user's organization invitation
03 · HOW IT WORKS

Calendly in three steps.

  1. 01Your users connect CalendlyThey sign in to Calendly on Arc0 Connect, under your brand, and approve the access you ask for.
  2. 02You set the rulesReads run, writes like “create share” can wait for the user, and “delete invitee data” can be denied outright.
  3. 03Any agent can actYour agent calls Calendly through the Arc0 SDK or MCP, and so can Claude, ChatGPT and Cursor. Every call lands on the audit log.
POLICY.TS
await arc0.policies.set('calendly', {
  read: 'allow',
  write: 'ask',        // create_share
  destructive: 'deny',  // delete_invitee_data
})

# Claude Code: the same connection, one URL
$ claude mcp add --transport http arc0 \
    https://mcp.arc0.ai/u/u_8f2
04 · AUTH AND DATA

How Calendly connects.

Users sign in to Calendly on Arc0 Connect and approve the scopes you request. Build with Arc0’s Calendly OAuth app, or bring your own so the Calendly consent screen names you. Tokens refresh automatically, and you can export them whenever you want.

The same Calendly connection serves your agent over MCP and your own backend over REST and the proxy, so a user connects once. How Arc0 handles credentials →

AUTH
OAuth 2.0
CREDENTIALS
Per-tenant encrypted vault
MODEL SEES
Results only, never credentials
AUDIT LOG
Every call, on every plan
05 · WORKS WITH

Use Calendly from any agent.

Claude
ChatGPT
Cursor
Codex
VS Code
OpenAI Agents SDK
Claude Agent SDK
Vercel AI SDK
Mastra
LangGraph
07 · FAQ

Calendly and Arc0, answered.

Q01

Can I use Calendly with Claude, ChatGPT or Cursor?

Yes. Connect Calendly to Arc0 once, then add your Arc0 MCP URL to Claude, ChatGPT, Cursor, Claude Code or any other remote-MCP client. Each assistant only gets the Calendly actions you allow.

Q02

How do users connect Calendly?

Users sign in to Calendly on Arc0 Connect and approve the scopes you request. Build with Arc0’s Calendly OAuth app, or bring your own so the Calendly consent screen names you. Tokens refresh automatically, and you can export them whenever you want.

Q03

Which Calendly actions can my agent take?

57 in total: 36 read, 13 write and 8 destructive, such as “create share”. Your policies decide which of them each agent may call.

Q04

Can I stop my agent from deleting things in Calendly?

Yes. Actions like “delete invitee data” are graded destructive. Set destructive actions to deny, or to ask so the user approves each one, and blocked calls still show up on the audit log.

Q05

Can my own backend call Calendly too?

Yes. The same Calendly connection is available over REST and through the Arc0 proxy, so your product and your agent share one connection per user.

Get started

Plug Calendly into your agent.

Your users connect Calendly once, under your brand. Your agent gets 57 actions behind your policies, with every call on the record.

Free to build · MCP + REST · Audit log on every plan