mcpField
Z
zoom-automation

zoom-automation

github.com/sickn33生产力48.8k70 次安装今天更新
代码仓库

关于 zoom-automation

zoom-automation 是通过 Rube MCP 自动执行 Zoom 操作的技能,涵盖会议、网络研讨会、云录制、参会者跟踪和使用报告,适用于需要 Zoom 工作流的场景。

主要功能

  1. 01安排和更新会议
  2. 02列出会议与网络研讨会
  3. 03检索或删除云录制
  4. 04跟踪参会者和使用情况
  5. 05登记会议及网络研讨会参与者

适用场景

  1. 01按指定设置安排会议
  2. 02检索已获准访问的云录制
  3. 03查看已结束会议的出席情况
  4. 04为网络研讨会登记参与者

MCP 相关

通过 Rube MCP 查询最新 Zoom 工具架构并管理 Zoom 连接,随后调用 Zoom 工具包操作。

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/sickn33/agentic-awesome-skills --skill zoom-automation

安装后在 Claude Code 中输入/zoom-automation确认已加载。

详细介绍

通过 Rube MCP 自动化 Zoom

通过 Composio 的 Zoom 工具包自动执行 Zoom 操作,包括安排会议、管理网络研讨会、检索云录制内容、跟踪参会者和生成使用情况报告。

先决条件

  • 必须已连接 Rube MCP(RUBE_SEARCH_TOOLS 可用)
  • 通过 RUBE_MANAGE_CONNECTIONS 建立有效的 Zoom 连接,工具包为 zoom
  • 始终先调用 RUBE_SEARCH_TOOLS,以获取当前工具架构
  • 大多数功能需要付费 Zoom 账户(Pro 计划或更高级别)

设置

获取 Rube MCP:在客户端配置中将 https://rube.app/mcp 添加为 MCP 服务。仍需完成账户 OAuth、批准所需权限范围并建立有效连接;添加服务不会授予 Zoom 访问权限。仅在获得授权时更改主机配置。

  1. 确认 RUBE_SEARCH_TOOLS 能够响应,以验证 Rube MCP 可用
  2. 使用工具包 zoom 调用 RUBE_MANAGE_CONNECTIONS
  3. 如果连接状态不是 ACTIVE,请按照返回的授权链接完成 Zoom OAuth
  4. 在运行任何工作流之前,确认连接状态显示为 ACTIVE

核心工作流

执行写入操作前,确认用户/账户、会议场次、时区、收件人和录制同意情况。列出会议并不代表已获准发送邀请、注册参会者、自动录制或删除会议。将主机的 start_url、录制下载令牌和签名 URL 视为凭据;不要公开这些信息,也不要通过未经验证的重定向转发授权信息。仅将已获准的录制内容提取到受限目的地。对于状态不确定的写入操作,重试前先检查状态;当前架构、配额和计划权限优先于静态示例。

1. 创建和安排会议

适用情况:用户希望创建新的 Zoom 会议,并指定时间、时长和设置

工具调用顺序:

  1. ZOOM_GET_USER - 验证已认证用户并检查许可证类型【前置条件】
  2. ZOOM_CREATE_A_MEETING - 创建会议并设置主题、时间、时长和选项【必需】
  3. ZOOM_GET_A_MEETING - 获取完整会议详情,包括 join_url【可选】
  4. ZOOM_UPDATE_A_MEETING - 修改会议设置或重新安排会议【可选】
  5. ZOOM_ADD_A_MEETING_REGISTRANT - 为启用了注册的会议注册参会者【可选】

关键参数:

  • userId:用户级应用始终使用 "me"
  • topic:会议主题
  • type:1(即时会议)、2(已安排会议)、3(无固定时间的周期性会议)、8(固定时间的周期性会议)
  • start_time:ISO 8601 格式(UTC 时间使用 yyyy-MM-ddTHH:mm:ssZ,或搭配时区字段使用 yyyy-MM-ddTHH:mm:ss)
  • timezone:时区 ID(例如,"America/New_York")
  • duration:时长,单位为分钟
  • settings__auto_recording:"none"、"local" 或 "cloud"
  • settings__waiting_room:布尔值,用于启用等候室
  • settings__join_before_host:布尔值(启用等候室时会禁用此选项)
  • settings__meeting_invitees:包含邀请对象及其电子邮件地址的数组

注意事项:

  • start_time 必须是未来时间;无论输入的时区如何,Zoom 都会以 UTC 存储和返回时间
  • 如果类型为 2 且未设置 start_time,会议将变为即时会议,并在 30 天后过期
  • 参会者的 join_url 和主持人的 start_url 会在创建响应中返回;请妥善保存
  • start_url 会在 2 小时后过期(custCreate 用户的链接会在 90 天后过期)
  • 会议创建每天最多允许 100 次请求
  • 设置名称使用双下划线表示嵌套(例如,settings__host_video)
