Zoom Automation via Rube MCP
Automate Zoom operations including meeting scheduling, webinar management, cloud recording retrieval, participant tracking, and usage reporting through Composio's Zoom toolkit.
Toolkit docs: composio.dev/toolkits/zoom
Prerequisites
- •Rube MCP must be connected (RUBE_SEARCH_TOOLS available)
- •Active Zoom connection via
RUBE_MANAGE_CONNECTIONSwith toolkitzoom - •Always call
RUBE_SEARCH_TOOLSfirst to get current tool schemas - •Most features require a paid Zoom account (Pro plan or higher)
Setup
Get Rube MCP: Add https://rube.app/mcp as an MCP server in your client configuration. No API keys needed — just add the endpoint and it works.
- •Verify Rube MCP is available by confirming
RUBE_SEARCH_TOOLSresponds - •Call
RUBE_MANAGE_CONNECTIONSwith toolkitzoom - •If connection is not ACTIVE, follow the returned auth link to complete Zoom OAuth
- •Confirm connection status shows ACTIVE before running any workflows
Core Workflows
1. Create and Schedule Meetings
When to use: User wants to create a new Zoom meeting with specific time, duration, and settings
Tool sequence:
- •
ZOOM_GET_USER- Verify authenticated user and check license type [Prerequisite] - •
ZOOM_CREATE_A_MEETING- Create the meeting with topic, time, duration, and settings [Required] - •
ZOOM_GET_A_MEETING- Retrieve full meeting details including join_url [Optional] - •
ZOOM_UPDATE_A_MEETING- Modify meeting settings or reschedule [Optional] - •
ZOOM_ADD_A_MEETING_REGISTRANT- Register participants for registration-enabled meetings [Optional]
Key parameters:
- •
userId: Always use"me"for user-level apps - •
topic: Meeting subject line - •
type:1(instant),2(scheduled),3(recurring no fixed time),8(recurring fixed time) - •
start_time: ISO 8601 format (yyyy-MM-ddTHH:mm:ssZfor UTC oryyyy-MM-ddTHH:mm:sswith timezone field) - •
timezone: Timezone ID (e.g.,"America/New_York") - •
duration: Duration in minutes - •
settings__auto_recording:"none","local", or"cloud" - •
settings__waiting_room: Boolean to enable waiting room - •
settings__join_before_host: Boolean (disabled when waiting room is enabled) - •
settings__meeting_invitees: Array of invitee objects with email addresses
Pitfalls:
- •
start_timemust be in the future; Zoom stores and returns times in UTC regardless of input timezone - •If no
start_timeis set for type2, it becomes an instant meeting that expires after 30 days - •The
join_urlfor participants andstart_urlfor host come from the create response - persist these - •
start_urlexpires in 2 hours (or 90 days forcustCreateusers) - •Meeting creation is rate-limited to 100 requests/day
- •Setting names use double underscores for nesting (e.g.,
settings__host_video)
2. List and Manage Meetings
When to use: User wants to view upcoming, live, or past meetings
Tool sequence:
- •
ZOOM_LIST_MEETINGS- List meetings by type (scheduled, live, upcoming, previous) [Required] - •
ZOOM_GET_A_MEETING- Get detailed info for a specific meeting [Optional] - •
ZOOM_UPDATE_A_MEETING- Modify meeting details [Optional]
Key parameters:
- •
userId: Use"me"for authenticated user - •
type:"scheduled"(default),"live","upcoming","upcoming_meetings","previous_meetings" - •
page_size: Records per page (default 30) - •
next_page_token: Pagination token from previous response - •
from/to: Date range filters
Pitfalls:
- •
ZOOM_LIST_MEETINGSexcludes instant meetings and only shows unexpired scheduled meetings - •For past meetings, use
type: "previous_meetings" - •Pagination: always follow
next_page_tokenuntil empty to get complete results - •Token expiration:
next_page_tokenexpires after 15 minutes - •Meeting IDs can exceed 10 digits; store as long integers, not standard integers
3. Manage Recordings
When to use: User wants to list, retrieve, or delete cloud recordings
Tool sequence:
- •
ZOOM_LIST_ALL_RECORDINGS- List all cloud recordings for a user within a date range [Required] - •
ZOOM_GET_MEETING_RECORDINGS- Get recordings for a specific meeting [Optional] - •
ZOOM_DELETE_MEETING_RECORDINGS- Move recordings to trash or permanently delete [Optional] - •
ZOOM_LIST_ARCHIVED_FILES- List archived meeting/webinar files [Optional]
Key parameters:
- •
userId: Use"me"for authenticated user - •
from/to: Date range inyyyy-mm-ddformat (max 1 month range) - •
meetingId: Meeting ID or UUID for specific recording retrieval - •
action:"trash"(recoverable) or"delete"(permanent) for deletion - •
include_fields: Set to"download_access_token"to get JWT for downloading recordings - •
trash: Settrueto list recordings from trash
Pitfalls:
- •Date range maximum is 1 month; API auto-adjusts
fromif range exceeds this - •Cloud Recording must be enabled on the account
- •UUIDs starting with `