关于 grist-mcp-server
grist-mcp-server 将 MCP 客户端连接到 Grist,提供管理文档、记录、架构、SQL 查询和页面的工具。它也支持部署为 Cloudflare Workers 上的 HTTP 服务。
主要功能
- 01列出工作区并查找文档
- 02查看表格和架构
- 03使用 SQL 查询数据
- 04创建、更新和删除记录
- 05管理架构、页面和 Webhook
- 06创建或复制文档
适用场景
- 01创建 Grist 文档并设置数据表
- 02批量导入或更新记录
- 03通过联接和聚合查询数据
MCP 相关
向 MCP 客户端提供 11 个用于管理 Grist 文档、记录、架构、SQL、页面和 Webhook 的工具。也可通过 Cloudflare Workers 以 HTTP 方式运行远程 MCP 服务。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
11收录的工具列表 · 更新于 2 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| limit | integer | 否 | |
| offset | integer | 否 | |
| detail_level | string | 否 | |
| name_contains | string | 否 | |
| response_format | string | 否 |
详细介绍
Grist MCP 服务
Grist 的 MCP 服务。提供 11 个工具,用于处理文档、记录、SQL 和页面。
快速开始
Claude Code(推荐)
claude mcp add grist --env GRIST_API_KEY=your_api_key --env GRIST_BASE_URL=https://docs.getgrist.com -- npx -y grist-mcp-server
Claude Desktop(MCPB bundle)
- 从 Releases 下载
grist-mcp-server.mcpb - 在 Claude Desktop 中:设置 → 开发者 → MCP Servers → 从 MCPB 安装
- 配置 Grist API 密钥和基础 URL
- 重启 Claude Desktop
手动配置(.mcp.json)
添加到你的 .mcp.json 文件中:
{
"mcpServers": {
"grist": {
"command": "npx",
"args": ["-y", "grist-mcp-server"],
"env": {
"GRIST_API_KEY": "your_api_key",
"GRIST_BASE_URL": "https://docs.getgrist.com"
}
}
}
}
从源代码安装
git clone https://github.com/gwhthompson/grist-mcp-server.git
cd grist-mcp-server
npm install && npm run build
添加到你的 MCP 配置中:
{
"mcpServers": {
"grist": {
"command": "node",
"args": ["/path/to/grist-mcp-server/dist/index.js"],
"env": {
"GRIST_API_KEY": "your_api_key",
"GRIST_BASE_URL": "https://docs.getgrist.com"
}
}
}
}
Cloudflare Workers(HTTP 传输)
使用 Cloudflare Workers 部署为远程 MCP 服务,通过 HTTP 访问。
本地开发:
npm run worker:dev
部署到 Cloudflare:
npm run worker:deploy
配置:
Workers 部署使用基于请求头的身份验证:
X-Grist-API-Key:你的 Grist API 密钥(必需)X-Grist-Base-URL:Grist 实例 URL(可选,默认为https://docs.getgrist.com)
端点: https://your-worker.workers.dev/mcp
请求示例:
curl -X POST https://your-worker.workers.dev/mcp \
-H "Content-Type: application/json" \
-H "X-Grist-API-Key: your_api_key" \
-d '{"jsonrpc":"2.0","method":"tools/list","id":1}'
说明:
- 无状态设计:每个请求都会创建一个全新的服务实例
- 为所有来源启用 CORS(由于身份验证使用请求头而非 Cookie,因此是安全的)
- 通过
wrangler secret put GRIST_API_KEY配置环境变量
工具
| 工具 | 用途 |
|---|---|
grist_get_workspaces | 列出并筛选工作区 |
grist_get_documents | 按 ID、名称或工作区查找文档 |
grist_get_tables | 获取表结构和架构 |
grist_query_sql | 执行包含 JOIN 和聚合的 SQL 查询 |
grist_get_records | 使用筛选条件获取记录 |
grist_manage_records | 执行所有记录 CRUD 操作(添加/更新/删除/插入或更新) |
grist_manage_schema | 架构操作:表、列、汇总 |
grist_manage_pages | 页面布局和管理 |
grist_create_document | 创建新的 Grist 文档或复制现有文档 |
grist_manage_webhooks | 创建和管理 Webhook,以接收实时事件通知 |
grist_help | 查找工具并通过 JSON 架构获取详细文档 |
示例
创建数据库
1. grist_get_workspaces → find workspace
2. grist_create_document → create document
3. grist_manage_schema → create tables with columns
导入数据
1. grist_get_documents → find document
2. grist_get_tables → check structure
3. grist_manage_records → upsert data (adds new, updates existing)
查询数据
1. grist_get_tables → understand schema
2. grist_query_sql → run SQL with JOINs and aggregations
故障排除
服务无法启动: 检查配置中是否已设置 GRIST_API_KEY。
身份验证失败: 在 https://docs.getgrist.com/settings/keys 验证 API 密钥。
文档列表为空: 检查 GRIST_BASE_URL 是否与 Grist 实例匹配。
连接错误(可自托管): 确认 URL 包含 https://,且服务器可以访问。
测试
npm test # Docker required - container lifecycle is automatic
文档
工具说明简明扼要。使用 grist_help 查看详情:
grist_help({tools: ["grist_manage_records"], only: ["examples"]})grist_help({tools: ["grist_query_sql"], only: ["errors"]})
版本历史请参阅 CHANGELOG.md。
链接
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。