项目简介

Grist MCP 服务器是一个基于 Model Context Protocol (MCP) 构建的应用后端,旨在使语言模型(如 Claude)能够直接与您的 Grist 电子表格数据进行交互。它通过将 Grist API 的功能封装成标准化的 MCP 工具,为 LLM 提供访问、管理和操作 Grist 数据的能力。

主要功能点

  • 浏览 Grist 结构: 能够列出您的组织、工作空间、文档、表格和列,帮助语言模型理解您的数据结构。
  • 数据管理: 支持对表格中的记录进行创建、读取、更新和删除 (CRUD) 操作。
  • 数据查询: 允许通过结构化方式或执行 SELECT SQL 查询来过滤、排序和检索数据。
  • 安全连接: 通过 Grist API 密钥进行认证,确保数据访问安全。

安装步骤

您可以选择以下任一方式安装 Grist MCP 服务器:

  1. 通过 pip (推荐): 确保您已安装 Python 3.8 或更高版本。然后运行:

    pip install mcp-server-grist
  2. 手动安装: 克隆仓库并手动安装依赖:

    git clone https://github.com/nic01asFr/mcp-server-grist.git
    cd mcp-server-grist
    pip install -r requirements.txt
    python setup.py install
  3. 通过 Docker: 如果您使用 Docker,可以构建镜像:

    docker build -t mcp/grist-mcp-server .

    构建完成后,您可以使用 Docker 容器作为 MCP 服务器运行。

服务器配置

Grist MCP 服务器需要您的 Grist API 密钥才能连接到 Grist。您需要将密钥和 Grist API 地址设置为环境变量。最常见的方式是创建一个 '.env' 文件。

创建一个名为 '.env' 的文件(可以从 '.env.template' 复制)并填写您的 Grist API 密钥:

GRIST_API_KEY=votre_clé_api_ici
GRIST_API_HOST=https://docs.getgrist.com/api # 或者您的自托管 Grist 地址

获取您的 Grist API 密钥:登录到您的 Grist 账户,通常在用户设置或偏好设置中找到。

用于 MCP 客户端的配置示例 (Claude Desktop 等):

MCP 客户端需要知道如何启动并与这个服务器通信。您需要在客户端的配置文件(例如 'claude_desktop_config.json')中添加一个新的 MCP 服务器配置。

对于 Python 安装 的配置信息大致如下:

  • 服务器名称: 'grist-mcp' (或您喜欢的任何名称)
  • 命令 (command): 'python'
  • 参数 (args): '-m', 'grist_mcp_server'
    • '-m grist_mcp_server' 指示 Python 解释器作为模块运行 'grist_mcp_server.py' 文件中的主程序。

对于 Docker 安装 的配置信息大致如下:

  • 服务器名称: 'grist-mcp-docker' (或您喜欢的任何名称)
  • 命令 (command): 'docker'
  • 参数 (args): 'run', '--rm', '-i', '-e', 'GRIST_API_KEY=votre_clé_api_ici', '-e', 'GRIST_API_HOST=https://docs.getgrist.com/api', 'mcp/grist-mcp-server'
    • 'run': 运行一个 Docker 容器。
    • '--rm': 容器停止时自动删除。
    • '-i': 保持标准输入打开,允许通过 Stdio 协议通信。
    • '-e GRIST_API_KEY=...', '-e GRIST_API_HOST=...': 设置容器内的环境变量。
    • 'mcp/grist-mcp-server': 要运行的 Docker 镜像名称。

重要提示: MCP 客户端的配置方式取决于具体的客户端软件,请查阅您的 MCP 客户端文档以获取准确的配置格式和位置。上述是启动 Grist MCP 服务器进程所需的 核心命令和参数

基本使用方法

一旦 MCP 服务器在您的客户端中配置并启动,语言模型就可以通过调用其暴露的工具来与 Grist 交互。例如,语言模型可以:

  • 调用 'list_documents' 工具获取特定工作空间下的文档列表。
  • 调用 'list_tables' 和 'list_columns' 工具了解文档中表格的结构。
  • 调用 'list_records' 工具检索表格数据。
  • 调用 'add_grist_records', 'update_grist_records', 'delete_grist_records' 工具修改数据。
  • 调用 'execute_sql_query' 工具执行更复杂的查询。

语言模型会根据您的请求或需要,自动识别并调用 Grist MCP 服务器提供的相应工具,并将结果返回给您。

信息

分类

数据库与文件