> ## Documentation Index
> Fetch the complete documentation index at: https://docs.peacock.support/llms.txt
> Use this file to discover all available pages before exploring further.

# Zoom meeting tools: list, create, update, and delete

> Manage your Zoom meetings through Claude using five MCP tools: list, get details, create, update, and delete scheduled or recurring meetings.

The Zoom MCP Server exposes five meeting management tools that Claude can call on your behalf. You interact with your meetings by describing what you want in plain language — Claude selects the right tool, passes the correct parameters to the Zoom API, and returns the result to you in the conversation.

## list\_meetings

Retrieve your scheduled, live, upcoming, or previous meetings. If you don't specify a type, Claude requests your upcoming meetings by default.

**Example prompts**

* "Show me my upcoming Zoom meetings"
* "List my previous meetings"
* "Show me any live meetings right now"

### Parameters

<ParamField query="type" type="string" default="upcoming">
  The category of meetings to return. Accepted values: `scheduled`, `live`, `upcoming`, `upcoming_meetings`, `previous_meetings`.
</ParamField>

<ParamField query="page_size" type="number" default="30">
  Number of records to return per page. Maximum is 300.
</ParamField>

***

## get\_meeting

Fetch full details for a single meeting by its ID or UUID — including start time, join URL, password, settings, and more.

**Example prompts**

* "Get the details for Zoom meeting ID 123456789"
* "What are the settings for meeting 987654321?"

### Parameters

<ParamField query="meeting_id" type="string" required>
  The meeting ID or meeting UUID. Meeting IDs are 9–11 digit numbers visible in Zoom invite links.
</ParamField>

***

## create\_meeting

Schedule a new Zoom meeting with the topic, time, duration, and settings you specify. Only the meeting topic is required; everything else is optional.

**Example prompts**

* "Create a Zoom meeting titled 'Team Standup' for tomorrow at 10am EST, 30 minutes duration"
* "Schedule a recurring Zoom meeting called 'Weekly Sync' with the waiting room enabled"

### Parameters

<ParamField body="topic" type="string" required>
  The meeting title displayed to all participants.
</ParamField>

<ParamField body="type" type="number" default="2">
  Meeting type:

  * `1` — Instant meeting
  * `2` — Scheduled meeting
  * `3` — Recurring meeting with no fixed time
  * `8` — Recurring meeting with fixed time
</ParamField>

<ParamField body="start_time" type="string">
  Meeting start time in ISO 8601 format, e.g. `2023-03-22T07:32:55Z`.
</ParamField>

<ParamField body="duration" type="number">
  Meeting duration in minutes.
</ParamField>

<ParamField body="timezone" type="string">
  IANA timezone name for the meeting, e.g. `America/New_York`.
</ParamField>

<ParamField body="agenda" type="string">
  Meeting description or agenda text shown on the invite.
</ParamField>

<ParamField body="password" type="string">
  Passcode required to join the meeting.
</ParamField>

<ParamField body="settings" type="object">
  Additional meeting settings.

  <Expandable title="settings properties">
    <ParamField body="host_video" type="boolean">
      Start the host's video automatically when the host joins.
    </ParamField>

    <ParamField body="participant_video" type="boolean">
      Start participants' video automatically when they join.
    </ParamField>

    <ParamField body="join_before_host" type="boolean">
      Allow participants to join before the host arrives.
    </ParamField>

    <ParamField body="mute_upon_entry" type="boolean">
      Mute all participants as they enter the meeting.
    </ParamField>

    <ParamField body="waiting_room" type="boolean">
      Hold participants in a waiting room until the host admits them.
    </ParamField>

    <ParamField body="audio" type="string">
      Audio connection options: `both`, `telephony`, or `voip`.
    </ParamField>
  </Expandable>
</ParamField>

***

## update\_meeting

Change the topic, time, duration, agenda, or settings of an existing meeting. Only `meeting_id` is required; pass only the fields you want to change.

**Example prompts**

* "Update meeting 123456789 to start at 2pm instead"
* "Change the agenda for meeting 987654321 to 'Q3 planning'"
* "Enable the waiting room for meeting 123456789"

### Parameters

<ParamField body="meeting_id" type="string" required>
  The ID of the meeting you want to update.
</ParamField>

<ParamField body="topic" type="string">
  Updated meeting title.
</ParamField>

<ParamField body="start_time" type="string">
  Updated start time in ISO 8601 format, e.g. `2023-03-22T14:00:00Z`.
</ParamField>

<ParamField body="duration" type="number">
  Updated duration in minutes.
</ParamField>

<ParamField body="agenda" type="string">
  Updated meeting description or agenda.
</ParamField>

<ParamField body="settings" type="object">
  Updated meeting settings. Accepts the same sub-properties as `create_meeting`.
</ParamField>

***

## delete\_meeting

Permanently delete a scheduled meeting. For recurring meetings, you can target a single occurrence rather than the entire series.

**Example prompts**

* "Cancel the Zoom meeting with ID 123456789"
* "Delete occurrence 12345 from my recurring standup"

<Warning>
  This action is irreversible. Deleting a meeting removes it from all participants' calendars and invalidates the join link.
</Warning>

### Parameters

<ParamField body="meeting_id" type="string" required>
  The ID of the meeting to delete.
</ParamField>

<ParamField body="occurrence_id" type="string">
  The occurrence ID for a specific instance of a recurring meeting. Omit this to delete the entire meeting series.
</ParamField>
