Zoom
Let your AI work with Zoom: find and read your meetings, schedule, change and cancel them, manage registrants, see who attended past meetings, list cloud recordings and webinars, and pull usage reports. Signed in with your Zoom account through a Zoom app of your own (OAuth).
7 æ¥éç¡æ · ã¯ã¬ãžããã«ãŒãäžèŠ Â· EU ãã¹ã
Zoom ã«äœã§ãèãã
AnythingMCP çµç±ã§ Zoom ã«å®éã®ããã³ããã詊ãã â Claude ãããŒã«ãåŒã³åºããåçããŸããããªãã®ã¡ãã»ãŒãžã§ Enter ãæŒããš Cloud ã«ã€ã³ã¹ããŒã«ããŸãã
Zoom ã Cloud ã«ã€ã³ã¹ããŒã«Claude 㯠AI ã®ãã誀ãããšããããŸããåçãã確èªãã ããã
2 åã§ã»ããã¢ãã
- 1cloud.anythingmcp.com ã§ç¡æãã©ã€ã¢ã«éå§ã
- 2ã³ãã¯ã¿ãŒã¹ãã¢ã§ Zoom ãã¯ãªãã¯ãè³æ Œæ å ±ã貌ãä»ãã
- 3MCP API ããŒãçºè¡ããAI ã¯ã©ã€ã¢ã³ãã MCP URL ã«åããã
Zoom ã®ã¬ã€ã
äž»èŠ AI ã¯ã©ã€ã¢ã³ãåãã®ã¹ããããã€ã¹ãããã»ããã¢ããã
Zoom ã®ã»ããã¢ãã
ã³ãã¯ã¿å®çŸ©ãã®ãã®ããïŒèªèšŒæ å ±ã®å ¥æå ãå¿ èŠãªæš©éããã®ã¢ããã¿ãåŒã³åºã APIã ã³ãã¯ã¿äœè ã«ããè±èªã§æäŸãããŠããŸãã
Zoom
This connector works with one Zoom account through the Zoom REST API v2 (https://api.zoom.us/v2): the signed-in user and the account's users, scheduled meetings (list, read, create, change, delete), meeting registration (list, add and approve or deny registrants), past meetings with their instances and participants, cloud recordings (metadata only), webinars, and usage reports per user and per meeting. It signs in with OAuth 2.0 (authorization code) through a Zoom General app of your own, as the Zoom user who authorizes it.
Why a General app and not Server-to-Server OAuth: Zoom's Server-to-Server apps get their token with the account_credentials grant plus the account id, which this connector's OAuth engine does not send. A General app uses the standard authorization code flow with refresh tokens, which it does. The API calls are the same either way.
Setup (about 10 minutes; a free Zoom Basic account works for the meeting tools)
- Sign in at https://marketplace.zoom.us/ as the account owner, an admin, or a user with the Zoom for developers role. In the lower-left navigation click Developer, then Develop (top right) â Build an app â General app â Create.
- On Basic Info, rename the app (for example "AnythingMCP") and choose how it is managed: User-managed when the AI should work with your own meetings and recordings (the usual case), Admin-managed when it should also read other users, their meetings and the usage reports (the
:adminscopes below; an admin authorizes it). - Under App Credentials, copy the development Client ID and Client Secret into
ZOOM_CLIENT_IDandZOOM_CLIENT_SECRET. Development credentials are enough for your own account; an app that is never published can only be authorized by users of the account that built it. - Under OAuth Information, set OAuth Redirect URL to
https://cloud.anythingmcp.com/api/mcp-oauth/callbackon AnythingMCP Cloud, or<your AnythingMCP URL>/api/mcp-oauth/callbackwhen you host AnythingMCP yourself, and add the same URL to the OAuth Allow List. Click Continue. - Skip Features and Surface (no Zoom App, webhooks or in-client features are needed).
- On Scopes click Add Scopes and tick the granular scopes below (for each one Zoom asks for a short reason, e.g. "lets the user's AI assistant read their meetings").
- Install the connector, then click Authorize with Provider on the connector page, sign in to Zoom and click Allow. There is no need to click Add App Now under Local Test; authorizing does the same.
Scopes, read (user-managed): user:read:user, meeting:read:list_meetings, meeting:read:meeting, meeting:read:list_registrants, meeting:read:past_meeting, meeting:read:list_past_instances, meeting:read:list_past_participants, cloud_recording:read:list_user_recordings, cloud_recording:read:list_recording_files, webinar:read:list_webinars, webinar:read:webinar.
Scopes, write: meeting:write:meeting (create), meeting:update:meeting (change), meeting:delete:meeting (delete), meeting:write:registrant (add a registrant), meeting:update:registrant_status (approve, deny, cancel).
Scopes, admin (admin-managed app, authorized by an admin; only if you need them): user:read:list_users:admin for zoom_list_users, user:read:user:admin to read other users, the :admin variant of each meeting, recording and webinar scope above (e.g. meeting:read:list_meetings:admin) to work with other users' meetings, and report:read:user:admin, report:read:meeting:admin, report:read:list_meeting_participants:admin for the report tools. If the scope picker does not offer :admin scopes, switch the app to Admin-managed on Basic Info.
Read-only setup: tick only the read scopes and switch off zoom_create_meeting, zoom_update_meeting, zoom_add_meeting_registrant and zoom_update_meeting_registrant_status. zoom_delete_meeting is installed switched off.
Sign-in lifetime: access tokens last one hour and are renewed automatically. The refresh token lasts 90 days and is replaced on every renewal, so the connector stays signed in as long as it is used at least once every 90 days. After scope changes in the app, click Authorize with Provider again: a token only carries the scopes granted when it was issued.
Users: me stands for the signed-in user wherever a tool takes user_id (the default). Another user's id or email works only with the :admin scopes.
Meetings: a meeting id is a number of 9 to 11 digits (pass it as text, e.g. "85746065432"). zoom_list_meetings returns scheduled meetings only, never instant ones, and with type upcoming or previous_meetings at most 6 months. Times are ISO 8601: 2026-10-20T15:00:00Z in UTC, or 2026-10-20T17:00:00 together with timezone (e.g. Europe/Berlin). Meeting type: 1 instant, 2 scheduled (default), 3 recurring without fixed time, 8 recurring with fixed time (needs recurrence). On the free Basic plan, meetings with 3 or more participants end after 40 minutes.
Notifications: confirm first. Creating or changing a meeting can email alternative hosts (settings.alternative_hosts) and invitees (settings.meeting_invitees); adding a registrant emails them a confirmation, and approving, denying or cancelling a registrant emails them too. Before any of these, say who will be notified and wait for the user's yes. zoom_get_meeting and zoom_create_meeting leave out start_url: it carries a host token and starts the meeting as the host, so it should not travel through the conversation; the host starts the meeting from the Zoom app or with join_url while signed in.
Registration (Pro plan or higher): set settings.approval_type to 0 (automatic approval) or 1 (manual approval) when creating or updating the meeting; 2 means no registration. zoom_list_meeting_registrants lists approved registrants unless status is pending or denied; zoom_update_meeting_registrant_status takes registrant ids from that list. Zoom allows 3 registration requests and 10 status changes per registrant and meeting per day.
Past meetings and UUIDs: every occurrence of a meeting has its own UUID (e.g. aDYlohsHRtCd4ii1uC2+hA==). zoom_list_past_meeting_instances lists them; zoom_get_past_meeting, zoom_list_past_meeting_participants, zoom_get_meeting_recordings, zoom_get_meeting_report and zoom_get_meeting_participants_report take a meeting id (latest occurrence) or a UUID. A UUID that starts with / or contains // must reach Zoom double URL-encoded: pass such a UUID already URL-encoded once (/ajXp112QmuoKj4854875== becomes %2FajXp112QmuoKj4854875%3D%3D) and the connector encodes it the second time. Pass every other UUID unchanged. Past meetings are readable for 12 months, participants and instances for 15 months; participant lists need a paid plan and leave out one-person meetings.
Recordings (Pro plan or higher with cloud recording on): zoom_list_recordings covers at most one month per call (from and to as yyyy-mm-dd, default today); page back month by month for older ones. zoom_get_meeting_recordings returns each file's type, size, play_url and download_url. The connector does not download recordings: a download_url only works with an access token, so give the user the play_url or share_url instead.
Webinars need a Pro or higher plan with the Webinars add-on; without it Zoom answers code 200 "Webinar plan is missing".
Reports (Pro plan or higher, admin scopes): zoom_get_user_meetings_report covers one month per call within the last 6 months and lists only meetings with at least two participants. Report endpoints are counted as heavy requests.
Paging: list tools return next_page_token while more results exist; pass it back unchanged with the same filters to get the next page (it expires after 15 minutes). page_size is at most 300 (2,000 for users). An empty account may answer with an empty list, a total_records of 0, or no list key at all. zoom_list_webinars still pages with page_number.
Rate limits are per account and shared by all apps. Free accounts: light requests 4 per second and 6,000 a day, medium 2 per second and 2,000 a day, heavy 1 per second and 1,000 a day; Pro and higher allow 10 to 80 per second. Creating and updating meetings is limited to 100 a day per host. Over a limit Zoom answers 429; wait (a second, or until the next UTC day for daily limits).
Errors (Zoom puts its own code and message in the body)
- 401 code 124 "Invalid access token": the sign-in expired or was revoked; click Authorize with Provider again.
- 400 code 4711 "Invalid access token, does not contain scopes" (or 4700): the app lacks the scope named in the message; add it under Scopes, then authorize again.
- 400 code 200 "No permission" or "Only available for Paid account": the plan or the user's role does not allow it (registration, past participants, recordings, webinars and reports need paid plans).
- 404 code 3001 "Meeting does not exist", 1001 "User does not exist", 3301 "There is no recording for this meeting"; code 300 "The next page token is invalid or expired".
- 3161: the user may not host or schedule meetings.
Out of scope here: the daily usage report (/report/daily has no granular scope, so a new Zoom app cannot request it), downloading recording files, transcripts and AI Companion summaries, creating or changing webinars, Zoom Phone, Team Chat, Rooms, account settings and user management.
ããªãã® AI 㯠Zoom ãã 2 ã¯ãªãã¯å ã
ã³ãã¯ã¿ãŒãã€ã³ã¹ããŒã«ãè³æ Œæ å ±ã貌ãä»ããAI ã«è³ªåã7 æ¥éç¡æãã¯ã¬ãžããã«ãŒãäžèŠã