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.
-
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
- Clone the repository:
git clone https://github.com/peakmojo/mcp-server-zoom-noauth.git
cd mcp-server-zoom-noauth
- Install the required dependencies:
pip install -r requirements.txt
# Build the Docker image
docker build -t mcp-server-zoom-noauth .
To publish the Docker image for multiple platforms, you can use the docker buildx command:
- Create a new builder instance (if you haven't already):
docker buildx create --use
- Build and push the image for multiple platforms:
docker buildx build --platform linux/amd64,linux/arm64 -t buryhuang/mcp-server-zoom-noauth:latest --push .
- Verify the image is available for the specified platforms:
docker buildx imagetools inspect buryhuang/mcp-server-zoom-noauth:latest
python -m src.mcp_server_zoom_noauth.server
The server provides the following tools:
- zoom_refresh_token - Refresh an OAuth token using a refresh token
- zoom_list_recordings - Get a list of user's cloud recordings
- zoom_get_recording_details - Get detailed information about a specific meeting recording
- zoom_get_meeting_transcript - Get transcript for a specific meeting recording
{
"zoom_refresh_token": "your_refresh_token",
"zoom_client_id": "your_client_id",
"zoom_client_secret": "your_client_secret"
}
{
"zoom_access_token": "your_access_token",
"from_date": "2023-01-01",
"to_date": "2023-01-31",
"page_size": 30,
"page_number": 1
}
{
"zoom_access_token": "your_access_token",
"meeting_id": "meeting_id_here"
}
{
"zoom_access_token": "your_access_token",
"meeting_id": "meeting_id_here"
}
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:
- Create a Zoom OAuth app in the Zoom Marketplace
- Configure the required scopes for recordings access
- Obtain access and refresh tokens through the OAuth flow
- Pass these tokens as arguments when calling the tools
This project uses the Zoom API v2. For more information, refer to the Zoom API documentation.