使用说明
Google表格MCP服务器
用Go编写的Google表格的模型上下文协议(MCP)服务器。提供与谷歌电子表格交互的全面工具。
特性
- 工作表数据:获取/更新单元格数据、公式、批处理操作
- 表单管理:创建、重命名、复制图纸、添加行/列
- 电子表格管理:创建、列出、共享电子表格
- 多种身份验证方法:服务帐户、OAuth2、ADC
快速开始
-
构建:
make build -
设置Google API凭据 (参见 设置.md 详细说明)
-
配置环境:
# Service Account (recommended) export SERVICE_ACCOUNT_PATH="path/to/service-account.json" # OAuth2 export CREDENTIALS_PATH="path/to/credentials.json" # Base64 encoded service account export CREDENTIALS_CONFIG="base64_encoded_service_account_json" -
跑:
# Stdio mode ./go_mcp_server_google_sheets # SSE mode ./go_mcp_server_google_sheets -t sse -p 8891
环境变量
SERVICE_ACCOUNT_PATH-服务帐户JSON文件的路径CREDENTIALS_PATH-OAuth2凭据JSON文件的路径CREDENTIALS_CONFIG-Base64编码的服务帐户JSONTOKEN_PATH-OAuth2令牌存储路径(默认:token.json)DRIVE_FOLDER_ID-新电子表格的Google Drive文件夹ID
可用工具
数据操作
get_sheet_data-从工作表中获取数据get_sheet_formulas-从工作表中获取公式update_cells-更新单元格值batch_update_cells-批量更新多个范围
表单管理
list_sheets-在电子表格中列出所有工作表create_sheet-创建新工作表rename_sheet-重命名现有图纸copy_sheet-在电子表格之间复制表格add_rows/add_columns-添加行或列
电子表格管理
create_spreadsheet-创建新的电子表格list_spreadsheets-在Drive中列出电子表格share_spreadsheet-与用户共享电子表格
身份验证设置
方法1:服务帐户(推荐)
-
创建谷歌云项目:
- 首选 谷歌云控制台
- 创建新项目或选择现有项目
-
启用API:
- 转到“API和服务”>“库”
- 启用“Google Sheets API”
- 启用“Google Drive API”
-
创建服务帐户:
- 转到“API和服务”>“凭据”
- 点击“创建凭据”>“服务帐户”
- 填写服务帐户详细信息
- 点击“创建并继续”
-
生成密钥:
- 点击已创建的服务帐户
- 转到“密钥”选项卡
- 点击“添加密钥”>“创建新密钥”
- 选择“JSON”格式
- 下载文件(这是您的
service-account.json)
-
设置环境变量:
export SERVICE_ACCOUNT_PATH="/path/to/your/service-account.json"
方法2:OAuth2(用于用户访问)
-
创建OAuth2凭据:
- 在Google Cloud控制台中,转到“API和服务”>“凭据”
- 点击“创建凭据”>“OAuth客户端ID”
- 选择“桌面应用程序”
- 下载JSON文件(这是您的
credentials.json)
-
设置环境变量:
export CREDENTIALS_PATH="/path/to/your/credentials.json"
方法3:Base64编码(用于容器/CI)
-
对服务帐户进行编码:
base64 -w 0 /path/to/service-account.json -
设置环境变量:
export CREDENTIALS_CONFIG="your_base64_encoded_string_here"
与服务帐户共享电子表格
使用服务帐户时,您需要将电子表格与服务帐户电子邮件共享:
- 打开您的谷歌电子表格
- 点击“分享”按钮
- 添加服务帐户电子邮件(在JSON文件中作为
client_email) - 授予适当的权限(查看器/编辑器)
许可证
麻省理工学院
