返回市场
缩放-MCP

缩放-MCP

作者:echelon-ai-labs16 星标更新:2025-03-05

项目介绍

Zoom MCP Server

这是Zoom的Model Context Protocol (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应用程序
  • uv用于Python包管理

设置

  1. 克隆仓库:

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

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

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

    python scripts/setup_zoom_auth.py
    

    此脚本将引导您在.env文件中设置Zoom API凭证:

    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. 对API密钥和秘密进行Base64编码以供基本认证使用
  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市场上停用并重新激活您的应用
  2. 权限错误

    • 检查您的账户是否具有所需的权限
    • 验证请求的范围是否匹配您尝试访问的端点
  3. 账户ID问题

    • 确保您使用的是从Zoom账户个人资料中获得的正确账户ID
    • 对于服务器到服务器OAuth应用,账户ID是必需的

贡献

欢迎贡献!请随意提交拉取请求。

  1. 分叉仓库
  2. 创建您的功能分支 (git checkout -b feature/amazing-feature)
  3. 提交更改 (git commit -m '添加一些惊人的功能')
  4. 推送到分支 (git push origin feature/amazing-feature)
  5. 打开拉取请求

许可证

本项目采用MIT许可证 - 详情见LICENSE文件。