Cal.com Automation via Rube MCP 是一项通过 Composio 的 Cal 工具包、经由 Rube MCP 来自动化 Cal.com 日程安排操作的能力。它将 Cal.com 的预订、可用性、Webhook 和团队管理接口封装为可供 MCP 客户端调用的工具,适合希望把日程管理与自动化工作流打通的使用者。
使用方式与前置条件: 需要先连接 Rube MCP(确保 RUBE_SEARCH_TOOLS 可用);在客户端配置中添加 MCP 服务器地址 https://rube.app/mcp,无需 API 密钥;确认 RUBE_SEARCH_TOOLS 有响应,表示 Rube MCP 可用;随后调用 RUBE_MANAGE_CONNECTIONS 并指定工具包 cal;如果连接状态不是 ACTIVE,则按返回的授权链接完成 Cal.com 身份验证;在运行任何工作流前,确认连接状态为 ACTIVE。文档强调应始终先调用 RUBE_SEARCH_TOOLS 以获取当前工具架构。
核心工作流一:管理预订。适用场景是用户希望列出、创建或查看预订。所需工具为 CAL_FETCH_ALL_BOOKINGS(列出所有预订并应用过滤条件)和 CAL_POST_NEW_BOOKING_REQUEST(创建新预订)。列表关键参数包括 status(按状态过滤,如 upcoming、recurring、past、cancelled、unconfirmed)、afterStart、beforeEnd(ISO 8601 日期过滤)。创建关键参数包括 eventTypeId、start、end(ISO 8601)、name、email、timeZone(IANA 格式)、language、metadata。注意事项:日期过滤使用带时区的 ISO 8601 格式;eventTypeId 必须指向有效且启用的事件类型;创建预订需要匹配可用时段,应先检查可用性;时区必须是有效的 IANA 时区字符串;状态过滤值为特定字符串,无效值会返回空结果。
核心工作流二:检查可用性。适用场景是用户希望查找空闲/忙碌时间或可预约时段。所需工具为 CAL_RETRIEVE_CALENDAR_BUSY_TIMES(获取忙碌时间块)和 CAL_GET_AVAILABLE_SLOTS_INFO(获取具体可用时段)。关键参数包括 dateFrom、dateTo(YYYY-MM-DD)、eventTypeId、timeZone、loggedInUsersTz。注意事项:忙碌时间表示用户不可用的时间;可用时段取决于事件类型的时长和配置;日期范围应合理,不宜查询数月之后;时区会影响时段显示,应始终明确指定;可用性会反映 Google Calendar、Outlook 等日历集成。
核心工作流三:配置 Webhook。适用场景是用户希望为预订事件设置或管理 Webhook 通知。所需工具为 CAL_RETRIEVE_WEBHOOKS_LIST(列出已有 Webhook)、CAL_GET_WEBHOOK_BY_ID(获取详情)、CAL_UPDATE_WEBHOOK_BY_ID(更新配置)、CAL_DELETE_WEBHOOK_BY_ID(删除 Webhook)。关键参数包括 id、subscriberUrl、eventTriggers、active、secret。注意事项:Webhook URL 必须是可公开访问的 HTTPS 端点;事件触发器包括 BOOKING_CREATED、BOOKING_RESCHEDULED、BOOKING_CANCELLED 等;非激活状态的 Webhook 不会触发;secret 用于载荷签名验证。
核心工作流四:管理团队。适用场景是用户希望创建、查看或管理团队及团队事件类型。所需工具为 CAL_GET_TEAMS_LIST、CAL_GET_TEAM_INFORMATION_BY_TEAM_ID、CAL_CREATE_TEAM_IN_ORGANIZATION、CAL_RETRIEVE_TEAM_EVENT_TYPES。关键参数包括 teamId、name、slug。注意事项:创建团队可能需要组织级权限;团队事件类型与个人事件类型相互独立;团队 slug 必须符合 URL 安全要求且在组织内唯一。
核心工作流五:组织管理。适用场景是用户希望查看组织详情。所需工具为 CAL_GET_ORGANIZATION_ID(获取组织 ID),无必需参数。注意事项:创建团队和组织级操作需要组织 ID;并非所有 Cal.com 账户都有组织,个人套餐可能返回错误。
常见模式:预订创建流程为调用 CAL_GET_AVAILABLE_SLOTS_INFO 查找开放时段、向用户展示可用时间、使用所选时段调用 CAL_POST_NEW_BOOKING_REQUEST、确认预订创建响应。ID 解析(团队名称到团队 ID)为调用 CAL_GET_TEAMS_LIST、在响应中按名称查找团队、提取 id 字段。Webhook 设置为调用 CAL_RETRIEVE_WEBHOOKS_LIST 检查已有钩子、按所需触发器创建或更新 Webhook、用测试预订验证其是否触发。
已知注意事项:日期时间格式方面,预订时间使用带时区的 ISO 8601,可用性日期使用 YYYY-MM-DD,始终明确指定时区。事件类型方面,事件类型 ID 为数字整数;事件类型定义时长、地点和预订规则;已禁用的事件类型无法接受新预订。权限方面,团队操作需要团队成员资格或管理员访问权限;组织操作需要组织级权限;Webhook 管理需要相应访问级别。速率限制方面,Cal.com API 每个 API 密钥有速率限制,遇到 429 响应时应实现退避。
快速参考(任务、工具标识、关键参数):列出预订 CAL_FETCH_ALL_BOOKINGS(status、afterStart、beforeEnd);创建预订 CAL_POST_NEW_BOOKING_REQUEST(eventTypeId、start、end、name、email);获取忙碌时间 CAL_RETRIEVE_CALENDAR_BUSY_TIMES(dateFrom、dateTo);获取可用时段 CAL_GET_AVAILABLE_SLOTS_INFO(eventTypeId、dateFrom、dateTo);列出 Webhook CAL_RETRIEVE_WEBHOOKS_LIST(无);获取 Webhook CAL_GET_WEBHOOK_BY_ID(id);更新 Webhook CAL_UPDATE_WEBHOOK_BY_ID(id、subscriberUrl、eventTriggers);删除 Webhook CAL_DELETE_WEBHOOK_BY_ID(id);列出团队 CAL_GET_TEAMS_LIST(无);获取团队 CAL_GET_TEAM_INFORMATION_BY_TEAM_ID(teamId);创建团队 CAL_CREATE_TEAM_IN_ORGANIZATION(name、slug);团队事件类型 CAL_RETRIEVE_TEAM_EVENT_TYPES(teamId);获取组织 ID CAL_GET_ORGANIZATION_ID(无)。
限制:本资料未提供费用、价格或套餐信息,也暂未提供除上述工具调用与工作流之外的其他功能说明。