使用说明
谷歌工作区MCP服务器
用于Google幻灯片、表格、文档和驱动器的MCP服务器。使AI助手能够以编程方式创建、阅读和修改Google Workspace文档。
快速开始
npm install
npm run build
npm run get-token # One-time OAuth setup
npm start
配置
所需的环境变量
GOOGLE_CLIENT_ID=your_client_id
GOOGLE_CLIENT_SECRET=your_client_secret
GOOGLE_REFRESH_TOKEN=your_refresh_token
可选模块切换
默认情况下启用所有模块。设置为 false 要禁用:
ENABLE_SHEETS=false
ENABLE_SLIDES=false
ENABLE_DOCS=false
ENABLE_REVISIONS=false
驱动工具始终处于启用状态(核心功能)。
Claude代码配置
添加到MCP设置中:
{
"mcpServers": {
"google-workspace-mcp": {
"command": "node",
"args": ["/path/to/google-workspace-mcp/build/index.js"],
"env": {
"GOOGLE_CLIENT_ID": "your_client_id",
"GOOGLE_CLIENT_SECRET": "your_client_secret",
"GOOGLE_REFRESH_TOKEN": "your_refresh_token"
}
}
}
}
可用工具
驱动器(始终启用)
| 工具 | 说明 |
|---|---|
create_folder |
在Google云端硬盘中创建文件夹 |
list_files |
列出具有过滤、分页和排序功能的文件/文件夹。支持共享驱动器。 |
get_file |
获取特定文件的详细元数据(权限、功能、所有者) |
search_files |
使用查询语法搜索驱动器(例如。, name contains 'report') |
export_file |
将Google文档/表格/幻灯片导出为PDF、文本、CSV、docx等格式。 |
表格
| 工具 | 说明 |
|---|---|
create_spreadsheet |
创建新的电子表格 |
get_spreadsheet |
获取电子表格元数据 |
get_sheet_values |
读取单元格值 |
update_sheet_values |
写入单元格值 |
batch_update_spreadsheet |
应用格式/结构更改 |
append_sheet_values |
添加行 |
summarize_spreadsheet |
提取所有数据 |
copy_sheet |
在电子表格之间复制表格 |
幻灯片
| 工具 | 说明 |
|---|---|
create_presentation |
创建新演示文稿 |
get_presentation |
获取演示元数据 |
batch_update_presentation |
将更新应用于幻灯片 |
get_page |
获取特定幻灯片详细信息 |
summarize_presentation |
从所有幻灯片中提取文本 |
文档
| 工具 | 说明 |
|---|---|
create_document |
创建新文档 |
get_document |
获取文档内容 |
batch_update_document |
插入/删除/格式化文本 |
summarize_document |
提取文本内容 |
版本历史
| 工具 | 说明 |
|---|---|
list_revisions |
列出文档版本历史记录 |
get_revision |
通过还原说明获取修订详细信息 |
安全
OAuth范围
此服务器请求所需的最小作用域:
| 范围 | 目的 |
|---|---|
presentations |
创建/编辑谷歌幻灯片 |
spreadsheets |
创建/编辑谷歌表格 |
documents |
创建/编辑谷歌文档 |
drive.readonly |
浏览、搜索和读取文件元数据(包括共享驱动器) |
drive.file |
导出和管理此应用程序创建的文件 |
此服务器可以访问什么
- 您帐户中的所有幻灯片演示文稿
- 您帐户中的所有表格电子表格
- 您帐户中的所有文档
- 驱动器文件元数据、浏览和搜索(包括共享驱动器)
- 将Google Workspace文件导出为其他格式(PDF、文本、CSV等)
此服务器无法访问的内容
- Gmail、日历或其他谷歌服务
- 删除或永久修改您不拥有的文件
- 您的Google帐户密码或2FA设置
安全最佳实践
- 永不承诺
.env文件到版本控制 - 为此服务器使用专用的Google Cloud项目
- 查看访问权限 Google帐户权限
- 使用以下方式重新生成令牌
npm run get-token如果妥协
OAuth设置
1.启用API
在 谷歌云控制台:
- 创建或选择项目
- 启用:幻灯片API、表格API、文档API、驱动器API
2.创建凭据
- 转到API和服务>凭据
- 创建OAuth客户端ID(桌面应用程序类型)
- 下载客户端ID和密码
3.配置同意屏幕
添加以下范围:
https://www.googleapis.com/auth/presentationshttps://www.googleapis.com/auth/spreadsheetshttps://www.googleapis.com/auth/documentshttps://www.googleapis.com/auth/drive.readonlyhttps://www.googleapis.com/auth/drive.file
4.生成刷新令牌
# Add client ID and secret to .env first
npm run get-token
刷新令牌生成一次并存储。仅在以下情况下重新生成:
- 您更改了OAuth作用域
- 您撤销了对Google帐户的访问权限
- 您需要使用其他帐户
故障排除
“请求的身份验证范围不足”
- 验证所有5个作用域都在OAuth同意屏幕中
- 重新生成令牌:
npm run get-token - 重新启动MCP服务器
“API尚未在项目中使用”
启用Google云控制台中缺少的API。错误消息包括直接链接。
一种服务有效,但另一种服务无效
令牌是在没有所有作用域的情况下生成的。将缺失的范围添加到同意屏幕,并使用重新生成 npm run get-token.
发展
npm install # Install dependencies
npm run build # Compile TypeScript
npm run lint # Run ESLint
npm test # Run tests
npm run get-token # Generate OAuth token
MCP检验员测试
export $(cat .env | xargs) && npx @modelcontextprotocol/inspector node build/index.js
许可证
国际学生中心