mcpField
M
MCP Server - Coda.io

MCP Server - Coda.io

本地服务
github.com/elberrd生产力580 周前更新

关于 MCP Server - Coda.io

MCP Server - Coda.io 将 Coda API 的文档、表格和数据管理功能提供给需要读写 Coda 内容的用户。它涵盖表格与列信息查询、行的读取、插入、更新和删除。

主要功能

  1. 01列出 Coda 文档
  2. 02获取文档中的表格
  3. 03读取表格列信息
  4. 04读取表格行
  5. 05插入或更新行
  6. 06删除指定行

适用场景

  1. 01查找可用的 Coda 文档
  2. 02检查表格结构和内容
  3. 03批量维护表格行数据

MCP 相关

该 MCP 服务通过 Coda API 向 MCP 客户端提供文档、表格、列和行操作工具。需要配置 Coda API key。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"CodaMcpServer": {
"command": "npx",
"args": [
"-y",
"tsc"
]
}
}
}
启动命令npx -y tsc

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npmtsc

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

MCP 服务 - Coda.io

一个 Model Context Protocol(MCP)服务实现,可与 Coda 的 API 无缝集成,提供多种文档、表格和数据管理工具。

功能

  • 表格操作
    • 获取文档中的所有表格
    • 检索特定表格的数据
    • 获取表格列信息
  • 行管理
    • 获取表格中的行
    • 插入或更新行
    • 删除行
  • 列操作
    • 获取特定列的详细信息
    • 获取列元数据

前提条件

  • Node.js(v20 或更高版本)
  • Coda API 密钥
  • TypeScript 知识(用于开发)

环境设置

  1. 在 Replit 中克隆或复刻此仓库
  2. 在根目录中创建 .env 文件:
    PORT=8000
    CODA_API_KEY=your_coda_api_key_here
    
  3. 将 your_coda_api_key_here 替换为你的实际 Coda API 密钥

安装

此项目使用 npm 管理依赖项。安装依赖项:

npm install

构建项目

将 TypeScript 文件编译为 JavaScript:

npx tsc

运行服务

构建完成后,启动服务:

node dist/index.js

或者使用组合命令:

npm install && npx tsc && node dist/index.js

服务默认在端口 8000 上启动,并提供以下端点:

  • GET /sse - SSE 连接端点
  • POST /messages - 消息处理端点

可用工具

  1. fetch-coda-docs

    • 获取所有可用的 Coda 文档
    • 可选参数:isOwner、limit
  2. fetch-coda-tables

    • 获取指定文档中的所有表格
    • 必需参数:docId
  3. fetch-coda-table

    • 获取文档中的特定表格
    • 必需参数:docId、tableId
  4. fetch-coda-table-columns

    • 获取特定表格的列信息
    • 必需参数:docId、tableId
  5. fetch-coda-rows

    • 获取指定表格中的行
    • 必需参数:docId、tableId
  6. upsert-coda-rows

    • 在表格中插入或更新行
    • 必需参数:docId、tableId、rows
  7. delete-coda-rows

    • 删除表格中的指定行
    • 必需参数:docId、tableId、rowIds

错误处理

此服务实现了全面的错误处理:

  • 环境变量验证
  • API 响应验证
  • 请求参数验证
  • 适当的错误消息和日志记录

开发

项目结构如下:

src/
├── tools/           # Individual tool implementations
│   ├── fetch-coda-docs.tool.ts
│   ├── fetch-coda-tables.tool.ts
│   └── ...
└── index.ts        # Main server implementation

构建所用技术

  • Express.js - Web 框架
  • @modelcontextprotocol/sdk - MCP 实现
  • Zod - 运行时类型检查
  • dotenv - 环境配置

已知限制和未来改进

当前工具实现仍需多项改进:

  • 改进 JSON 响应处理和格式化
  • 为大型数据集实现分页
  • 改进错误处理和重试机制
  • 实现速率限制
  • 为大型操作实现批处理
  • 为频繁访问的数据实现缓存机制
  • 根据文档,还需要实现更多 API 工具

MCP 客户端实现示例

以下是在 Cursor 中实现此 MCP 服务的示例:

  1. 在 Cursor 的 mcp.json 中配置 MCP 服务: Cursor MCP JSON 配置

  2. 在 Cursor 的设置中启用并使用可用工具: Cursor MCP 工具配置

许可证

此项目采用 ISC 许可证。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。