使用说明
项目简介
mcp-gsuite 是一个基于 Model Context Protocol (MCP) 构建的服务器,旨在为LLM客户端提供访问和操作Google Workspace (G Suite) 产品的能力,目前主要支持Gmail和Calendar。通过mcp-gsuite,LLM应用可以安全、可扩展地与用户的Google 邮箱和日历进行交互,实现邮件读取、发送、日程管理等功能。
主要功能点
- 多账户支持: 支持配置和管理多个Google账号,方便用户在不同账号间切换或整合信息。
- Gmail集成:
- 邮件查询: 支持灵活的邮件搜索,例如按未读、发件人、日期范围、附件等条件查询。
- 邮件内容获取: 可以根据邮件ID获取完整的邮件内容,包括正文和附件信息。
- 草稿邮件管理: 支持创建、删除草稿邮件,方便用户预先编辑邮件。
- 邮件回复: 支持回复邮件,并可以选择立即发送或保存为草稿。
- 附件处理: 支持批量获取和保存邮件附件到本地系统。
- Calendar集成:
- 多日历管理: 支持管理多个日历,例如个人日历、工作日历等。
- 日历事件查询: 可以查询指定时间范围内的日历事件。
- 日历事件创建: 支持创建包含标题、时间、地点、描述、参与者、时区和通知设置的日历事件。
- 日历事件删除: 支持删除指定日历事件。
安装步骤
推荐使用 Smithery CLI 进行安装,可以简化配置过程:
npx @smithery/cli install mcp-gsuite --client claude
服务器配置
为了让MCP客户端(例如 Claude Desktop)连接到 mcp-gsuite 服务器,需要在客户端的配置文件中添加服务器配置信息。以 Claude Desktop 为例,需要编辑 'claude_desktop_config.json' 文件,该文件通常位于:
- macOS: '~/Library/Application\ Support/Claude/claude_desktop_config.json'
- Windows: '%APPDATA%/Claude/claude_desktop_config.json'
在 'mcpServers' 字段下添加 'mcp-gsuite' 的配置信息。请将 '<dir_to>/mcp-gsuite' 替换为 mcp-gsuite 仓库在您本地文件系统中的实际路径。
{ "mcpServers": { "mcp-gsuite": { "command": "uv", "args": [ "--directory", "<dir_to>/mcp-gsuite", "run", "mcp-gsuite" ] } } }
基本使用方法
- 确保已完成安装步骤并将 mcp-gsuite 服务器配置到 MCP 客户端。
- 启动 mcp-gsuite 服务器。
- 在 MCP 客户端(例如 Claude)中,可以使用自然语言指令来调用 mcp-gsuite 提供的工具。例如:
- 查询最新的未读邮件:'Retrieve my latest unread messages'
- 明天有什么日程安排?:'What do I have on my agenda tomorrow?'
- 给Alice的邮件写一封友好的回复并保存为草稿:'Write a nice response to Alice's last email and upload a draft.'
更多使用示例,请参考仓库 'README.md' 文件中的 "Example prompts" 部分。
OAuth 2 认证配置
mcp-gsuite 需要通过 OAuth 2.0 认证才能访问 Google Workspace API。请按照以下步骤配置 OAuth 2.0 认证:
- 创建 OAuth 2.0 凭据:
- 访问 Google Cloud Console。
- 创建或选择一个项目。
- 为项目启用 Gmail API 和 Google Calendar API。
- 进入 "凭据" -> "创建凭据" -> "OAuth 客户端 ID"。
- 选择 "桌面应用" 或 "Web 应用程序" 作为应用程序类型。
- 配置 OAuth 同意屏幕。
- 添加授权重定向 URI,例如 'http://localhost:4100/code' (用于本地开发)。
- 所需 OAuth 2.0 作用域:
[ "openid", "https://mail.google.com/", "https://www.googleapis.com/auth/calendar", "https://www.googleapis.com/auth/userinfo.email" ] - 创建 '.gauth.json' 文件:
在工作目录下创建 '.gauth.json' 文件,填入您的 OAuth 2.0 客户端 ID 和客户端密钥。
{ "web": { "client_id": "$your_client_id", "client_secret": "$your_client_secret", "redirect_uris": ["http://localhost:4100/code"], "auth_uri": "https://accounts.google.com/o/oauth2/auth", "token_uri": "https://oauth2.googleapis.com/token" } } - 创建 '.accounts.json' 文件:
创建 '.accounts.json' 文件,配置您的 Google 账号信息。
可以配置多个账号,'extra_info' 字段可以添加账号的额外信息,供LLM参考。{ "accounts": [ { "email": "[email protected]", "account_type": "personal", "extra_info": "个人邮箱账号" } ] }
首次使用工具时,会打开浏览器进行 Google 账号授权。授权成功后,凭据将保存在本地文件 '.oauth.{email}.json' 中。
信息
分类
生产力应用