Skill

Automate Cal.com Scheduling Operations

Skill automating Cal.com scheduling - bookings, availability, webhooks, and teams - through Composio's Rube MCP toolkit.

Works with cal.comrube

91
Spark score
out of 100
Updated 21 days ago
Version 14.1.0
Models
universal

Add to Favorites

Why it matters

Streamline your Cal.com scheduling by automating booking management, availability checks, and webhook configurations. This skill integrates with Rube MCP to provide robust control over your calendar operations.

Outcomes

What it gets done

01

Manage Cal.com bookings (list, create, review)

02

Check availability for booking slots

03

Configure and manage Cal.com webhooks

04

Manage Cal.com teams and organization details

Install

Add it to your toolbox

Run in your project directory:

curl -fsSL https://spark.entire.vc/get/ag-cal-com-automation | bash

Overview

Cal.com Automation via Rube MCP

Skill automating Cal.com scheduling operations - bookings, availability, webhooks, and team/organization management - through Composio's Cal toolkit exposed via Rube MCP, with a documented tool sequence, key parameters, and known pitfalls per workflow. Use when listing/creating Cal.com bookings, checking availability, configuring webhooks, or managing teams via Rube MCP's Cal toolkit, once the Cal.com connection is ACTIVE.

What it does

This skill automates Cal.com scheduling operations through Composio's Cal toolkit via Rube MCP, added to a client as the https://rube.app/mcp endpoint with no API keys needed. Setup verifies RUBE_SEARCH_TOOLS responds, calls RUBE_MANAGE_CONNECTIONS with toolkit cal, follows the returned auth link if the connection isn't yet ACTIVE, and confirms ACTIVE status before running any workflow - RUBE_SEARCH_TOOLS should always be called first to get current tool schemas. Five core workflows are covered. Managing bookings uses CAL_FETCH_ALL_BOOKINGS (filterable by status - upcoming/recurring/past/cancelled/unconfirmed - and by ISO 8601 date range) and CAL_POST_NEW_BOOKING_REQUEST (requiring an event type ID, ISO 8601 start/end, attendee name/email, an IANA timezone, and optional metadata) - noting booking creation requires first confirming an available slot. Checking availability uses CAL_RETRIEVE_CALENDAR_BUSY_TIMES (busy blocks, reflecting connected calendar integrations like Google Calendar or Outlook) and CAL_GET_AVAILABLE_SLOTS_INFO (slots specific to an event type's duration, scoped by a YYYY-MM-DD date range and explicit timezone). Configuring webhooks covers listing, fetching, updating, and deleting webhooks by ID, with parameters for the subscriber URL (must be a publicly accessible HTTPS endpoint), an array of event triggers (BOOKING_CREATED, BOOKING_RESCHEDULED, BOOKING_CANCELLED, etc.), an active flag, and a signing secret for payload verification. Managing teams covers listing teams, fetching team details, creating a team within an organization (name plus a URL-safe unique slug), and retrieving a team's event types (separate from personal event types) - team creation may require organization-level permissions. Organization management is a single call, CAL_GET_ORGANIZATION_ID, needed for team creation and other org-level operations - not all Cal.com accounts have an organization, so personal-plan accounts may error here. Common patterns chain these calls: a booking-creation flow (find slots, present to user, create the booking, confirm the response), team-name-to-ID resolution (list teams, find by name, extract the ID), and webhook setup (check existing hooks, create/update with desired triggers, verify it fires on a test booking). Known pitfalls span date/time formatting (bookings use ISO 8601 with timezone, availability uses plain dates, timezone should always be explicit), event types (numeric IDs, disabled types can't accept bookings), permissions (team/org operations need appropriate access), and rate limits (Cal.com's API is rate-limited per key, requiring backoff on 429 responses). A quick-reference table maps each task to its exact tool slug and key parameters.

When to use - and when NOT to

Use this skill when a user wants to list, create, or review Cal.com bookings, check availability, configure booking webhooks, or manage teams and organization settings, via Rube MCP's Cal toolkit. It is not usable without an ACTIVE Cal.com connection through RUBE_MANAGE_CONNECTIONS - workflows should not be run until that connection status is confirmed - and organization-level operations will error on personal Cal.com plans that have no organization. Availability checks also accept a separate loggedInUsersTz parameter for the requesting user's own timezone.

Inputs and outputs

Input is booking filters/details, availability date ranges, webhook configuration, or team/organization identifiers. Output is booking lists or confirmations, available/busy time slots, configured webhooks, and team/organization details - all via Rube MCP tool calls to Cal.com's API.

Integrations

Built on Composio's Cal toolkit exposed through Rube MCP (https://rube.app/mcp), calling Cal.com's REST API for bookings, availability, webhooks, teams, and organizations, with calendar-integration awareness (Google Calendar, Outlook) for availability checks.

1. Call CAL_GET_AVAILABLE_SLOTS_INFO to find open slots
2. Present available times to the user
3. Call CAL_POST_NEW_BOOKING_REQUEST with selected slot
4. Confirm booking creation response

Who it's for

Users automating Cal.com scheduling - booking management, availability checks, webhook-driven integrations, or team/organization administration - through Composio's Rube MCP without direct API key management.

FAQ

Common questions

Discussion

Questions & comments · 0

Sign In Sign in to leave a comment.