README
🚀 Zoom MCP 服务器
一个为Zoom实现的模型上下文协议(MCP)服务器,它让AI模型能够借助Zoom的API功能进行访问,为用户提供了便捷的交互方式。
🚀 快速开始
本项目实现的MCP服务器,能让Claude连接到Zoom,获取数据并通过Zoom API执行操作。它就像Claude和Zoom之间的桥梁,可实现无缝集成,让用户能够访问Zoom会议、用户和录音等内容。
✨ 主要特性
- 运用Server - to - Server OAuth 2.0身份验证连接到Zoom。
- 可获取用户信息和配置文件。
- 能够访问会议详细信息和录音。
- 支持查询Zoom账户设置和配置。
- 提供管理Zoom资源的标准API。
- 具备调试模式,可用于故障排除API连接。
📦 安装指南
先决条件
- Python 3.11或更高版本。
- 带有管理权限的Zoom账户。
- 带有适当范围的Zoom服务器间OAuth应用程序。
- uv用于Python包管理。
设置
- 克隆仓库:
git clone https://github.com/yourusername/zoom-mcp.git
cd zoom-mcp
- 创建虚拟环境并使用uv激活它:
uv venv
source .venv/bin/activate # Windows用户请使用:.venv\Scripts\activate
- 使用uv安装依赖项:
uv pip install -e .
- 设置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的Server - to - Server OAuth 2.0身份验证。认证模块处理:
- OAuth 2.0令牌生成。
- 令牌缓存和刷新。
- 环境变量配置。
认证流程:
- 将API密钥和秘密进行Base64编码以用于基本认证。
- 向Zoom的OAuth端点请求访问令牌。
- 使用令牌进行后续API请求。
- 在令牌过期时自动刷新。
开发
创建一个Zoom应用程序
- 访问Zoom App Marketplace并登录。
- 点击右上角的“Develop”并在菜单中选择“构建”。
- 在应用详细信息部分,输入应用名称、描述和同意URL。
- 转到“高级设置”,启用OAuth 2.0身份验证,并为用户授权设置回调URL。
- 保存更改并获取客户的ID和秘密以进行API连接。
访问权限
在创建应用程序后,需要授予必要的权限以便与Zoom API交互。以下是常用的权限:
zoom_basic- 基本访问(读取会议、用户信息等)。zoom_video- 视频会议控制。zoom_audit_logs- 审计日志访问。- 根据API需求选择其他权限。
配置示例
在你的项目根目录中创建一个.env文件,并添加以下内容以配置Zoom API:
ZOOM_CLIENT_ID=your-client-id
ZOOM_CLIENT_SECRET=your-client-secret
ZOOM_API_KEY=your-api-key
ZOOM_API_SECRET=your-api-secret
🛠️ 故障排除
无法连接到Zoom API
- 检查API密钥和秘密是否正确配置。
- 确保应用程序权限已启用。
- 查看Zoom文档以确认API端点和参数的正确性。
认证失败
- 验证OAuth令牌是否有效。
- 确保回调URL在Zoom应用中正确设置。
- 检查请求头中的
Authorization字段是否正确格式化。
👥 贡献
我们欢迎社区贡献!如果你有任何问题、建议或功能请求,请提交GitHub问题。
📄 许可证
该项目受MIT License保护。
Scan to contact