使用说明
这是一个实现了 Model Context Protocol (MCP) 的服务器,旨在为大型语言模型 (LLM) 客户端提供与 Google 服务交互的能力。
主要功能点
- Gmail: 列出、搜索、发送和修改邮件状态。
- Google 日历: 列出、创建、更新和删除事件。
- Google 云端硬盘 (Drive): 搜索文件和读取文件内容。
- Google 搜索: 执行网页搜索。
安装步骤
- 环境准备:
- 安装 Python 3.12 或更高版本。
- 安装 'uv' 包管理器(推荐):参考 https://astral.sh/uv/install.sh
- Google Cloud Console 设置:
- 访问 Google Cloud Console。
- 创建一个新项目或选择现有项目。
- 启用以下 API:Gmail API, Google Calendar API, Google Drive API, Custom Search API。
- 在 "APIs & Services" > "Credentials" 中创建一个 OAuth 2.0 客户端 ID(选择 "Web application"),记录 Client ID 和 Client Secret,并下载凭据 JSON 文件,将其重命名为 'credentials.json' 放到项目根目录。
- 生成一个 API Key。
- 访问 Custom Search Engine 创建一个自定义搜索,并获取其 ID (CSE ID)。
- 获取代码: 克隆 GitHub 仓库:
git clone https://github.com/jikime/py-mcp-google-toolbox.git cd py-mcp-google-toolbox - 设置 Python 环境:
- 创建并激活虚拟环境:
uv venv -p 3.12 source .venv/bin/activate # macOS/Linux # 或 .venv\Scripts\activate # Windows - 安装依赖:
uv pip install -r requirements.txt
- 创建并激活虚拟环境:
- Google 身份认证: 运行脚本获取 Refresh Token 并生成 'token.json' 文件(用于 OAuth 授权):
这将打开浏览器要求你登录 Google 账户并授权所需权限。完成后,Refresh Token 将显示在控制台,并生成 'token.json' 文件。uv run get_refresh_token.py - 配置环境变量: 复制 '.env.example' 文件为 '.env',编辑 '.env' 文件,填入你在 Google Cloud Console 中获取的 API Key, CSE ID, Client ID, Client Secret 以及上一步获得的 Refresh Token。
cp env.example .env # 编辑 .env 文件,填入你的凭据 GOOGLE_API_KEY=your_google_api_key GOOGLE_CSE_ID=your_custom_search_engine_id GOOGLE_CLIENT_ID=your_google_client_id GOOGLE_CLIENT_SECRET=your_google_client_secret GOOGLE_REFRESH_TOKEN=your_google_refresh_token - 将之前下载的 'credentials.json' 文件复制到项目的根目录('py-mcp-google-toolbox' 文件夹)。
服务器配置 (面向 MCP 客户端)
你需要将以下配置添加到你的 MCP 客户端的设置文件中。不同客户端(如 Claude 桌面版、Cursor IDE 等)的配置路径和格式可能略有不同,请参考客户端文档。通常是一个 JSON 文件,需要在 'mcpServers' 对象中添加一个条目。
以下是配置条目的示例结构(请根据你的实际安装路径和选择的启动方式进行调整):
"Google Toolbox": { // 给服务器取一个易于识别的名称 "command": "你的启动命令的路径", // 例如: "/path/to/uv" 或 "python" 或 "docker" "args": [ // 传递给 command 的参数列表 // 如果使用 uv 本地运行: "--directory", "你的 py-mcp-google-toolbox 项目的完整路径", "run", "server.py" // 如果使用 python 本地运行 (如果uv不在PATH): // "你的 py-mcp-google-toolbox 项目的完整路径/server.py" // 如果使用 Docker: // "run", "-i", "--rm", "py-mcp-google-toolbox" // 假设你已构建了镜像 ] }
请将 '"你的启动命令的路径"' 和 '"你的 py-mcp-google-toolbox 项目的完整路径"' 替换为你系统中的实际路径。
基本使用方法
MCP 服务器配置完成后,你的 LLM 客户端应该能够自动检测并与之通信。你可以通过与 LLM 进行自然语言对话来利用这个服务器提供的 Google 工具。例如:
- 询问关于 Google 搜索结果的问题。
- 让 LLM 帮你总结最近的邮件。
- 让 LLM 在你的日历中创建会议。
- 让 LLM 搜索 Google Drive 中的文件。
LLM 会理解你的意图,并自动调用后台配置好的 MCP 服务器上的相应工具(如 'search_google'、'list_emails'、'create_event'、'search_gdrive' 等)来完成任务。
信息
分类
生产力应用