Coda
Read and edit docs, tables, and pages.
MCP server URL
https://coda.gumstack.com/mcp
Works with
Tools 38
Comment Add
Add a comment, reply, or emoji reaction to a page element, table row, comment thread, or comment. Call tool_guide with "comment" topic for comment and thread addressing or mentioning humans or agents.
Comment Delete
Permanently delete a comment reply or an entire comment thread.
Comment Resolve
Mark a comment thread as resolved, or reopen a resolved thread.
Content Image Upload
Upload an image to a canvas placeholder, or (omit blobId) mint a pre-signed S3 upload URL — use the returned imageUrl with table_rows_manage to write into a table image cell. Base64 data URLs are not supported. Call tool_guide with "content" topic for image and canvas writes.
Content Modify
Modify canvas content: insert, replace, or delete elements, or make headings and tables collapsible/foldable. When the content you insert includes one or more tables, add them with table_create instead of Markdown tables — keep a table as Markdown only when its rows are not records (a visual layout, not data you'd sort, filter, or group). Inline formatting: `**bold**`, `*italic*`, `__underline__`, and color/highlight via `<color:Red>…</color>`, `<color:Red bg:Yellow>…</color>`, or `<color: bg:Yellow>…</color>`. Call tool_guide with "content" topic first when targeting an element ID, mentioning humans or agents, or unsure which operation applies.
Content Read
Read body content of a page or cell canvas. Accepts a page URI (the default), a page-canvas URI, or a cell-canvas URI (returned as canvasUri by table_rows_read for canvas-typed cells). Call tool_guide with "page" topic for content type and markdown options.
Document Suggest Changes
Propose tracked suggest-changes on canvas line content (a page canvas or a canvas-typed table cell via its canvasUri): replace text in a single line, insert markdown lines, or change list style — including line text inside an existing callout. A reviewer accepts or rejects each suggestion; this does not apply a live edit. Suggested deletes stay visible until accepted, so a later content_read still shows the original text. Do NOT use this for live mutations, whole-block deletes, inserting a callout/code/image/divider, formulas, collapsible headings, text that spans multiple blocks, link labels, or nested values in a regular (non-canvas) table cell — those cannot become suggestions. Use content_modify for those live canvas edits, and table_rows_manage for regular table cells. Inline formatting: `**bold**`, `*italic*`, `__underline__`, and color/highlight via `<color:Red>…</color>`, `<color:Red bg:Yellow>…</color>`, or `<color: bg:Yellow>…</color>`. Call tool_guide with "content" topic first when targeting an element ID, or unsure which operation applies.
Document Outline
Outline a document: document metadata (title, icon, createdAt, owner, sourceDoc) plus a paginated list of its pages with per-page metadata (title, pageType, isHidden, parentPageUri, position, icon, coverPhoto, subtitle, canvasUri, authors, createdAt/updatedAt/createdBy/updatedBy, child page outlines). Page metadata and hierarchy — not the data model (tables, columns, views), and not body content.
Control Delete
Delete a control from the document. This permanently removes the control.
Control Manage
Create or update a canvas control (formula, button, reaction, checkbox, text box, slider, or date picker). Use action "create" to add a new control, or "update" to modify an existing one. When the write meets the exact-repair contract (formula-repair branch), construct the formula URI directly and update without loading a guide or pre-write discovery with content_read. For exact formula repairs, skip only unrequested confirmation readback. If the user explicitly asks for the resulting value or state, read the stored formula and supported computed result after the mutation. Otherwise, call tool_guide with "formula" topic; for a partial formula replacement, read the current formula from the owning page or canvas before constructing the update.
Control Read
Read a canvas control's full configuration by its formula or control coda:// URI — any control type, not just formulas and buttons. Returns type, current value, and the control's type-specific configuration under `format` (a button's label/actionFormula/color/disableIfFormula, a slider's minimum/maximum, a reaction's imageIcon); formula controls also carry formula/error. Obtain the URI from content_read (include "controls" or "formulas"), which returns the same fields for every control on a canvas — use this tool for a single control you already hold a URI for.
Formula Execute
Evaluate a Coda Formula Language (CFL) expression and return the result. Requires a document URI — truncate longer URIs to 'coda://docs/{docId}' (or 'coda://databases/{docId}' for a database). Call tool_guide with "formula" topic first when authoring or validating CFL you have not been given verbatim.