Zoom MCP
Guidance for the bundled Zoom MCP connector in this Claude plugin. Prefer design-mcp-workflow or setup-zoom-mcp first, then route here for tool-surface details, auth expectations, and MCP-specific constraints.
Zoom MCP Server
Zoom's current hosted MCP catalog uses mcp.zoom.us for AI-agent access to:
- semantic meeting search
- cross-Zoom search over Team Chat messages, Zoom Docs, and My Notes
- meeting-linked asset retrieval
- recording resource retrieval
- Zoom Docs and Hub content creation and retrieval
- Canvas, Chat, Tasks, Revenue Accelerator, and Whiteboard product workflows
The complete current server and scope inventory is in
references/servers.md. The dedicated /mcp/docs path and the former
/mcp/team_chat path are retained only as legacy compatibility references; use Canvas and Chat
for new integrations.
Current tool names from the main Zoom MCP server, verified by tools/list:
create_new_file_with_markdownget_file_contentget_meeting_assetsget_recording_resourcehub_create_file_from_contenthub_get_file_contentrecordings_listsearch_meetingssearch_zoom
Some MCP clients namespace server tools in the UI, for example zoom-mcp:recordings_list.
Treat the raw tool names above as authoritative.
Docs-specific MCP work can use the main zoom-mcp server or the current Zoom Canvas MCP server;
use the exact tool names exposed by the active server.
Whiteboard-specific MCP work is covered by the dedicated skill whiteboard/SKILL.md.
Product-specific Chat MCP work is covered by the child skill
team-chat/SKILL.md. The folder name is retained for compatibility with
existing links; the current official server is Zoom Chat at /mcp/chat/streamable.
Need the OAuth app/scopes first? Use Marketplace app management to create or validate the General App, select user/admin scopes for MCP tools, and understand credential response shapes before minting the bearer token passed to the MCP server. Start from the default Zoom MCP template, or select the matching Meetings, Canvas, Chat, Tasks, Revenue Accelerator, or Whiteboard template from the Marketplace template selector. Automated selection must inspect the template index and require
app_type: general,usage: USER_OPERATION, andsupports_manifest_update: true.
Quick Start
1. Use the right auth path for your Claude product
- Claude Cowork: use the published Zoom connector in Claude's connector directory and complete OAuth there.
- Claude Code: do not use the built-in
Authenticatebutton for this server; complete Zoom user-level OAuth yourself and provide the token throughZOOM_MCP_ACCESS_TOKEN.
2. Export the token expected by the bundled connector:
export ZOOM_MCP_ACCESS_TOKEN="your_zoom_user_oauth_access_token"
3. Enable or restart the plugin so Claude restarts the bundled MCP server definition.
4. Verify discovery:
- Confirm the client can see 9 default Zoom MCP tools:
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, andhub_get_file_content. - If the client exposes raw protocol inspection,
tools/listis the authoritative discovery source. - The current catalog is documented in references/tools.md.
5. In Claude Code, use /setup-zoom-mcp to continue the setup and workflow design.
6. Run the first useful call:
recordings_list
userId: "me"
from: "2026-03-01"
to: "2026-03-06"
page_size: 10
Critical Notes
1. User OAuth is the documented execution path
Use a General app with user-level OAuth as the execution path for Zoom MCP tool use in this plugin. Do not rely on Server-to-Server OAuth as a supported MCP auth model here.
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 the main Zoom MCP server at https://mcp.zoom.us/mcp/zoom/streamable,
accurate as of 28 Jul 2026, are:
ai_companion:read:search— Search across Zoom Meeting, Zoom Chat, and Zoom Doc, returning the most relevant results based on the querymeeting:read:search— Search and view meetingsmeeting:read:assets— View a meeting's assetscloud_recording:read:list_user_recordings— Lists all cloud recordings for a user.cloud_recording:read:content— read recording content scopedocs:write:import— Create a new file by importdocs:read:export— Read file content in Markdown formathub:write:content— Create Hub files from contenthub:read:content— Read Hub file content
Other Zoom MCP servers use different scope sets. Use references/servers.md and the published Zoom MCP server pages as the source of truth for those surfaces.
3. 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. Zoom Chat tools are a separate MCP surface
The default Zoom MCP server includes read-only search_zoom for Chat and Docs search.
The Zoom Chat MCP server is separate and exposes read/write tools for messages, contacts,
channels, files, and sessions. Route 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.
Server Endpoints
| Transport | URL |
|---|---|
| Streamable HTTP (recommended) | https://mcp.zoom.us/mcp/zoom/streamable |
| SSE (fallback) | https://mcp.zoom.us/mcp/zoom/sse |
All current product-specific endpoints are listed in references/servers.md.
The current official product paths include /meeting, /canvas, /chat, /tasks,
/revenue_accelerator, and /whiteboard.
Search and Retrieval Model
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:
- Recap-oriented results: AI summary, meeting-linked documents, recordings, and related assets
- Recording-oriented results: cloud recording references and transcript-capable resources
Use examples/transcript-retrieval.md for the main retrieval workflow.
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.
Tool Catalog
| 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 |
search_meetings |
q, from, to, page_size, next_page_token |
meeting:read:search |
search_zoom |
search_entities*, query, page_size |
ai_companion:read:search |
get_recording_resource |
meetingId*, types, clip_num, play_time, raw_passcode, encode_passcode |
cloud_recording:read:content |
recordings_list |
userId*, from, to, meeting_id, trash, trash_type, page_size, next_page_token |
cloud_recording:read:list_user_recordings |
hub_create_file_from_content |
content, file_type |
hub:write:content |
hub_get_file_content |
file_id, format |
hub:read:content |
* Required parameter
Full parameter and output guidance: references/tools.md
Key Workflows
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
userId: "me"
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"
Use Zoom Canvas MCP for current Docs and Canvas workflows:
create_file_with_contentget_file_contentcanvas_insert_blockcanvas_update_blockcanvas_replace_range_of_blocks
Error Reference
| Code | Meaning | Fix |
|---|---|---|
401 Unauthorized |
Missing or rejected bearer token at the endpoint | Set ZOOM_MCP_ACCESS_TOKEN, then restart Claude or re-enable the plugin |
-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
Documentation
Concepts
- concepts/mcp-architecture.md — MCP protocol, hosted endpoints, discovery, and capability model
- concepts/oauth-setup.md — OAuth app creation, MCP-specific scopes, AI Companion prerequisites, token lifecycle
Examples
- examples/transcript-retrieval.md — Search/assets and recording-resource workflows
- examples/search-chat-docs.md — Cross-Zoom search over Team Chat, Zoom Docs, and My Notes
- examples/create-zoom-doc.md — Verified Zoom Docs creation flow
- examples/search-and-act.md — Search, inspect assets, and hand off CRUD work to REST when needed
- examples/meeting-lifecycle.md — Why meeting CRUD belongs in REST, plus the MCP-to-REST handoff pattern
References
- references/tools.md — Current Zoom MCP tool reference
- references/servers.md — Current Zoom MCP server catalog, endpoints, and scope mappings
- references/error-codes.md — MCP and Zoom API errors with fixes
- whiteboard/SKILL.md — Dedicated Whiteboard MCP skill
- team-chat/SKILL.md — Zoom Chat MCP child skill; folder retained for compatibility
Troubleshooting
- troubleshooting/common-errors.md — Scope failures, endpoint mixups, search/recording issues
Operations
- RUNBOOK.md — 5-minute preflight and debugging checklist
Related Skills
- zoom-rest-api — Deterministic REST API access, including meeting CRUD
- zoom-oauth — OAuth implementation patterns
- zoom-webhooks — Event-driven recording and meeting workflows
- zoom-rtms — Live media and transcript streams during active meetings