2. 列出和管理会议

使用场景:用户想查看即将举行、正在进行或已结束的会议

工具调用顺序:

  1. ZOOM_LIST_MEETINGS - 按类型列出会议(已安排、正在进行、即将举行、以往)[必需]
  2. ZOOM_GET_A_MEETING - 获取特定会议的详细信息[可选]
  3. ZOOM_UPDATE_A_MEETING - 修改会议详情[可选]

关键参数:

  • userId:已通过身份验证的用户使用 "me"
  • type:"scheduled"(默认)、"live"、"upcoming"、"upcoming_meetings"、"previous_meetings"
  • page_size:每页记录数(默认值为 30)
  • next_page_token:上一条响应中的分页令牌
  • from / to:日期范围筛选条件

注意事项:

  • ZOOM_LIST_MEETINGS 不包含即时会议,只显示尚未过期的已安排会议
  • 对于过去的会议,请使用 type: "previous_meetings"
  • 分页:始终跟进 next_page_token,直到其为空,才能获取完整结果
  • 令牌过期:next_page_token 会在 15 分钟后过期
  • 会议 ID 可能超过 10 位;请使用长整数存储,而非标准整数
3. 管理录制内容

使用场景:用户想列出、获取或删除云录制内容

工具调用顺序:

  1. ZOOM_LIST_ALL_RECORDINGS - 列出用户在指定日期范围内的所有云录制内容[必需]
  2. ZOOM_GET_MEETING_RECORDINGS - 获取特定会议的录制内容[可选]
  3. ZOOM_DELETE_MEETING_RECORDINGS - 将录制内容移至回收站或永久删除[可选]
  4. ZOOM_LIST_ARCHIVED_FILES - 列出已归档的会议/网络研讨会文件[可选]

关键参数:

  • userId:已通过身份验证的用户使用 "me"
  • from / to:日期范围,格式为 yyyy-mm-dd(最长 1 个月)
  • meetingId:特定录制内容的会议 ID 或 UUID
  • action:删除时使用 "trash"(可恢复)或 "delete"(永久删除)
  • include_fields:设置为 "download_access_token",以获取用于下载录制内容的 JWT
  • trash:设置为 true,以列出回收站中的录制内容

注意事项:

  • 日期范围最长为 1 个月;如果范围超出此限制,API 会自动调整 from
  • 账户必须启用云录制
  • 以 / 开头或包含 // 的 UUID 必须进行两次 URL 编码
  • ZOOM_DELETE_MEETING_RECORDINGS 默认使用 "trash" 操作(可恢复);"delete" 为永久删除
  • 对于受密码保护的录制内容,下载 URL 要求在 Authorization 标头中提供 OAuth 令牌
  • 需要 Pro 套餐或更高级别的套餐
4. 获取会议参与者和报告

使用场景:用户想查看谁参加了过去的会议,或获取使用统计信息

工具调用顺序:

  1. ZOOM_GET_PAST_MEETING_PARTICIPANTS - 列出已结束会议的参会者[必需]
  2. ZOOM_GET_A_MEETING - 获取即将举行的会议详情和注册信息[可选]
  3. ZOOM_GET_DAILY_USAGE_REPORT - 获取每日使用统计信息(会议、参与者、分钟数)[可选]
  4. ZOOM_GET_A_MEETING_SUMMARY - 获取 AI 生成的会议摘要[可选]

关键参数:

  • meetingId:会议 ID(最近一次会议)或 UUID(特定场次)
  • page_size:每页记录数(默认值为 30)
  • next_page_token:参与者列表较大时使用的分页令牌

注意事项:

  • ZOOM_GET_PAST_MEETING_PARTICIPANTS 仅适用于付费套餐中的已结束会议
  • 单人会议(没有其他参与者)会返回空结果
  • UUID 编码:以 / 开头或包含 // 的 UUID 必须进行两次编码
  • 始终使用 next_page_token 分页,直到其为空,以免遗漏参会者
  • ZOOM_GET_A_MEETING_SUMMARY 需要启用了 AI Companion 的付费套餐;免费账户会收到 400 错误
  • ZOOM_GET_DAILY_USAGE_REPORT 的速率限制较严格;请避免频繁调用
5. 管理网络研讨会

适用场景:用户想要查看网络研讨会列表,或为网络研讨会注册参与者

工具调用顺序:

  1. ZOOM_LIST_WEBINARS - 列出已安排或即将开始的网络研讨会[必需]
  2. ZOOM_GET_A_WEBINAR - 获取网络研讨会的详细信息[可选]
  3. ZOOM_ADD_A_WEBINAR_REGISTRANT - 为网络研讨会注册参与者[可选]

