Coda MCP server
Connect an agent to Coda docs, pages, tables, and rows so it can read and edit your workspace.
Coda MCP is a community server that connects an AI agent to a Coda workspace through the Coda API. Coda blends documents and databases into a single surface, and this server exposes both halves: the agent can list documents, browse and create pages, read page content as Markdown, and append, replace, duplicate, or rename pages, while on the database side it can list tables and columns, query rows with filtering and sorting, fetch a single row, upsert and update rows, delete rows, and even push button columns to trigger automations.
It runs locally over stdio with a single npx command and authenticates with a Coda API key you generate in your account settings, so no separate hosting is required. Because Coda pages round-trip as Markdown, the agent works with clean text rather than raw API payloads, which makes it a practical bridge for keeping a Coda doc current or answering questions over the structured data in your tables.
Quick install
Copy-paste configs are provided for all 8 supported clients. Pick your client below.
Available tools
| Tool | Description |
|---|---|
| coda_list_documents | Lists the Coda documents available to the authenticated user. |
| coda_list_pages | Lists the pages in a document with pagination support. |
| coda_create_page | Creates a new page, optionally with initial Markdown content. |
| coda_get_page_content | Retrieves a page's content rendered as Markdown. |
| coda_replace_page_content | Replaces a page's content with new Markdown. |
| coda_append_page_content | Appends Markdown content to the end of a page. |
| coda_duplicate_page | Duplicates an existing page within a document. |
| coda_rename_page | Renames an existing page. |
| coda_peek_page | Previews a limited number of lines from the start of a page. |
| coda_resolve_link | Resolves a Coda object link into structured metadata. |
| coda_list_tables | Lists the tables in a document. |
| coda_list_columns | Lists the columns of a table. |
| coda_list_rows | Lists rows in a table with optional filtering and sorting. |
| coda_get_row | Retrieves a single row from a table. |
| coda_upsert_rows | Inserts new rows or updates existing rows in a table. |
| coda_update_row | Updates a single row in a table. |
| coda_delete_row | Deletes a single row from a table. |
| coda_delete_rows | Deletes multiple rows from a table. |
| coda_push_button | Activates a button column to trigger its configured action. |
Required configuration
- API_KEYRequired
Your Coda API key, generated from your Coda account settings.
What you can do with it
Keep a Coda doc current
An agent appends meeting notes, decisions, or status to the right page so the doc stays in sync without manual copy-paste.
Query structured tables
Ask a question over a Coda table and the agent lists and filters rows to return the answer instead of you scanning the grid.
FAQ
- Is it free?
- Yes. The server is open source under the MIT license and free to run; it works within your existing Coda plan and the Coda API's rate limits.
- Does it support remote/OAuth?
- No. This is a local stdio server that authenticates with a Coda API key set in the API_KEY environment variable; there is no hosted OAuth endpoint.