返回市场
MCP谷歌表格服务器

MCP谷歌表格服务器

作者:berni232 星标更新:2025-11-16

项目介绍

MCP Google 表格服务器

这是一个提供 Google 表格集成的 Model Context Protocol (MCP) 服务器。此服务器通过 MCP 工具实现读取、写入和追加数据到 Google 表格的功能。

功能

  • 读取表格:从 Google 表格的指定范围内读取值
  • 写入表格:向特定的 Google 表格范围写入值
  • 追加表格:在 Google 表格中追加新行
  • 创建图表:从 Google 表格中的数据集创建图表

预备条件

  • Python 3.10 或更高版本
  • 具有 Sheets API 访问权限的 Google Cloud 服务账户
  • 服务账户凭据 JSON 文件

设置

方案 1:使用 uv(推荐)

  1. 安装依赖项
    uv sync
    

方案 2:使用 pip

  1. 创建虚拟环境

    python -m venv .venv
    source .venv/bin/activate  # 在 Windows 上:.venv\Scripts\activate
    
  2. 安装依赖项

    pip install -r requirements.txt
    

Google 表格 API 设置

  1. 设置 Google 表格 API

    • 创建一个 Google Cloud 项目
    • 启用 Google 表格 API
    • 创建一个服务账户
    • 下载服务账户凭据 JSON 文件
    • 将其重命名为 credentials.json 并放置在项目根目录下
  2. 共享您的 Google 表格

    • 将您的 Google 表格与服务账户电子邮件地址共享
    • 授予“编辑者”权限

使用方法

运行 MCP 服务器:

python server.py

服务器启动后会通过标准输入输出监听 MCP 请求。

MCP 工具

read_sheet

从 Google 表格读取值。

参数

  • spreadsheet_id (str):Google 表格 ID
  • range_ (str):要读取的范围(例如:"A1:C10", "Sheet1!A:Z")

返回:每行是一个单元格值列表的行列表。

write_sheet

向 Google 表格的指定范围写入值。

参数

  • spreadsheet_id (str):Google 表格 ID
  • range_ (str):要写入的范围
  • values (list[list[Any]]):要写入的二维值数组

返回:Google 表格 API 响应对象。

append_sheet

在 Google 表格中追加新行。

参数

  • spreadsheet_id (str):Google 表格 ID
  • range_ (str):要追加的范围
  • values (list[list[Any]]):要追加的二维值数组

返回:Google 表格 API 响应对象。

配置

服务器使用服务账户身份验证。将您的 credentials.json 文件放置在项目根目录下。

所需范围:

  • https://www.googleapis.com/auth/spreadsheets

依赖项

  • fastmcp:快速 MCP 服务器框架
  • google-api-python-client:Google 表格 API 客户端
  • google-auth:Google 身份验证库

许可证

MIT 许可证