README
🚀 Google Workspace MCP 说明文档
Google Workspace MCP(管理控制台插件)是一款用于统一管理和集成Google Workspace服务的实用工具。它能帮助用户更便捷地进行账户管理、文件操作、日历集成和邮件处理等工作,提升使用Google Workspace服务的效率和体验。
🚀 快速开始
Google Workspace MCP为您提供了统一管理和集成Google Workspace服务的便捷途径。您可以通过它轻松进行账户管理、文件操作等一系列功能。
✨ 主要特性
- 账户管理:支持创建、认证和删除Google Workspace账户,让您对账户操作得心应手。
- 文件操作:可实现文件的上传、下载、共享以及权限管理,满足您多样化的文件处理需求。
- 日历集成:提供日历事件的创建、查询和订阅功能,方便您合理安排日程。
- 邮件处理:支持发送邮件、管理邮件列表及过滤设置,优化您的邮件使用体验。
📦 安装指南
安装步骤
-
克隆代码仓库:
git clone https://github.com/your-repository.git cd google-workspace-mcp -
安装依赖项:
npm install -
配置环境变量:
- 创建并编辑
config/mcp-config.json文件,填写以下内容:{ "google": { "client_id": "YOUR_GOOGLE_CLIENT_ID", "client_secret": "YOUR_GOOGLE_CLIENT_SECRET", "redirect_uri": "http://localhost:3000/callback" } }
- 创建并编辑
-
启动服务:
npm start
💻 使用示例
基础用法
账户管理
- 认证流程
执行上述命令后,按照提示完成OAuth 2.0认证流程。authenticate_workspace_account --email your.email@gmail.com - 账户列表
该命令可显示所有已认证的账户信息。list_accounts
文件操作
- 上传文件
此命令用于上传本地文件到Google Drive。upload_drive_file --file /path/to/your/file.pdf --parent_folder "Documents" - 下载文件
该命令可下载指定文件。download_drive_file --id file_id_123456
日历集成
- 创建日历事件
此命令可添加新的日历活动。create_calendar_event --title 会议提醒 --description 项目讨论 --start_time "2023-10-01T14:00:00"
📚 详细文档
详细使用说明请参考API文档。
🔧 技术细节
未来计划
新增服务
- Admin SDK 支持
- 更多Google服务集成
测试策略
单元测试方法
- 简化模拟
- 使用静态mock响应以确保测试可预测。
- 避免在单元测试中进行复杂的端到端模拟。
- 每次测试一个功能模块。
- 对外部依赖(如OAuth、文件系统)使用简单实现进行模拟。
- 测试组织
- 按照功能将测试分组(例如:账户操作、文件操作)。
- 使用清晰且描述性的测试名称。
- 保持测试聚焦且独立。
- 在每次测试之间重置mock和模块。
- Mock 管理
- 使用
jest.resetModules()以保证干净的状态。 - 在mock更改后重新需要模块。
- 显式跟踪mock函数调用。
- 验证函数调用及其结果。
- 使用
- 文件系统测试
- 使用简单的JSON结构进行测试。
- 关注数据正确性而非格式。
- 测试错误场景(如缺失文件、无效JSON)。
- 验证文件操作而不涉及具体实现细节。
- OAuth 模拟
- 对OAuth流程进行充分模拟以避免实际授权过程。
- 确保测试环境与生产环境隔离。
最佳实践
安全注意事项
- 凭据管理:建议将Google OAuth凭证(client_id和client_secret)存放在安全的位置,如加密的配置文件或环境变量中。
- 访问控制:实施严格的权限策略,确保只有授权用户才能执行敏感操作。
性能优化
- 异步处理:对于大量数据操作,建议使用异步方法以提高效率。
- 错误处理:在关键操作中添加适当的错误捕捉和恢复机制,防止服务中断。
故障排除
常见问题
- 认证失败
- 确认提供的邮箱地址正确且有效。
- 检查OAuth凭证是否配置无误。
- API 请求超时
- 验证网络连接状态。
- 考虑增加请求超时设置或优化数据传输量。
附录
命令行工具参考
authenticate_workspace_account:用于Google Workspace账户的OAuth认证。list_accounts:显示所有已认证的Google Workspace账户信息。upload_drive_file:上传文件到指定的Google Drive文件夹。download_drive_file:下载特定ID的Google Drive文件。create_calendar_event:创建新的日历事件。
联系方式
如需帮助或反馈,请联系:
- 邮箱:support@googlworkspace.com
- 电话:+1 (800) 123-4567
Scan to contact