Calendly OpenClaw Skill - ClawHub
Do you want your AI agent to automate Calendly workflows? This free skill from ClawHub helps with communication tasks without building custom tools from scratch.
What this skill does
Calendly scheduling integration. List events, check availability, manage meetings via Calendly API.
Install
npx clawhub@latest install calendlyFull SKILL.md
Open original| name | description |
|---|---|
| calendly | Calendly scheduling integration. List events, check availability, manage meetings via Calendly API. |
Calendly Skill
Interact with Calendly scheduling via MCP-generated CLI.
Note: Scheduling API features (list-event-types, get-event-type-availability, schedule-event) will be available once calendly-mcp-server v2.0.0 is published to npm. Current CLI uses v1.0.0 for portability.
Quick Start
# Get your Calendly profile (returns user URI)
calendly get-current-user
# List RECENT events (always use --min-start-time for recent queries!)
calendly list-events --user-uri "<YOUR_USER_URI>" --min-start-time "2026-01-20T00:00:00Z"
# Get event details
calendly get-event --event-uuid <UUID>
# Cancel an event
calendly cancel-event --event-uuid <UUID> --reason "Rescheduling needed"
Available Commands
User Info
get-current-user- Get authenticated user details
Events
list-events- List scheduled events (requires --user-uri)get-event- Get event details (requires --event-uuid)cancel-event- Cancel an event (requires --event-uuid, optional --reason)
Invitees
list-event-invitees- List invitees for an event (requires --event-uuid)
Organization
list-organization-memberships- List organization memberships
Configuration
API key can be stored in your environment or .env file:
export CALENDLY_API_KEY="<your-pat-token>"
# Or in ~/.moltbot/.env or ~/.clawdbot/.env
Get your Personal Access Token from: https://calendly.com/integrations/api_webhooks
Usage in Moltbot
When user asks about:
- "What meetings do I have?" →
list-eventswith--min-start-time(use recent date!) - "Cancel my 2pm meeting" → Find with
list-events(time-filtered), thencancel-event - "Who's attending X meeting?" →
list-event-invitees
Note: First time, run calendly get-current-user to obtain your User URI.
Getting Your User URI
Run calendly get-current-user to get your user URI. Example:
{
"resource": {
"uri": "https://api.calendly.com/users/<YOUR_USER_UUID>",
"scheduling_url": "https://calendly.com/<your-username>"
}
}
Examples
# List next 10 events
calendly list-events \
--user-uri "<YOUR_USER_URI>" \
-o json | jq .
# Get event details
calendly get-event \
--event-uuid "<EVENT_UUID>" \
-o json
# Cancel with reason
calendly cancel-event \
--event-uuid "<EVENT_UUID>" \
--reason "Rescheduling due to conflict"
Coming Soon: Scheduling API (v2.0)
Once calendly-mcp-server v2.0.0 is published, these commands will be available:
Scheduling Workflow
# 1. List available event types
calendly list-event-types
# 2. Check availability for a specific event type
calendly get-event-type-availability --event-type "<EVENT_TYPE_URI>"
# 3. Schedule a meeting (requires paid Calendly plan)
calendly schedule-event \
--event-type "<EVENT_TYPE_URI>" \
--start-time "2026-01-25T19:00:00Z" \
--invitee-email "[email protected]" \
--invitee-name "John Smith" \
--invitee-timezone "America/New_York"
Scheduling API Requirements:
- calendly-mcp-server v2.0.0+ (unreleased as of 2026-01-21)
- Paid Calendly plan (Standard or higher)
To upgrade when v2.0 is published:
cd ~/clawd/skills/calendly
MCPORTER_CONFIG=./mcporter.json npx mcporter@latest generate-cli --server calendly --output calendly
Important: Time Filtering
Always use --min-start-time when querying recent events!
The API returns events oldest-first by default and doesn't support pagination via CLI. Without a time filter, you'll get events from years ago.
# Last 7 days
calendly list-events --user-uri "<URI>" --min-start-time "$(date -u -d '7 days ago' +%Y-%m-%dT00:00:00Z)"
# This week
calendly list-events --user-uri "<URI>" --min-start-time "2026-01-20T00:00:00Z" --max-start-time "2026-01-27T23:59:59Z"
# Future events only
calendly list-events --user-uri "<URI>" --min-start-time "$(date -u +%Y-%m-%dT%H:%M:%SZ)"
Notes
- All times in API responses are UTC (convert to Pacific for display)
- Event UUIDs are found in
list-eventsoutput - OAuth tools available but not needed with Personal Access Token
- No pagination support in CLI - use time filters instead
Generated: 2026-01-20
Updated: 2026-01-21 (Portable CLI with npm v1.0.0; v2.0 scheduling features pending upstream publish)
Source: meAmitPatil/calendly-mcp-server via mcporter