[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill-fa297e11-f38e-4577-a1c2-7da5e07cabc7":3,"$fy-0BPNjOEhEuAr_rKi8p_NQ_07N0MGJxXuroDDkZKMw":43},{"id":4,"title":5,"description":6,"categoryId":7,"moduleId":8,"tags":9,"prompt":10,"icon":11,"source":12,"sourceUrl":13,"authorId":14,"authorName":15,"isPublic":16,"stars":17,"runs":18,"createdAt":19,"updatedAt":19,"module":20,"category":27,"packages":34},"fa297e11-f38e-4577-a1c2-7da5e07cabc7","zoom-automation","自动通过Rube MCP（Composio）创建、管理、录制Zoom会议、网络研讨会以及跟踪参与者。始终首先搜索当前架构的工具。","cat_prod_automation","mod_productivity","sickn33,productivity","---\nname: zoom-automation\ndescription: \"Automate Zoom meeting creation, management, recordings, webinars, and participant tracking via Rube MCP (Composio). Always search tools first for current schemas.\"\nrisk: critical\nsource: community\ndate_added: \"2026-02-27\"\n---\n\n# Zoom Automation via Rube MCP\n\nAutomate Zoom operations including meeting scheduling, webinar management, cloud recording retrieval, participant tracking, and usage reporting through Composio's Zoom toolkit.\n\n## Prerequisites\n\n- Rube MCP must be connected (RUBE_SEARCH_TOOLS available)\n- Active Zoom connection via `RUBE_MANAGE_CONNECTIONS` with toolkit `zoom`\n- Always call `RUBE_SEARCH_TOOLS` first to get current tool schemas\n- Most features require a paid Zoom account (Pro plan or higher)\n\n## Setup\n\n**Get Rube MCP**: Add `https:\u002F\u002Frube.app\u002Fmcp` as an MCP server in your client configuration. No API keys needed — just add the endpoint and it works.\n\n1. Verify Rube MCP is available by confirming `RUBE_SEARCH_TOOLS` responds\n2. Call `RUBE_MANAGE_CONNECTIONS` with toolkit `zoom`\n3. If connection is not ACTIVE, follow the returned auth link to complete Zoom OAuth\n4. Confirm connection status shows ACTIVE before running any workflows\n\n## Core Workflows\n\n### 1. Create and Schedule Meetings\n\n**When to use**: User wants to create a new Zoom meeting with specific time, duration, and settings\n\n**Tool sequence**:\n1. `ZOOM_GET_USER` - Verify authenticated user and check license type [Prerequisite]\n2. `ZOOM_CREATE_A_MEETING` - Create the meeting with topic, time, duration, and settings [Required]\n3. `ZOOM_GET_A_MEETING` - Retrieve full meeting details including join_url [Optional]\n4. `ZOOM_UPDATE_A_MEETING` - Modify meeting settings or reschedule [Optional]\n5. `ZOOM_ADD_A_MEETING_REGISTRANT` - Register participants for registration-enabled meetings [Optional]\n\n**Key parameters**:\n- `userId`: Always use `\"me\"` for user-level apps\n- `topic`: Meeting subject line\n- `type`: `1` (instant), `2` (scheduled), `3` (recurring no fixed time), `8` (recurring fixed time)\n- `start_time`: ISO 8601 format (`yyyy-MM-ddTHH:mm:ssZ` for UTC or `yyyy-MM-ddTHH:mm:ss` with timezone field)\n- `timezone`: Timezone ID (e.g., `\"America\u002FNew_York\"`)\n- `duration`: Duration in minutes\n- `settings__auto_recording`: `\"none\"`, `\"local\"`, or `\"cloud\"`\n- `settings__waiting_room`: Boolean to enable waiting room\n- `settings__join_before_host`: Boolean (disabled when waiting room is enabled)\n- `settings__meeting_invitees`: Array of invitee objects with email addresses\n\n**Pitfalls**:\n- `start_time` must be in the future; Zoom stores and returns times in UTC regardless of input timezone\n- If no `start_time` is set for type `2`, it becomes an instant meeting that expires after 30 days\n- The `join_url` for participants and `start_url` for host come from the create response - persist these\n- `start_url` expires in 2 hours (or 90 days for `custCreate` users)\n- Meeting creation is rate-limited to 100 requests\u002Fday\n- Setting names use double underscores for nesting (e.g., `settings__host_video`)\n\n### 2. List and Manage Meetings\n\n**When to use**: User wants to view upcoming, live, or past meetings\n\n**Tool sequence**:\n1. `ZOOM_LIST_MEETINGS` - List meetings by type (scheduled, live, upcoming, previous) [Required]\n2. `ZOOM_GET_A_MEETING` - Get detailed info for a specific meeting [Optional]\n3. `ZOOM_UPDATE_A_MEETING` - Modify meeting details [Optional]\n\n**Key parameters**:\n- `userId`: Use `\"me\"` for authenticated user\n- `type`: `\"scheduled\"` (default), `\"live\"`, `\"upcoming\"`, `\"upcoming_meetings\"`, `\"previous_meetings\"`\n- `page_size`: Records per page (default 30)\n- `next_page_token`: Pagination token from previous response\n- `from` \u002F `to`: Date range filters\n\n**Pitfalls**:\n- `ZOOM_LIST_MEETINGS` excludes instant meetings and only shows unexpired scheduled meetings\n- For past meetings, use `type: \"previous_meetings\"`\n- Pagination: always follow `next_page_token` until empty to get complete results\n- Token expiration: `next_page_token` expires after 15 minutes\n- Meeting IDs can exceed 10 digits; store as long integers, not standard integers\n\n### 3. Manage Recordings\n\n**When to use**: User wants to list, retrieve, or delete cloud recordings\n\n**Tool sequence**:\n1. `ZOOM_LIST_ALL_RECORDINGS` - List all cloud recordings for a user within a date range [Required]\n2. `ZOOM_GET_MEETING_RECORDINGS` - Get recordings for a specific meeting [Optional]\n3. `ZOOM_DELETE_MEETING_RECORDINGS` - Move recordings to trash or permanently delete [Optional]\n4. `ZOOM_LIST_ARCHIVED_FILES` - List archived meeting\u002Fwebinar files [Optional]\n\n**Key parameters**:\n- `userId`: Use `\"me\"` for authenticated user\n- `from` \u002F `to`: Date range in `yyyy-mm-dd` format (max 1 month range)\n- `meetingId`: Meeting ID or UUID for specific recording retrieval\n- `action`: `\"trash\"` (recoverable) or `\"delete\"` (permanent) for deletion\n- `include_fields`: Set to `\"download_access_token\"` to get JWT for downloading recordings\n- `trash`: Set `true` to list recordings from trash\n\n**Pitfalls**:\n- Date range maximum is 1 month; API auto-adjusts `from` if range exceeds this\n- Cloud Recording must be enabled on the account\n- UUIDs starting with `\u002F` or containing `\u002F\u002F` must be double URL-encoded\n- `ZOOM_DELETE_MEETING_RECORDINGS` defaults to `\"trash\"` action (recoverable); `\"delete\"` is permanent\n- Download URLs require the OAuth token in the Authorization header for passcode-protected recordings\n- Requires Pro plan or higher\n\n### 4. Get Meeting Participants and Reports\n\n**When to use**: User wants to see who attended a past meeting or get usage statistics\n\n**Tool sequence**:\n1. `ZOOM_GET_PAST_MEETING_PARTICIPANTS` - List attendees of a completed meeting [Required]\n2. `ZOOM_GET_A_MEETING` - Get meeting details and registration info for upcoming meetings [Optional]\n3. `ZOOM_GET_DAILY_USAGE_REPORT` - Get daily usage statistics (meetings, participants, minutes) [Optional]\n4. `ZOOM_GET_A_MEETING_SUMMARY` - Get AI-generated meeting summary [Optional]\n\n**Key parameters**:\n- `meetingId`: Meeting ID (latest instance) or UUID (specific occurrence)\n- `page_size`: Records per page (default 30)\n- `next_page_token`: Pagination token for large participant lists\n\n**Pitfalls**:\n- `ZOOM_GET_PAST_MEETING_PARTICIPANTS` only works for completed meetings on paid plans\n- Solo meetings (no other participants) return empty results\n- UUID encoding: UUIDs starting with `\u002F` or containing `\u002F\u002F` must be double-encoded\n- Always paginate with `next_page_token` until empty to avoid dropping attendees\n- `ZOOM_GET_A_MEETING_SUMMARY` requires a paid plan with AI Companion enabled; free accounts get 400 errors\n- `ZOOM_GET_DAILY_USAGE_REPORT` has a Heavy rate limit; avoid frequent calls\n\n### 5. Manage Webinars\n\n**When to use**: User wants to list webinars or register participants for webinars\n\n**Tool sequence**:\n1. `ZOOM_LIST_WEBINARS` - List scheduled or upcoming webinars [Required]\n2. `ZOOM_GET_A_WEBINAR` - Get detailed webinar information [Optional]\n3. `ZOOM_ADD_A_WEBINAR_REGISTRANT` - Register a participant for a webinar [Optional]\n\n**Key parameters**:\n- `userId`: Use `\"me\"` for authenticated user\n- `type`: `\"scheduled\"` (default) or `\"upcoming\"`\n- `page_size`: Records per page (default 30)\n- `next_page_token`: Pagination token\n\n**Pitfalls**:\n- Webinar features require Pro plan or higher with Webinar add-on\n- Free\u002Fbasic accounts cannot use webinar tools\n- Only shows unexpired webinars\n- Registration must be enabled on the webinar for `ZOOM_ADD_A_WEBINAR_REGISTRANT` to work\n\n## Common Patterns\n\n### ID Resolution\n- **User ID**: Always use `\"me\"` for user-level apps to refer to the authenticated user\n- **Meeting ID**: Numeric ID (store as long integer); use for latest instance\n- **Meeting UUID**: Use for specific occurrence of recurring meetings; double-encode if starts with `\u002F` or contains `\u002F\u002F`\n- **Occurrence ID**: Use with recurring meetings to target a specific occurrence\n\n### Pagination\nMost Zoom list endpoints use token-based pagination:\n- Follow `next_page_token` until it is empty or missing\n- Token expires after 15 minutes\n- Set explicit `page_size` (default 30, varies by endpoint)\n- Do not use `page_number` (deprecated on many endpoints)\n\n### Time Handling\n- Zoom stores all times in UTC internally\n- Provide `timezone` field alongside `start_time` for local time input\n- Use ISO 8601 format: `yyyy-MM-ddTHH:mm:ssZ` (UTC) or `yyyy-MM-ddTHH:mm:ss` (with timezone field)\n- Date-only fields use `yyyy-mm-dd` format\n\n## Known Pitfalls\n\n### Plan Requirements\n- Most recording and participant features require Pro plan or higher\n- Webinar features require Webinar add-on\n- AI meeting summaries require AI Companion feature enabled\n- Archived files require \"Meeting and Webinar Archiving\" enabled by Zoom Support\n\n### Rate Limits\n- Meeting creation: 100 requests\u002Fday, 100 updates per meeting in 24 hours\n- `ZOOM_GET_PAST_MEETING_PARTICIPANTS`: Moderate throttle; add delays for batch processing\n- `ZOOM_GET_DAILY_USAGE_REPORT`: Heavy rate limit\n- `ZOOM_GET_A_MEETING`, `ZOOM_GET_MEETING_RECORDINGS`: Light rate limit\n- `ZOOM_LIST_MEETINGS`, `ZOOM_LIST_ALL_RECORDINGS`: Medium rate limit\n\n### Parameter Quirks\n- Nested settings use double underscore notation (e.g., `settings__waiting_room`)\n- `start_url` expires in 2 hours; renew via API if needed\n- `join_before_host` is automatically disabled when `waiting_room` is `true`\n- Recurring meeting fields (`recurrence__*`) only apply to type `3` and `8`\n- `password` field has max 10 characters with alphanumeric and `@`, `-`, `_`, `*` only\n\n## Quick Reference\n\n| Task | Tool Slug | Key Params |\n|------|-----------|------------|\n| Create meeting | `ZOOM_CREATE_A_MEETING` | `userId`, `topic`, `start_time`, `type` |\n| Get meeting details | `ZOOM_GET_A_MEETING` | `meetingId` |\n| Update meeting | `ZOOM_UPDATE_A_MEETING` | `meetingId`, fields to update |\n| List meetings | `ZOOM_LIST_MEETINGS` | `userId`, `type`, `page_size` |\n| Get user info | `ZOOM_GET_USER` | `userId` |\n| List recordings | `ZOOM_LIST_ALL_RECORDINGS` | `userId`, `from`, `to` |\n| Get recording | `ZOOM_GET_MEETING_RECORDINGS` | `meetingId` |\n| Delete recording | `ZOOM_DELETE_MEETING_RECORDINGS` | `meetingId`, `action` |\n| Past participants | `ZOOM_GET_PAST_MEETING_PARTICIPANTS` | `meetingId`, `page_size` |\n| Daily usage report | `ZOOM_GET_DAILY_USAGE_REPORT` | date params |\n| Meeting summary | `ZOOM_GET_A_MEETING_SUMMARY` | `meetingId` |\n| List webinars | `ZOOM_LIST_WEBINARS` | `userId`, `type` |\n| Get webinar | `ZOOM_GET_A_WEBINAR` | webinar ID |\n| Register for meeting | `ZOOM_ADD_A_MEETING_REGISTRANT` | `meetingId`, participant details |\n| Register for webinar | `ZOOM_ADD_A_WEBINAR_REGISTRANT` | webinar ID, participant details |\n| List archived files | `ZOOM_LIST_ARCHIVED_FILES` | `from`, `to` |\n\n## When to Use\nThis skill is applicable to execute the workflow or actions described in the overview.\n\n## Limitations\n- Use this skill only when the task clearly matches the scope described above.\n- Do not treat the output as a substitute for environment-specific validation, testing, or expert review.\n- Stop and ask for clarification if required inputs, permissions, safety boundaries, or success criteria are missing.\n","","imported","https:\u002F\u002Fgithub.com\u002Fsickn33\u002Fantigravity-awesome-skills","user_system_seed","SkillOPIC",true,113,1720,"2026-05-16 13:48:30",{"id":8,"name":21,"slug":22,"icon":23,"description":24,"sort":25,"createdAt":26},"效率工具","productivity","mdi-lightning-bolt-outline","文档处理、数据分析、自动化工作流",4,"2026-05-16 12:53:40",{"id":7,"name":28,"slug":29,"icon":30,"description":31,"moduleId":8,"sort":32,"skillCount":33,"createdAt":26},"自动化","automation","mdi-robot-outline","工作流自动化、批处理",3,101,[35],{"id":36,"skillId":4,"version":37,"fileName":38,"fileSize":39,"filePath":40,"fileHash":41,"manifest":42,"createdAt":19},"00ba6339-72ac-4c31-ae4b-87d5bd534905","1.0.0","zoom-automation.zip",4069,"uploads\u002Fskills\u002Ffa297e11-f38e-4577-a1c2-7da5e07cabc7\u002Fzoom-automation.zip","f06d0f546635939b144a524ee1849e191694c9fe6beed4af771faadf3dfa933e","[{\"path\":\"SKILL.md\",\"isDirectory\":false,\"size\":11211}]",{"code":44,"message":45,"data":46},200,"success",{"items":47,"stats":48,"page":51},[],{"averageRating":49,"totalRatings":49,"ratingCounts":50},0,[49,49,49,49,49],{"limit":52,"offset":49,"hasMore":53,"nextOffset":52,"ratedOnly":16},15,false]