本项目实现了一个模型上下文协议(MCP)服务器,它就像一座桥梁,用于和 Coda API 进行交互。借助这个服务器,MCP 客户端(例如人工智能助手)能够对特定的 Coda 文档执行各类操作,像列出、创建、读取、更新、复制和重命名页面等。
将 MCP 服务器添加到 Cursor/Claude Desktop 等工具中,使用以下执行命令:
npx -y coda-mcp@latest
例如,在 Cursor/Claude Desktop 中,可以这样添加:
{
"mcpServers": {
"coda": {
"command": "npx",
"args": ["-y", "coda-mcp@latest"],
"env": {
"API_KEY": "...",
"DOC_ID": "..."
}
}
}
}
API_KEY:您的 Coda API 密钥,可在 Coda 账户设置中生成。DOC_ID:Coda 文档的 ID,服务器将与该文档进行交互,可在文档的 URL 中找到(_d 后的部分)。该服务器向 MCP 客户端公开了以下实用工具:
list-pages:列出配置的 Coda 文档中的所有页面。create-page:在文档中创建新页面,还能选择用初始 Markdown 内容进行填充。get-page-content:按 ID 或名称检索指定页面的内容(以 Markdown 形式呈现)。replace-page-content:用新的 Markdown 内容替换指定页面的内容。append-page-content:在指定页面的末尾追加新的 Markdown 内容。duplicate-page:复制现有页面并以新名称创建副本。rename-page:重命名现有页面。git clone
cd coda-mcp
pnpm install
pnpm build
此操作会将 TypeScript 代码编译为 JavaScript,并输出到 dist/ 目录。
MCP 服务器通过标准输入输出(stdio)进行通信。要运行它,请设置环境变量并执行编译后的 JavaScript 文件 - dist/index.js。
在 Cursor/Claude Desktop 等工具中添加 MCP 服务器的配置示例:
{
"mcpServers": {
"coda": {
"command": "npx",
"args": ["-y", "coda-mcp@latest"],
"env": {
"API_KEY": "...",
"DOC_ID": "..."
}
}
}
}
pnpm lint 来检查代码是否符合规范。pnpm format 对代码进行格式化。pnpm openapi-ts 重新生成客户端。