Coda MCP Server for Cloudflare Workers
37 tools available in the Coda MCP server. Each tool can be called by AI assistants to perform specific actions.
coda_list_automationsList automation rules in a Coda document.
Automations are rules that automatically perform actions based on triggers.
Args:
Returns: Paginated list of automation rules with their names, triggers, and enabled status.
{
"type": "object",
"required": [
"docId"
],
"properties": {
"docId": {
"type": "string",
"description": "Document ID"
},
"limit": {
"type": "integer",
"default": 50,
"maximum": 100,
"minimum": 1
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"pageToken": {
"type": "string"
}
}
}coda_trigger_automationTrigger a webhook-enabled automation rule.
Only automations with webhook triggers can be triggered via API.
Args:
Returns: Request ID for tracking the automation execution.
{
"type": "object",
"required": [
"docId",
"ruleId"
],
"properties": {
"docId": {
"type": "string",
"description": "Document ID"
},
"ruleId": {
"type": "string",
"description": "Automation rule ID"
},
"message": {
"type": "string",
"description": "Message payload"
}
}
}coda_list_controlsList controls in a Coda document.
Controls are interactive elements like buttons, sliders, checkboxes, date pickers, etc.
Args:
Returns: Paginated list of controls with their types and current values.
{
"type": "object",
"required": [
"docId"
],
"properties": {
"docId": {
"type": "string",
"description": "Document ID"
},
"limit": {
"type": "integer",
"default": 50,
"maximum": 100,
"minimum": 1
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"pageToken": {
"type": "string"
}
}
}coda_get_controlGet the current value of a control.
Args:
Returns: Control details including name, type, and current value.
{
"type": "object",
"required": [
"docId",
"controlIdOrName"
],
"properties": {
"docId": {
"type": "string",
"description": "Document ID"
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"controlIdOrName": {
"type": "string",
"description": "Control ID or name"
}
}
}coda_get_tableGet details for a specific table or view.
Args:
Returns: Table details including type, row count, columns, layout, sorts, and filters.
{
"type": "object",
"required": [
"docId",
"tableIdOrName"
],
"properties": {
"docId": {
"type": "string",
"description": "Document ID"
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"tableIdOrName": {
"type": "string",
"description": "Table ID or name"
}
}
}coda_list_docsList Coda documents accessible to the user.
Args:
Returns: Paginated list of documents with ID, name, owner, workspace, and timestamps.
{
"type": "object",
"properties": {
"limit": {
"type": "integer",
"default": 20,
"maximum": 100,
"minimum": 1,
"description": "Number of docs to return"
},
"query": {
"type": "string",
"description": "Search query string"
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string",
"default": "json",
"description": "Response format"
},
"isOwner": {
"type": "boolean",
"description": "Filter to docs owned by the user"
},
"folderId": {
"type": "string",
"description": "Filter by folder ID"
},
"isStarred": {
"type": "boolean",
"description": "Filter to starred docs"
},
"pageToken": {
"type": "string",
"description": "Pagination token"
},
"isPublished": {
"type": "boolean",
"description": "Filter to published docs"
},
"workspaceId": {
"type": "string",
"description": "Filter by workspace ID"
}
}
}coda_get_docGet details for a specific Coda document.
Args:
Returns: Document details including name, owner, workspace, folder, size, and timestamps.
{
"type": "object",
"required": [
"docId"
],
"properties": {
"docId": {
"type": "string",
"description": "Document ID"
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
}
}
}coda_create_docCreate a new Coda document.
Args:
Returns: The created document.
{
"type": "object",
"required": [
"title"
],
"properties": {
"title": {
"type": "string",
"description": "Document title"
},
"folderId": {
"type": "string",
"description": "Folder ID to create the doc in"
},
"timezone": {
"type": "string",
"description": "Timezone for the doc"
},
"sourceDoc": {
"type": "string",
"description": "ID of doc to copy from"
}
}
}coda_delete_docDelete a Coda document.
Args:
Returns: Confirmation of deletion.
{
"type": "object",
"required": [
"docId"
],
"properties": {
"docId": {
"type": "string",
"description": "Document ID to delete"
}
}
}coda_list_formulasList named formulas in a Coda document.
Named formulas are reusable formulas defined in a doc that can be referenced elsewhere.
Args:
Returns: Paginated list of formulas with their names and current values.
{
"type": "object",
"required": [
"docId"
],
"properties": {
"docId": {
"type": "string",
"description": "Document ID"
},
"limit": {
"type": "integer",
"default": 50,
"maximum": 100,
"minimum": 1
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"pageToken": {
"type": "string"
}
}
}coda_get_formulaGet the current value of a named formula.
Args:
Returns: Formula details including name and current computed value.
{
"type": "object",
"required": [
"docId",
"formulaIdOrName"
],
"properties": {
"docId": {
"type": "string",
"description": "Document ID"
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"formulaIdOrName": {
"type": "string",
"description": "Formula ID or name"
}
}
}coda_list_pagesList pages in a Coda document.
Args:
Returns: Paginated list of pages with their hierarchy, names, and subtitles.
{
"type": "object",
"required": [
"docId"
],
"properties": {
"docId": {
"type": "string",
"description": "Document ID"
},
"limit": {
"type": "integer",
"default": 20,
"maximum": 100,
"minimum": 1
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"pageToken": {
"type": "string"
}
}
}coda_get_pageGet details for a specific page.
Args:
Returns: Page details including name, subtitle, icon, parent, and children.
{
"type": "object",
"required": [
"docId",
"pageIdOrName"
],
"properties": {
"docId": {
"type": "string",
"description": "Document ID"
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"pageIdOrName": {
"type": "string",
"description": "Page ID or name"
}
}
}coda_create_pageCreate a new page in a Coda document.
Args:
Returns: The created page.
{
"type": "object",
"required": [
"docId",
"name"
],
"properties": {
"name": {
"type": "string",
"description": "Page name"
},
"docId": {
"type": "string",
"description": "Document ID"
},
"iconName": {
"type": "string",
"description": "Icon name"
},
"imageUrl": {
"type": "string",
"description": "Cover image URL"
},
"subtitle": {
"type": "string",
"description": "Page subtitle"
},
"pageContent": {
"type": "string",
"description": "Initial page content"
},
"contentFormat": {
"enum": [
"markdown",
"html"
],
"type": "string",
"default": "markdown",
"description": "Content format"
},
"parentPageIdOrName": {
"type": "string",
"description": "Parent page ID or name"
}
}
}coda_update_pageUpdate an existing page.
Args:
Returns: The updated page.
{
"type": "object",
"required": [
"docId",
"pageIdOrName"
],
"properties": {
"name": {
"type": "string",
"description": "New page name"
},
"docId": {
"type": "string",
"description": "Document ID"
},
"iconName": {
"type": "string",
"description": "New icon name"
},
"imageUrl": {
"type": "string",
"description": "New cover image URL"
},
"isHidden": {
"type": "boolean",
"description": "Hide the page"
},
"subtitle": {
"type": "string",
"description": "New subtitle"
},
"pageIdOrName": {
"type": "string",
"description": "Page ID or name to update"
},
"contentFormat": {
"enum": [
"markdown",
"html"
],
"type": "string",
"default": "markdown"
},
"contentUpdate": {
"type": "string",
"description": "Content to update"
},
"insertionMode": {
"enum": [
"append",
"replace"
],
"type": "string"
}
}
}coda_get_sharing_metadataGet sharing metadata for a document.
Returns information about what sharing actions are allowed for this doc.
Args:
Returns: Metadata about sharing capabilities (canShare, canCopy, etc.).
{
"type": "object",
"required": [
"docId"
],
"properties": {
"docId": {
"type": "string",
"description": "Document ID"
}
}
}coda_list_permissionsList permissions for a document.
Shows who has access to the document and their access levels.
Args:
Returns: Paginated list of permissions with principals and access levels.
{
"type": "object",
"required": [
"docId"
],
"properties": {
"docId": {
"type": "string",
"description": "Document ID"
},
"limit": {
"type": "integer",
"default": 50,
"maximum": 100,
"minimum": 1
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"pageToken": {
"type": "string"
}
}
}coda_add_permissionAdd a permission to a document.
Grants access to a user, domain, or anyone.
Args:
Returns: The created permission.
{
"type": "object",
"required": [
"docId",
"access",
"principalType"
],
"properties": {
"docId": {
"type": "string",
"description": "Document ID"
},
"email": {
"type": "string",
"description": "Email address"
},
"access": {
"enum": [
"readonly",
"write",
"comment",
"none"
],
"type": "string",
"description": "Access level"
},
"domain": {
"type": "string",
"description": "Domain name"
},
"principalType": {
"enum": [
"email",
"domain",
"anyone"
],
"type": "string",
"description": "Principal type"
},
"suppressEmail": {
"type": "boolean",
"default": false,
"description": "Suppress notification email"
}
}
}coda_delete_permissionRemove a permission from a document.
Args:
Returns: Confirmation of deletion.
{
"type": "object",
"required": [
"docId",
"permissionId"
],
"properties": {
"docId": {
"type": "string",
"description": "Document ID"
},
"permissionId": {
"type": "string",
"description": "Permission ID to remove"
}
}
}coda_get_acl_settingsGet ACL settings for a document.
Returns sharing configuration options for the document.
Args:
Returns: ACL settings including editor permissions and copying settings.
{
"type": "object",
"required": [
"docId"
],
"properties": {
"docId": {
"type": "string",
"description": "Document ID"
}
}
}coda_update_acl_settingsUpdate ACL settings for a document.
Args:
Returns: The updated ACL settings.
{
"type": "object",
"required": [
"docId"
],
"properties": {
"docId": {
"type": "string",
"description": "Document ID"
},
"allowCopying": {
"type": "boolean"
},
"allowViewersToRequestEditing": {
"type": "boolean"
},
"allowEditorsToChangePermissions": {
"type": "boolean"
}
}
}coda_list_categoriesList available publishing categories.
Categories are used when publishing docs to the Coda gallery.
Returns: List of category names.
{
"type": "object",
"properties": {}
}coda_publish_docPublish a document to make it publicly accessible.
Args:
Returns: Confirmation of publication.
{
"type": "object",
"required": [
"docId"
],
"properties": {
"mode": {
"enum": [
"view",
"play",
"edit"
],
"type": "string",
"default": "view",
"description": "Publishing mode"
},
"slug": {
"type": "string",
"description": "Custom URL slug"
},
"docId": {
"type": "string",
"description": "Document ID"
},
"earnCredit": {
"type": "boolean",
"default": false,
"description": "Earn credits on copies"
},
"discoverable": {
"type": "boolean",
"default": false,
"description": "Discoverable in gallery"
},
"categoryNames": {
"type": "array",
"items": {
"type": "string"
},
"description": "Category names"
}
}
}coda_unpublish_docUnpublish a document.
Makes a previously published document private again.
Args:
Returns: Confirmation of unpublication.
{
"type": "object",
"required": [
"docId"
],
"properties": {
"docId": {
"type": "string",
"description": "Document ID"
}
}
}coda_list_rowsList rows in a table.
Args:
Returns: Paginated list of rows with their values.
{
"type": "object",
"required": [
"docId",
"tableIdOrName"
],
"properties": {
"docId": {
"type": "string",
"description": "Document ID"
},
"limit": {
"type": "integer",
"default": 100,
"maximum": 500,
"minimum": 1
},
"query": {
"type": "string",
"description": "Filter query (e.g., \"Status:Active"
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"sortBy": {
"type": "string",
"description": "Column to sort by"
},
"pageToken": {
"type": "string"
},
"valueFormat": {
"enum": [
"simple",
"simpleWithArrays",
"rich"
],
"type": "string",
"description": "Value format"
},
"visibleOnly": {
"type": "boolean",
"description": "Only visible rows"
},
"tableIdOrName": {
"type": "string",
"description": "Table ID or name"
},
"useColumnNames": {
"type": "boolean",
"default": true,
"description": "Use column names in response"
}
}
}coda_get_rowGet a single row from a table.
Args:
Returns: Row details with all column values.
{
"type": "object",
"required": [
"docId",
"tableIdOrName",
"rowIdOrName"
],
"properties": {
"docId": {
"type": "string",
"description": "Document ID"
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"rowIdOrName": {
"type": "string",
"description": "Row ID or name"
},
"tableIdOrName": {
"type": "string",
"description": "Table ID or name"
},
"useColumnNames": {
"type": "boolean",
"default": true
}
}
}coda_upsert_rowsInsert or upsert rows into a table.
When keyColumns is provided, rows matching the key columns will be updated instead of inserted.
Args:
Returns: The request ID and list of added/updated row IDs.
{
"type": "object",
"required": [
"docId",
"tableIdOrName",
"rows"
],
"properties": {
"rows": {
"type": "array",
"items": {
"type": "string"
},
"description": "Rows to insert/upsert"
},
"docId": {
"type": "string",
"description": "Document ID"
},
"keyColumns": {
"type": "array",
"items": {
"type": "string"
},
"description": "Key columns for upsert"
},
"tableIdOrName": {
"type": "string",
"description": "Table ID or name"
},
"disableParsing": {
"type": "boolean"
}
}
}coda_update_rowUpdate a single row in a table.
Args:
Returns: The request ID and row ID.
{
"type": "object",
"required": [
"docId",
"tableIdOrName",
"rowIdOrName",
"cells"
],
"properties": {
"cells": {
"type": "array",
"items": {
"type": "string"
},
"description": "Cells to update"
},
"docId": {
"type": "string",
"description": "Document ID"
},
"rowIdOrName": {
"type": "string",
"description": "Row ID or name to update"
},
"tableIdOrName": {
"type": "string",
"description": "Table ID or name"
},
"disableParsing": {
"type": "boolean"
}
}
}coda_delete_rowDelete a single row from a table.
Args:
Returns: The request ID and deleted row ID.
{
"type": "object",
"required": [
"docId",
"tableIdOrName",
"rowIdOrName"
],
"properties": {
"docId": {
"type": "string",
"description": "Document ID"
},
"rowIdOrName": {
"type": "string",
"description": "Row ID or name to delete"
},
"tableIdOrName": {
"type": "string",
"description": "Table ID or name"
}
}
}coda_delete_rowsDelete multiple rows from a table.
Args:
Returns: The request ID and list of deleted row IDs.
{
"type": "object",
"required": [
"docId",
"tableIdOrName",
"rowIds"
],
"properties": {
"docId": {
"type": "string",
"description": "Document ID"
},
"rowIds": {
"type": "array",
"items": {
"type": "string"
},
"description": "Row IDs to delete"
},
"tableIdOrName": {
"type": "string",
"description": "Table ID or name"
}
}
}coda_push_buttonPush a button in a table row.
Args:
Returns: The request ID and confirmation.
{
"type": "object",
"required": [
"docId",
"tableIdOrName",
"rowIdOrName",
"columnIdOrName"
],
"properties": {
"docId": {
"type": "string",
"description": "Document ID"
},
"rowIdOrName": {
"type": "string",
"description": "Row ID or name"
},
"tableIdOrName": {
"type": "string",
"description": "Table ID or name"
},
"columnIdOrName": {
"type": "string",
"description": "Button column ID or name"
}
}
}coda_list_tablesList tables and views in a Coda document.
Args:
Returns: Paginated list of tables with their type, row count, layout, and timestamps.
{
"type": "object",
"required": [
"docId"
],
"properties": {
"docId": {
"type": "string",
"description": "Document ID"
},
"limit": {
"type": "integer",
"default": 20,
"maximum": 100,
"minimum": 1
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"sortBy": {
"enum": [
"name",
"createdAt",
"updatedAt"
],
"type": "string",
"description": "Sort order"
},
"pageToken": {
"type": "string"
},
"tableTypes": {
"type": "array",
"items": {
"type": "string"
},
"description": "Filter by table type"
}
}
}coda_list_columnsList columns in a table.
Args:
Returns: Paginated list of columns with their ID, name, type, and format details.
{
"type": "object",
"required": [
"docId",
"tableIdOrName"
],
"properties": {
"docId": {
"type": "string",
"description": "Document ID"
},
"limit": {
"type": "integer",
"default": 50,
"maximum": 100,
"minimum": 1
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"pageToken": {
"type": "string"
},
"tableIdOrName": {
"type": "string",
"description": "Table ID or name"
}
}
}coda_get_columnGet details for a specific column.
Args:
Returns: Column details including name, type, format, formula (if calculated), and default value.
{
"type": "object",
"required": [
"docId",
"tableIdOrName",
"columnIdOrName"
],
"properties": {
"docId": {
"type": "string",
"description": "Document ID"
},
"format": {
"enum": [
"json",
"markdown"
],
"type": "string"
},
"tableIdOrName": {
"type": "string",
"description": "Table ID or name"
},
"columnIdOrName": {
"type": "string",
"description": "Column ID or name"
}
}
}coda_whoamiGet information about the current authenticated user.
Returns: User information including name, login ID, and workspace details.
{
"type": "object",
"properties": {}
}coda_resolve_browser_linkResolve a Coda URL to get metadata about the referenced object.
Converts a browser URL to API resource information.
Args:
Returns: Resource information including type, ID, and href.
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"description": "Coda URL to resolve"
},
"degradeGracefully": {
"type": "boolean"
}
}
}coda_get_mutation_statusCheck the status of an asynchronous mutation.
Many write operations return a request ID and complete asynchronously. Use this to check if a mutation has finished processing.
Args:
Returns: Mutation status including whether it's completed and any warnings.
{
"type": "object",
"required": [
"requestId"
],
"properties": {
"requestId": {
"type": "string",
"description": "Request ID from a mutation"
}
}
}