coda-mcp-server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| CODA_API_KEY | Yes | Your Coda API key from https://coda.io/account |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| whoamiA | Get information about the current authenticated Coda user including name, email, and scoped token info |
| get_doc_infoA | Get detailed metadata about a specific Coda doc by its ID |
| delete_docB | Permanently delete a Coda doc by ID - use with extreme caution as this cannot be undone |
| update_docC | Update properties of a Coda doc including title and icon |
| list_docsB | List Coda docs accessible by the user (defaults to your own unpublished docs) - returns docs in reverse chronological order by most recent activity |
| create_docB | Create a new Coda doc with optional configuration including title, timezone, folder placement, and initial page content |
| list_pagesB | List all pages in a Coda doc with pagination support |
| get_pageB | Get detailed metadata about a specific page by its ID or name |
| update_pageB | Update properties and content of a page including name, subtitle, icon, visibility, and HTML/markdown content |
| delete_pageB | Delete a page from a Coda doc by its ID or name |
| begin_page_content_exportA | Start an async export of page content in HTML or markdown format - returns request ID to poll for completion with get_page_content_export_status |
| get_page_content_export_statusA | Check status of a page export and auto-download content when ready - poll this after starting export with begin_page_content_export |
| create_pageB | Create a new page in a Coda doc with optional subtitle, icon, parent page, and initial HTML/markdown content |
| list_tablesC | List all tables and views in a Coda doc with optional filtering and sorting |
| get_tableB | Get detailed information about a specific table including its schema, columns, and metadata |
| list_columnsC | List all columns in a table with their properties, formats, and formulas |
| get_columnB | Get detailed information about a specific column including its type, format, and formula |
| push_buttonA | Trigger a button column in a table row to execute its automation or action (buttons can run formulas, modify data, or trigger workflows) |
| list_rowsC | List rows in a table with optional filtering, sorting, and pagination - returns row data with cell values |
| get_rowA | Get a specific row from a table by its ID or name with all cell values |
| upsert_rowsB | Insert new rows or update existing rows in a table based on key columns - ideal for bulk operations |
| update_rowC | Update cell values in a specific row by its ID or name |
| delete_rowB | Delete a specific row from a table by its ID or name |
| delete_rowsC | Delete multiple rows from a table at once using a list of row IDs |
| list_formulasC | List all named formulas in a Coda doc with their names and IDs |
| get_formulaB | Get details about a specific named formula including its computed value |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 26 tools
Every tool targets a distinct resource and operation (doc, page, table, row, column, formula, export, user). There is no ambiguity between tools; even related tools like delete_row and delete_rows are clearly differentiated by singular vs plural.
Most tools follow a consistent verb_noun pattern (e.g., create_doc, list_pages, get_row). Minor deviations include 'whoami' and 'push_button', but overall the naming is predictable and readable.
26 tools cover a broad domain (docs, pages, tables, rows, columns, formulas, exports, user). While slightly on the higher side, the count is justified by the complexity of Coda's API and does not feel excessive.
Significant gaps exist: there is no single create_row tool (only upsert_rows), columns are read-only (no create/update/delete column), and formulas have no mutation tools. The surface is incomplete for basic CRUD on rows and columns.