Coda

io.github.nkpar由 GitHub 帳號 nkpar 發布v0.2.1更新於 Oct 24, 2026

Interact with Coda.io documents, tables, and rows via the Coda API

已驗證STDIO僅桌面資料庫效率與工作流

概覽

AI 產生的概覽

本機 MCP 伺服器,讓 AI 助理透過 Coda API 讀寫 Coda.io 的文件、表格、列、頁面、公式與控制項。

可以做什麼
列出、搜尋、檢視、建立並永久刪除文件,列出頁面並取得其 HTML 內容,支援畫布頁面的非同步匯出流程。列出表格與欄位,並依條件篩選讀取列。在 Coda 表格中新增、更新與刪除列。列出命名公式與控制項並讀取公式值。處理 Coda API 的速率限制與排隊寫入回應。
適用情境
適合團隊將專案計畫、追蹤表或結構化資料放在 Coda,並希望助理直接查詢內容、摘要頁面或新增修改列而不必切換應用程式。也適合從範本或資料夾建立文件的流程。
執行需求
以本機程序在使用者電腦上執行(僅桌面端),可透過 cargo、預先建置的執行檔或 Docker 映像安裝。需要 Coda API 權杖,透過環境變數 CODA_API_TOKEN 提供;寫入操作需要具備寫入權限的權杖。選用環境變數 CODA_BASE_URL 與 RUST_LOG。需要連線至 Coda API 的網路存取。
安裝前請注意
此權杖可存取你的 Coda 工作區;具寫入權限的權杖可建立、更新並永久刪除文件與列。delete_doc 為永久刪除。寫入會排隊,可能需要數秒才生效。請勿將權杖放入共用的設定檔。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Coda,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

coda-mcp

[MCP Registry] [Crates.io] [CI] [codecov] [License: MIT] [MSRV]

MCP (Model Context Protocol) server for Coda.io API. Enables AI assistants to read and write Coda documents, tables, and rows.

Features

  • Full CRUD operations on Coda tables
  • Document and page content retrieval
  • Formula and control access
  • Async export workflow for canvas pages
  • Rate limit handling

Quick Start

1. Install

bash
cargo install coda-mcp

2. Get API Token

Get your token from coda.io/account → API settings.

3. Configure Claude Desktop

Add to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or ~/.config/claude/claude_desktop_config.json (Linux):

json
{  "mcpServers": {    "coda": {      "command": "/Users/YOUR_USERNAME/.cargo/bin/coda-mcp",      "env": {        "CODA_API_TOKEN": "your_token_here"      }    }  }}

4. Restart Claude Desktop

The Coda tools will now be available.

Installation

From crates.io (Recommended)

bash
cargo install coda-mcp

From Source

bash
git clone https://github.com/nkpar/coda-mcp.gitcd coda-mcpcargo build --release

Binary will be at ./target/release/coda-mcp

Pre-built Binaries

Check the Releases page.

Docker

No Rust toolchain required. Multi-arch image (amd64 + arm64), ~3MB.

bash
docker pull ghcr.io/nkpar/coda-mcp:latest

Claude Code (CLI):

bash
claude mcp add coda -e CODA_API_TOKEN=your_token_here -- docker run --rm -i -e CODA_API_TOKEN ghcr.io/nkpar/coda-mcp:latest

Claude Desktop config:

json
{  "mcpServers": {    "coda": {      "command": "docker",      "args": ["run", "--rm", "-i", "-e", "CODA_API_TOKEN", "ghcr.io/nkpar/coda-mcp:latest"],      "env": {        "CODA_API_TOKEN": "your_token_here"      }    }  }}

One-Click Install Script

For Claude Desktop with automatic configuration:

bash
git clone https://github.com/nkpar/coda-mcp.gitcd coda-mcp./scripts/install.sh

Configuration

1. Get API Token

Get your Coda API token from coda.io/account → API settings.

Important: For write operations (create_doc, delete_doc, add_row, update_row, delete_row), ensure your token has write permissions enabled. Read-only tokens will return 403 Forbidden for these operations.

2. Configure MCP Client

Claude Desktop (~/.config/claude/claude_desktop_config.json):

json
{  "mcpServers": {    "coda": {      "command": "/path/to/coda-mcp",      "env": {        "CODA_API_TOKEN": "your_token_here"      }    }  }}

Claude Code (CLI):

bash
# Binaryclaude mcp add coda -e CODA_API_TOKEN=your_token_here -- $HOME/.cargo/bin/coda-mcp
# Or via Docker (no Rust required)claude mcp add coda -e CODA_API_TOKEN=your_token_here -- docker run --rm -i -e CODA_API_TOKEN ghcr.io/nkpar/coda-mcp:latest

Or via .mcp.json in project root:

json
{  "mcpServers": {    "coda": {      "command": "/path/to/coda-mcp",      "env": {        "CODA_API_TOKEN": "your_token_here"      }    }  }}

Environment Variables

VariableRequiredDescription
CODA_API_TOKENYesYour Coda API token
CODA_BASE_URLNoAPI base URL (default: https://coda.io/apis/v1)
RUST_LOGNoLog level: error, warn, info, debug, trace

Tools

ToolDescription
list_docsList available documents
get_docGet document details
search_docsSearch documents by name
create_docCreate a new document (optional: folder, template, timezone)
delete_docDelete a document (permanent)
list_pagesList pages in a document
get_pageGet page content (HTML)
list_tablesList tables in a document
get_tableGet table details
list_columnsList columns in a table
get_rowsGet rows with optional filtering
get_rowGet a specific row
add_rowAdd a new row
update_rowUpdate an existing row
delete_rowDelete a row
list_formulasList named formulas
get_formulaGet formula value
list_controlsList controls (buttons, sliders)

Usage Examples

# List all documentslist_docs
# Create a new documentcreate_doc title="My New Doc"
# Create from template in specific foldercreate_doc title="Project Plan" folder_id="fl-abc" source_doc="template-xyz"
# Delete a document (permanent!)delete_doc doc_id="AbCdEfGh"
# Get rows from a tableget_rows doc_id="AbCdEfGh" table_id="grid-xyz" limit=50
# Filter rowsget_rows doc_id="AbCdEfGh" table_id="grid-xyz" query="Status:Active"
# Add a rowadd_row doc_id="AbCdEfGh" table_id="grid-xyz" cells={"Name": "John", "Email": "[email protected]"}
# Get page contentget_page doc_id="AbCdEfGh" page_id="canvas-xyz"

Rate Limits

Coda API has rate limits:

  • Reading: 100 requests per 6 seconds
  • Writing: 10 requests per 6 seconds

Write operations return HTTP 202 (queued). Changes may take a few seconds to appear.

Security

  • API tokens are redacted from all log output
  • Download URLs validated against trusted hosts only (coda.io, codahosted.io, storage.googleapis.com)
  • Request limits capped at 1000 to prevent resource exhaustion
  • Install script uses silent input for tokens and sets restrictive file permissions (600)

Development

bash
# Buildcargo build --release
# Run unit & integration testscargo test
# Run E2E tests (requires write-enabled API token)export $(cat .env | xargs) && cargo test --test e2e_tests -- --ignored
# Run with debug loggingRUST_LOG=debug cargo run
# Format & lintcargo fmt && cargo clippy

See DEVELOPER.md for API details and CONTRIBUTING.md for contribution guidelines.

License

MIT License. See LICENSE for details.

來源:README.md,提交 2d40cbb

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

1
  1. v0.2.1最新Sep 16, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分