表格读写服务

一个为Google Sheets设计的MCP服务器,提供对话式的读写访问功能,支持按名称查找表格、读取范围、查找行、追加数据和更新单元格。

  • by mab-go
  • Go
  • 本地部署
  • 更新于
在 GitHub 查看 mab-go/sheets-mcp

使用说明

mcp板材

专为Google表格设计的MCP服务器。MCP提供任何 MCP兼容的AI客户端对话式读/写访问您的电子表格。 按名称查找工作表、读取范围、查找行、附加数据和更新单元格。

响应使用 香椿 (代币导向 对象符号)。字段名在每个响应中出现一次,而不是出现在每一行上, 对于典型的表格数据,与JSON相比,减少了40-60%的输出标记。工具 定义设计紧凑:加载约1500个令牌。

MCP表作为单个编译的二进制文件分发,在stdio上工作 传输,并对您的个人Google帐户使用OAuth身份验证。


工具

工具 它做什么
sheets_find 按名称搜索电子表格
sheets_info 获取电子表格的表/选项卡名称、尺寸和标题行
sheets_get 读取一个范围;检测到标头时返回键控对象
sheets_update 将值写入范围(覆盖现有内容)
sheets_append 在最后一行数据后追加行
sheets_lookup 查找列与值匹配的行
sheets_clear 清除范围内的所有值,但不删除单元格或结构

sheets_get 自动检测第一行是否为标题,并将行返回为 当它是键控对象时。每个响应都包括 headers_detected 旗,以及 你可以用显式表达式覆盖启发式 headers 参数(如果需要)。 sheets_lookup 使用相同的自动检测和可选功能 headers 以(权力)否决

sheets_lookup 支持 exact, contains (默认),以及 prefix 匹配 模式,加上a return_columns 参数将响应范围缩小到仅 您需要的列。


需求

  • Go(目前稳定)
  • Linux与 xdg-open (在Ubuntu上开发和测试)
  • 个人谷歌帐户(不是谷歌工作区)
  • 克劳德桌面版

安装

go install github.com/mab-go/sheets-mcp@latest

或者从源代码构建:

git clone https://github.com/mab-go/sheets-mcp
cd sheets-mcp
make build

注: 每个都附加了Linux和Windows的预构建二进制文件 标记的 GitHub发布.


设置

1.创建GCP项目和OAuth凭据

看 docs/SETUP.md 逐步演练(约10分钟,一次性)。

简短版本:创建一个GCP项目,启用谷歌表格和驱动器 API,创建桌面OAuth客户端,并记录您的客户端ID和密码。

2.创建配置文件

mkdir -p ~/.config/sheets-mcp

创建 ~/.config/sheets-mcp/config.json:

{
  "client_id": "YOUR_CLIENT_ID",
  "client_secret": "YOUR_CLIENT_SECRET",
  "default_spreadsheet": "",
  "allowed_spreadsheets": []
}

default_spreadsheet 是可选的--如果需要工具,请将其设置为电子表格ID 调用工作,而不明确指定一个。

allowed_spreadsheets 可选--当非空时,服务器限制所有 仅访问列出的电子表格ID。

3.身份验证

sheets-mcp auth

这将打开一个谷歌OAuth同意流的浏览器窗口。在您批准后, 令牌存储在 ~/.config/sheets-mcp/token.json.

4.在克劳德桌面注册

添加 claude_desktop_config.json (通常在 ~/.config/claude-desktop/claude_desktop_config.json):

{
  "mcpServers": {
    "sheets": {
      "command": "/home/YOUR_USERNAME/go/bin/sheets-mcp",
      "args": ["serve"]
    }
  }
}

重新启动克劳德桌面。工作表mcp将出现在工具列表中。


CLI参考

sheets-mcp serve          # Start MCP server (stdio) — used by Claude Desktop
sheets-mcp auth           # Run OAuth flow
sheets-mcp auth --status  # Check token state without triggering a flow
sheets-mcp auth --revoke  # Revoke and delete stored token
sheets-mcp version        # Print version and exit

重新认证

Google在测试模式下的应用程序的OAuth令牌将在7天后过期 不活动。如果Claude报告身份验证错误,请运行:

sheets-mcp auth

这是谷歌对未经验证的应用程序的限制——请参阅 docs/SETUP.md 为了 细节。


这不起什么作用

根据设计,表单mcp仅关注数据访问:

  • 无格式(粗体、颜色、边框、条件格式)
  • 没有图表或数据透视表
  • 不创建新的电子表格(仅对现有的电子表格进行操作)
  • 不添加或删除工作表、列或行
  • 没有实时或推送更新

编写公式很自然——任何以以下开头的字符串 = 按原样书写 API表。