From zoom-skills
Configures the Zoom MCP server for AI-agent access to Zoom meetings, Docs, Team Chat, Whiteboard, Tasks, and Revenue Accelerator via OAuth-authorized MCP endpoints.
How this skill is triggered — by the user, by Claude, or both
Slash command
/zoom-skills:zoom-mcpThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Zoom hosts an MCP server at `mcp.zoom.us` for AI-agent access to:
RUNBOOK.mdconcepts/mcp-architecture.mdconcepts/oauth-setup.mdexamples/create-zoom-doc.mdexamples/meeting-lifecycle.mdexamples/search-and-act.mdexamples/search-chat-docs.mdexamples/transcript-retrieval.mdmeetings/references/tools.mdreferences/error-codes.mdreferences/tools.mdrevenue-accelerator/references/tools.mdtasks/references/tools.mdteam-chat/references/tools.mdtroubleshooting/common-errors.mdwhiteboard/references/authentication-and-identifiers.mdwhiteboard/references/tools.mdZoom hosts an MCP server at mcp.zoom.us for AI-agent access to:
Current default Zoom MCP server tool names verified by tools/list:
create_new_file_with_markdownget_file_contentget_meeting_assetsget_recording_resourcehub_create_file_from_contenthub_get_file_contentrecordings_listsearch_meetingssearch_zoomSome MCP clients namespace server tools in the UI, for example zoom-mcp:recordings_list.
Treat the raw tool names above as authoritative.
Product-specific MCP work is split into child skills for Whiteboard, Team Chat, Meetings, Docs, Tasks, and Revenue Accelerator.
Marketplace-first skill chain: Before connecting to any Zoom MCP server, route to Marketplace app management and the Marketplace template selector. Create a user-managed General App from the matching MCP template and obtain its client ID. Then route to zoom-oauth to authorize the user, exchange the authorization code (with PKCE where configured), and obtain the bearer access token. Only after those steps should this skill configure the MCP endpoint and call
initialize,tools/list, ortools/call.
1. Create the Marketplace app:
2. Obtain a user OAuth access token:
3. Add to an MCP client (Claude Code example):
claude mcp add --transport http zoom-mcp \
https://mcp.zoom.us/mcp/zoom/streamable \
--header "Authorization: Bearer YOUR_ZOOM_OAUTH_TOKEN" \
--scope user
4. Verify discovery:
search_meetings,
create_new_file_with_markdown, search_zoom, get_meeting_assets,
get_recording_resource, get_file_content, recordings_list,
hub_create_file_from_content, and hub_get_file_content.tools/list is the authoritative discovery source.5. Run the first useful call:
recordings_list
from: "2026-03-01"
to: "2026-03-06"
page_size: 10
1. User OAuth is the recommended execution path
A Server-to-Server OAuth token can:
tools/listUse user OAuth as the default execution path for Zoom MCP tool use unless you have already validated S2S scope coverage and tool execution for your app.
2. Zoom MCP uses MCP-specific granular scopes
The Zoom MCP scope set is not the same as the older broad REST scopes. The key scopes for this surface are:
meeting:read:searchmeeting:read:assetsai_companion:read:searchcloud_recording:read:list_user_recordingscloud_recording:read:contentdocs:write:import for Zoom Docs creationdocs:read:export for Zoom Docs/My Notes Markdown content exporthub:write:content for Hub file creationhub:read:content for Hub file content export3. AI Companion features are feature prerequisites, not scope substitutes
Semantic meeting search, meeting assets, and recording-content retrieval depend on account features such as Smart Recording and Meeting Summary for useful results. These feature settings do not replace the required OAuth scopes.
4. Whiteboard is a separate MCP surface
The Zoom MCP endpoint and the Whiteboard MCP endpoint are separate. Route Whiteboard-specific requests to whiteboard/SKILL.md.
5. Team Chat tools are a separate MCP surface
The default Zoom MCP server includes read-only search_zoom for Team Chat and Docs search.
The Team Chat MCP server is separate and exposes read, search, write, and update tools for
messages, files, contacts, channels, and channel members. Route Team Chat MCP requests to
team-chat/SKILL.md.
6. Use REST for deterministic meeting CRUD
The current Zoom MCP tool surface does not expose deterministic meeting create, update, or delete tools. If the user needs explicit meeting CRUD operations, route to ../rest-api/SKILL.md.
| Transport | URL |
|---|---|
| Streamable HTTP (recommended) | https://mcp.zoom.us/mcp/zoom/streamable |
| SSE (fallback) | https://mcp.zoom.us/mcp/zoom/sse |
Whiteboard child skill:
Team Chat child skill:
Other dedicated child skills:
search_meetings uses AI Companion retrieval rather than a plain metadata filter. In this
use the live MCP server as authoritative for response schema and scope behavior.
Two result families matter most:
Use search_zoom instead of search_meetings when the task is cross-Zoom knowledge discovery
over Team Chat messages, Zoom Docs, or My Notes. Use get_file_content after search_zoom
when the user asks to inspect the Markdown content of a returned Zoom Doc or My Notes file.
Use examples/transcript-retrieval.md for the main retrieval workflow.
| Tool | Key Parameters | Required Scope |
|---|---|---|
create_new_file_with_markdown | content*, file_name, parent_id | docs:write:import |
get_file_content | fileId* | docs:read:export |
get_meeting_assets | meetingId* | meeting:read:assets |
get_recording_resource | meetingId*, types, clip_num, play_time, raw_passcode, encode_passcode | cloud_recording:read:content |
hub_create_file_from_content | content*, file type/name and destination fields from live schema | hub:write:content |
hub_get_file_content | file identifier* and format | hub:read:content |
recordings_list | from, to, meeting_id, trash, trash_type, page_size, next_page_token | cloud_recording:read:list_user_recordings |
search_meetings | q, from, to, include_zoom_my_notes, page_size, next_page_token | meeting:read:search |
search_zoom | search_entities*, query, page_size | ai_companion:read:search |
* Required parameter
Full parameter and output guidance: references/tools.md
Search meeting content, then retrieve assets:
search_meetings
q: "Q4 planning discussion"
from: "2026-03-01"
to: "2026-03-06"
→ choose a returned meeting
→ get_meeting_assets meetingId: "MEETING_ID_OR_UUID"
List recordings, then retrieve recording resources:
recordings_list
from: "2026-03-01"
to: "2026-03-06"
→ choose a recording target
→ get_recording_resource meetingId: "MEETING_UUID_OR_RECORDING_ID"
Create a Zoom Doc from Markdown:
create_new_file_with_markdown
file_name: "Q4 Planning Notes"
content: "# Decisions\n\n- ..."
Search Zoom Chat or Docs, then read a returned file:
search_zoom
query: "Q4 planning decisions"
search_entities:
- entity_type: "zoom_doc"
filters:
doc_view: "notes"
page_size: 10
→ choose a returned Zoom Doc file_id
→ get_file_content fileId: "FILE_ID"
| Code | Meaning | Fix |
|---|---|---|
401 Unauthorized | Missing or rejected bearer token at the endpoint | Re-register the MCP server with a valid bearer token |
-32001 Invalid access token | Token expired, malformed, or missing required scopes | Refresh OAuth token and verify the MCP-specific scopes |
-32602 Can not found tool | Requested tool name is not exposed by the active MCP server | Re-run tools/list and use the current tool names for that endpoint |
404 | Possible downstream resource-not-found response | Re-discover the target with search_meetings or recordings_list |
Full error reference: references/error-codes.md
npx claudepluginhub zoom/skills --plugin zoom-skillsGuides developers through Zoom platform integration, including OAuth, app types, scopes, and SDK/API selection. Use when starting a Zoom project or choosing between Zoom APIs.
Automates Zoom meeting creation, scheduling, webinar management, recording retrieval, and participant tracking via Composio's Zoom toolkit. Requires Rube MCP connection.
Automates Zoom meeting creation, scheduling, webinar management, cloud recording retrieval, and participant tracking via Rube MCP (Composio).