关键参数:

  • userId:已通过身份验证的用户使用 "me"
  • type:"scheduled"(默认值)或 "upcoming"
  • page_size:每页记录数(默认值为 30)
  • next_page_token:分页令牌

注意事项:

  • 网络研讨会功能需要 Pro 计划或更高级别的计划,并添加 Webinar 附加组件
  • 免费版/基本版账户无法使用网络研讨会工具
  • 仅显示尚未过期的网络研讨会
  • 网络研讨会必须启用注册功能,ZOOM_ADD_A_WEBINAR_REGISTRANT 才能生效

常见模式

ID 解析
  • 用户 ID:用户级应用始终使用 "me" 指代已通过身份验证的用户
  • 会议 ID:数字 ID(以长整数形式存储);用于最新的会议实例
  • 会议 UUID:用于指定周期性会议的特定场次;如果以 / 开头或包含 //,则需进行双重编码
  • 场次 ID:用于指定周期性会议中的特定场次
分页

大多数 Zoom 列表端点使用基于令牌的分页:

  • 持续使用 next_page_token,直到其为空或缺失
  • 令牌在 15 分钟后过期
  • 显式设置 page_size(默认值为 30,因端点而异)
  • 不要使用 page_number(许多端点已弃用此参数)
时间处理
  • Zoom 在内部以 UTC 存储所有时间
  • 输入本地时间时,在 start_time 旁提供 timezone 字段
  • 使用 ISO 8601 格式:yyyy-MM-ddTHH:mm:ssZ(UTC)或 yyyy-MM-ddTHH:mm:ss(同时提供时区字段)
  • 仅包含日期的字段使用 yyyy-mm-dd 格式

已知注意事项

计划要求
  • 大多数录制和参与者功能需要 Pro 计划或更高级别的计划
  • 网络研讨会功能需要 Webinar 附加组件
  • AI 会议摘要需要启用 AI Companion 功能
  • 存档文件需要 Zoom 支持团队启用“Meeting and Webinar Archiving”
速率限制
  • 创建会议:每天 100 次请求,每场会议在 24 小时内最多更新 100 次
  • ZOOM_GET_PAST_MEETING_PARTICIPANTS:中等限流;批量处理时应增加延迟
  • ZOOM_GET_DAILY_USAGE_REPORT:严格限流
  • ZOOM_GET_A_MEETING、ZOOM_GET_MEETING_RECORDINGS:轻度限流
  • ZOOM_LIST_MEETINGS、ZOOM_LIST_ALL_RECORDINGS:中度限流
参数注意事项
  • 嵌套设置使用双下划线表示法(例如,settings__waiting_room)
  • start_url 会在 2 小时后过期;如有需要,可通过 API 续期
  • 当 waiting_room 为 true 时,join_before_host 会自动禁用
  • 周期性会议字段(recurrence__*)仅适用于类型 3 和 8
  • password 字段最多包含 10 个字符,且仅允许字母数字字符以及 @、-、_、*

快速参考

任务工具标识关键参数
创建会议ZOOM_CREATE_A_MEETINGuserId、topic、start_time、type
获取会议详情ZOOM_GET_A_MEETINGmeetingId
更新会议ZOOM_UPDATE_A_MEETINGmeetingId、要更新的字段
列出会议ZOOM_LIST_MEETINGSuserId、type、page_size
获取用户信息ZOOM_GET_USERuserId
列出录制内容ZOOM_LIST_ALL_RECORDINGSuserId、from、to
获取录制内容ZOOM_GET_MEETING_RECORDINGSmeetingId
删除录制内容ZOOM_DELETE_MEETING_RECORDINGSmeetingId、action
过往参会者ZOOM_GET_PAST_MEETING_PARTICIPANTSmeetingId、page_size
每日使用情况报告ZOOM_GET_DAILY_USAGE_REPORT日期参数
会议摘要ZOOM_GET_A_MEETING_SUMMARYmeetingId
列出网络研讨会ZOOM_LIST_WEBINARSuserId、type
获取网络研讨会ZOOM_GET_A_WEBINAR网络研讨会 ID
注册参加会议ZOOM_ADD_A_MEETING_REGISTRANTmeetingId、参会者详情
注册参加网络研讨会ZOOM_ADD_A_WEBINAR_REGISTRANT网络研讨会 ID、参会者详情
列出归档文件ZOOM_LIST_ARCHIVED_FILESfrom、to

适用场景

当需要执行概述中描述的工作流或操作时,可使用此技能。

示例

用户请求:

通过 Rube MCP(Composio)自动创建和管理 Zoom 会议、录制内容与网络研讨会,并跟踪参会者。

限制

  • 仅当任务明确符合上述范围时,才使用此技能。
  • 不要将输出视为环境特定验证、测试或专家审查的替代品。
  • 如果缺少必要的输入、权限、安全边界或成功标准,请暂停并请求澄清。

评论

支持 Markdown