Google Sheets数据管理服务

MCP Server para Google Sheets是一个允许ChatGPT读写Google Sheets表格数据的服务,适用于数据存储、查询和管理。

  • by DanielBayon
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 DanielBayon/mcp-sheets-server

使用说明

MCP服务器与谷歌表格-铁路

📋 描述

这是一个MCP(Model Context Protocol)服务器,允许ChatGPT读取和写入Google Sheets表。非常适合ChatGPT保存研究,查询现有数据并保持持久的信息记录。

🚀 特点

  • 🔍 搜索:在谷歌表格中搜索研究
  • 📖 阅读:按ID检索完整文档
  • ✍️ 写入:保存新的研究(在ChatGPT中确认)
  • 🔧 自动配置:自动创建所需的列
  • 🌐 远程:Deslegable en Replit、Railway、Docker等。

📊 数据结构

服务器处理具有以下列的表:

字段 描述
id 自动生成的唯一UUID
timestamp 创建日期和时间(ISO格式)
titulo 研究标题
resumen 内容摘要
url 相关链接
notas 附加说明
tags 逗号分隔的标签
confianza 信心水平(高/中/低)
solicitado_por 谁要求调查
fuente 信息来源

🛠️ 安装和配置

1. 设置 Google Cloud

  1. Ve a 谷歌云控制台
  2. 创建新项目或选择现有项目
  3. 可用API:
    • 谷歌网页API
    • Google Drive API
  4. Crea una服务帐户:
    • Ve a“IAM&Admin”>“服务帐户”
    • 创建新的服务帐户
    • 下载凭据JSON

2.配置器谷歌表

  1. 创建新的谷歌工作表或使用现有的工作表
  2. 与服务帐户电子邮件共享工作表(编辑权限)
  3. 从URL复制工作表ID: https://docs.google.com/spreadsheets/d/{SHEET_ID}/edit

3.配置环境变量

复制 .env.example 一 .env 完整:

# ID del Google Sheet
SHEET_ID=1AbCdEfGhIjKlMnOpQrStUvWxYz123456789

# Nombre de la pestaña (opcional, por defecto "data")
SHEET_NAME=data

# JSON de la Service Account (en una sola línea)
GOOGLE_SERVICE_ACCOUNT_JSON={"type":"service_account","project_id":"..."}

# Máximo resultados en búsquedas (opcional)
MAX_RESULTS=20

4.安装依赖项

pip install -r requirements.txt

5.运行服务器

python server.py

服务器将位于: http://localhost:8000 终点MCP(SSE)将位于: http://localhost:8000/sse/

🌐 绝望

选项1:答复

  1. 创建Python Repl
  2. 上传文件 server.py y requirements.txt
  3. 秘密(o .env),添加环境变量
  4. 执行项目
  5. MCP的URL: https://<tu-repl>.replit.dev/sse/

方案2:铁路

  1. 将您的存储库连接到Railway
  2. 在仪表板上配置环境变量
  3. 铁路将自动检测 requirements.txt
  4. MCP的URL: https://<tu-app>.railway.app/sse/

选项3:码头工人

FROM python:3.11-slim

WORKDIR /app
COPY requirements.txt .
RUN pip install -r requirements.txt

COPY server.py .
COPY .env .

EXPOSE 8000
CMD ["python", "server.py"]

🤖 与ChatGPT的连接

1.开发者模式

  1. Ve a ChatGPT设置→ 连接器→ 高级
  2. Activa“开发者模式(测试版)”

2.进口MCP服务器

  1. 点击“导入MCP服务器”
  2. 配置:
    • 标签: sheets
    • 统一资源定位符: https://tu-servidor.com/sse/
    • 允许使用的工具: search, fetch, save_investigation
    • 需要批准: never (如你所愿)

3.从ChatGPT使用

  • 深入研究:创建调查时激活“使用连接器”
  • 聊天正常:提到您想使用Sheets连接器

🔧 MCP工具

search

在表格中搜索查询。

参数:

  • query (字符串):要搜索的文本

回答:

{
  "results": [
    {"id": "uuid-123", "title": "Título", "url": "https://..."}
  ]
}

fetch

按ID检索完整的查询。

参数:

  • id (字符串):行的唯一ID

回答:

{
  "id": "uuid-123",
  "title": "Título",
  "text": "Resumen: ... \n\nNotas: ...",
  "url": "https://...",
  "metadata": {"timestamp": "...", "tags": "...", ...}
}

save_investigation

保存新的研究(需要在ChatGPT中确认)。

参数:

  • titulo (字符串):标题
  • resumen (字符串):摘要
  • url (字符串):相关URL
  • notas (字符串):附加注释
  • tags (数组):标签列表
  • confianza (字符串):信任级别
  • solicitado_por (字符串):申请人
  • fuente (字符串):字体

回答:

{
  "ok": true,
  "inserted": {"id": "uuid-123", "timestamp": "...", ...}
}

🔒 安全

  • 最低特权原则:服务帐户只访问特定的工作表
  • 编写操作:ChatGPT在键入之前要求手动确认
  • 审计:所有写入都用时间戳和用户注册
  • 验证:保存前验证字段

🚨 解决问题

错误:“SHEET_ID未配置”

  • 验证变量 SHEET_ID 配置正确

错误:“权限被拒绝”

  • 确保您已与服务帐户的电子邮件共享该表
  • 验证权限是否来自“发布者”

错误:“未启用API”

  • 在Google云控制台上启用Google Sheets API和Google Drive API

ChatGPT找不到服务器

  • 验证URL是否以 /sse/
  • 确保服务器正在运行并可公开访问

📝 使用示例

搜索人工智能研究

ChatGPT usará: search("inteligencia artificial 2025")

保存新的研究

ChatGPT usará: save_investigation(
  titulo="Estado del mercado de IA 2025",
  resumen="Tendencias: agentes, RAG híbrido, edge.",
  url="https://ejemplo.com/informe",
  tags=["IA", "mercado", "tendencias"],
  confianza="alta",
  solicitado_por="Daniel",
  fuente="web research"
)

🔄 未来更新

  • []带有嵌入的语义搜索
  • []按日期、标签、信任排序的高级过滤器
  • []支持多张纸
  • [ ] 网页显示仪表板
  • []以不同格式导出

📄 许可证

麻省理工学院许可证-免费用于您的项目。


你需要帮助吗?打开问题或查询的文档 FastMCP y gspread.