Skip to content

A MCP server for accessing Zoom recordings and transcripts without requiring direct authentication from the end user.

License

Notifications You must be signed in to change notification settings

peakmojo/mcp-server-zoom-noauth

Repository files navigation

MCP Server for Zoom (No Auth) - Python & Node.js

Docker Hub npm version License: Apache 2.0

This project is a Model Control Protocol (MCP) server for accessing Zoom API functionality without requiring direct authentication from the end user. It handles the OAuth flows and provides a set of tools for interacting with Zoom recordings and transcripts.

Zoom Recordings No-Auth MCP server

Features

  • OAuth credential management through tool arguments (no local auth flow)

  • List user's cloud recordings with pagination

  • Get detailed information about specific meeting recordings

  • Access meeting transcripts

    image

Installation

  1. Clone the repository:
git clone https://github.com/peakmojo/mcp-server-zoom-noauth.git
cd mcp-server-zoom-noauth
  1. Install the required dependencies:
pip install -r requirements.txt

Docker

Building the Docker Image

# Build the Docker image
docker build -t mcp-server-zoom-noauth .

Cross-Platform Publishing

To publish the Docker image for multiple platforms, you can use the docker buildx command:

  1. Create a new builder instance (if you haven't already):
docker buildx create --use
  1. Build and push the image for multiple platforms:
docker buildx build --platform linux/amd64,linux/arm64 -t buryhuang/mcp-server-zoom-noauth:latest --push .
  1. Verify the image is available for the specified platforms:
docker buildx imagetools inspect buryhuang/mcp-server-zoom-noauth:latest

Usage

Starting the server

python -m src.mcp_server_zoom_noauth.server

Available Tools

The server provides the following tools:

  1. zoom_refresh_token - Refresh an OAuth token using a refresh token
  2. zoom_list_recordings - Get a list of user's cloud recordings
  3. zoom_get_recording_details - Get detailed information about a specific meeting recording
  4. zoom_get_meeting_transcript - Get transcript for a specific meeting recording

Tool Usage Examples

Refreshing a token

{
  "zoom_refresh_token": "your_refresh_token",
  "zoom_client_id": "your_client_id",
  "zoom_client_secret": "your_client_secret"
}

Listing recordings

{
  "zoom_access_token": "your_access_token",
  "from_date": "2023-01-01",
  "to_date": "2023-01-31",
  "page_size": 30,
  "page_number": 1
}

Getting recording details

{
  "zoom_access_token": "your_access_token",
  "meeting_id": "meeting_id_here"
}

Getting meeting transcript

{
  "zoom_access_token": "your_access_token",
  "meeting_id": "meeting_id_here"
}

OAuth Credential Handling

This server is designed to be completely "noauth" from its perspective:

  • No local authentication flow is needed
  • No credentials are stored on the server
  • All credentials are passed through tool arguments
  • The server can run in a headless environment

To use the tools, you'll need to obtain OAuth credentials from Zoom:

  1. Create a Zoom OAuth app in the Zoom Marketplace
  2. Configure the required scopes for recordings access
  3. Obtain access and refresh tokens through the OAuth flow
  4. Pass these tokens as arguments when calling the tools

Zoom API Reference

This project uses the Zoom API v2. For more information, refer to the Zoom API documentation.

License

Apache 2.0

About

A MCP server for accessing Zoom recordings and transcripts without requiring direct authentication from the end user.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •