Zoom MCP服务器

Zoom MCP服务器是一个模型上下文协议(MCP)的实现,为AI模型提供访问Zoom API功能的能力,实现与Zoom会议、用户和录音的无缝集成。

  • by echelon-ai-labs
  • Python
  • 本地部署
  • 29 星标
  • 更新于
在 GitHub 查看 osomai/zoom-mcp

使用说明

Zoom MCP服务器

用于Zoom的模型上下文协议(MCP)服务器实现,为AI模型提供对Zoom API功能的访问。

概述

该项目实现了一个MCP服务器,使Claude能够连接到Zoom,检索数据,并通过Zoom API执行操作。它充当Claude和Zoom之间的桥梁,允许无缝集成和访问Zoom会议、用户和录音。

特性

  • 使用服务器到服务器OAuth 2.0身份验证连接到Zoom
  • 检索用户信息和配置文件
  • 访问会议详细信息和录音
  • 查询Zoom帐户设置和配置
  • 通过标准化的API管理Zoom资源
  • API连接故障排除的调试模式

安装

先决条件

  • Python 3.11或更高版本
  • 具有管理员权限的Zoom帐户
  • 具有适当作用域的Zoom服务器到服务器OAuth应用程序
  • 紫外线 用于Python包管理

设置

  1. 克隆存储库:

    git clone https://github.com/yourusername/zoom-mcp.git
    cd zoom-mcp
    
  2. 创建一个虚拟环境并使用uv激活它:

    uv venv
    source .venv/bin/activate  # On Windows: .venv\Scripts\activate
    
  3. 使用uv安装依赖项:

    uv pip install -e .
    
  4. 设置Zoom API凭据:

    python scripts/setup_zoom_auth.py
    

    此脚本将指导您在 .env 文件:

    ZOOM_API_KEY=your-client-id
    ZOOM_API_SECRET=your-client-secret
    ZOOM_ACCOUNT_ID=your-account-id
    

用法

测试连接

设置凭据后,您可以测试与Zoom API的连接:

python scripts/test_zoom_connection.py

此脚本将验证:

  • 您的环境变量设置正确
  • OAuth令牌生成有效
  • API基本访问成功

API终点

MCP服务器提供对各种Zoom API端点的访问:

  • /users/me -获取已验证用户的信息
  • 将根据需要实施其他端点

认证

此项目使用Zoom的服务器到服务器OAuth 2.0身份验证。身份验证模块处理:

  • OAuth 2.0令牌生成
  • 令牌缓存和续订
  • 环境变量配置

身份验证流程:

  1. Base64对用于基本身份验证的API密钥和秘密进行编码
  2. 从Zoom的OAuth端点请求访问令牌
  3. 将令牌用于后续API请求
  4. 令牌过期时自动刷新令牌

发展

创建Zoom应用程序

  1. 转到 Zoom应用市场 并登录
  2. 点击右上角的“开发”,选择“构建应用”
  3. 选择“服务器到服务器OAuth”应用程序类型
  4. 填写应用程序所需的信息
  5. 在“范围”部分,添加以下范围:
    • user:read:admin (需要基本用户信息)
    • 根据您的特定用例需要的其他范围

运行测试

python -m pytest

代码的风格

本项目遵循PEP 8指南。您可以使用以下命令检查代码样式:

uv pip install flake8
flake8 src tests

故障排除

如果您遇到Zoom API连接问题:

  1. 身份验证错误

    • 验证您的API密钥和机密是否正确
    • 确保你的应用程序启用了必要的作用域
    • 在Zoom Marketplace中停用和重新激活您的应用程序
  2. 权限错误

    • 检查您的帐户是否具有所需的权限
    • 验证请求的作用域是否与您尝试访问的终结点匹配
  3. 帐户ID问题

    • 确保您使用的是Zoom帐户配置文件中的正确帐户ID
    • 服务器到服务器OAuth应用程序需要帐户ID

贡献

欢迎投稿!请随时提交拉取请求。

  1. 分叉存储库
  2. 创建功能分支(git checkout -b feature/amazing-feature)
  3. 提交您的更改(git commit -m 'Add some amazing feature')
  4. 推到分支(git push origin feature/amazing-feature)
  5. 打开拉取请求

许可证

此项目根据MIT许可证获得许可-请参阅 许可证 文件以获取详细信息。