KosmoKrator

productivity

Coda CLI for AI Agents

Use the Coda CLI from KosmoKrator to call Coda tools headlessly, return JSON, inspect schemas, and automate workflows from coding agents, scripts, and CI.

12 functions 9 read 3 write API token auth

Coda CLI Setup

Coda can be configured headlessly with `kosmokrator integrations:configure coda`.

# Install KosmoKrator first if it is not available on PATH.
curl -fsSL https://raw.githubusercontent.com/OpenCompanyApp/kosmokrator/main/install.sh | bash

# Configure and verify this integration.
kosmokrator integrations:configure coda --set api_token="$CODA_API_TOKEN" --enable --read allow --write ask --json
kosmokrator integrations:doctor coda --json
kosmokrator integrations:status --json

Credentials

Authentication type: API token api_token. Configure credentials once, then use the same stored profile from scripts, coding CLIs, Lua code mode, and the MCP gateway.

KeyEnv varTypeRequiredLabel
api_token CODA_API_TOKEN Secret secret yes API Token

Call Coda Headlessly

Use the generic call form when another coding CLI or script needs a stable universal interface.

kosmo integrations:call coda.coda_list_docs '{
  "query": "example_query",
  "isOwner": true,
  "limit": 1
}' --json

Use the provider shortcut form for shorter human-facing commands.

kosmo integrations:coda coda_list_docs '{
  "query": "example_query",
  "isOwner": true,
  "limit": 1
}' --json

Agent Discovery Commands

These commands return structured output for coding agents that need to inspect capabilities before choosing a function.

kosmo integrations:docs coda --json
kosmo integrations:docs coda.coda_list_docs --json
kosmo integrations:schema coda.coda_list_docs --json
kosmo integrations:search "Coda" --json
kosmo integrations:list --json

All CLI Functions

Every function below can be called headlessly. The generic form is stable across all integrations; the provider shortcut is shorter but specific to Coda.

coda.coda_list_docs

Read read

List Coda docs accessible to the authenticated user. Optionally filter by name or ownership.

Parameters
query, isOwner, limit

Generic CLI call

kosmo integrations:call coda.coda_list_docs '{"query":"example_query","isOwner":true,"limit":1}' --json

Provider shortcut

kosmo integrations:coda coda_list_docs '{"query":"example_query","isOwner":true,"limit":1}' --json

coda.coda_get_doc

Read read

Get details of a specific Coda doc by its ID.

Parameters
doc_id

Generic CLI call

kosmo integrations:call coda.coda_get_doc '{"doc_id":"example_doc_id"}' --json

Provider shortcut

kosmo integrations:coda coda_get_doc '{"doc_id":"example_doc_id"}' --json

coda.coda_list_tables

Read read

List tables in a Coda doc. Returns table IDs, names, and display types.

Parameters
doc_id, limit

Generic CLI call

kosmo integrations:call coda.coda_list_tables '{"doc_id":"example_doc_id","limit":1}' --json

Provider shortcut

kosmo integrations:coda coda_list_tables '{"doc_id":"example_doc_id","limit":1}' --json

coda.coda_get_table

Read read

Get details of a specific table in a Coda doc, including its columns and display column.

Parameters
doc_id, table_id

Generic CLI call

kosmo integrations:call coda.coda_get_table '{"doc_id":"example_doc_id","table_id":"example_table_id"}' --json

Provider shortcut

kosmo integrations:coda coda_get_table '{"doc_id":"example_doc_id","table_id":"example_table_id"}' --json

coda.coda_list_rows

Read read

List rows in a Coda table. Use useColumnNames=true to get values keyed by human-readable column names instead of column IDs.

Parameters
doc_id, table_id, limit, useColumnNames

Generic CLI call

kosmo integrations:call coda.coda_list_rows '{"doc_id":"example_doc_id","table_id":"example_table_id","limit":1,"useColumnNames":true}' --json

Provider shortcut

kosmo integrations:coda coda_list_rows '{"doc_id":"example_doc_id","table_id":"example_table_id","limit":1,"useColumnNames":true}' --json

coda.coda_get_row

Read read

Get a single row from a Coda table by its row ID.

Parameters
doc_id, table_id, row_id, useColumnNames

Generic CLI call

kosmo integrations:call coda.coda_get_row '{"doc_id":"example_doc_id","table_id":"example_table_id","row_id":"example_row_id","useColumnNames":true}' --json

Provider shortcut

kosmo integrations:coda coda_get_row '{"doc_id":"example_doc_id","table_id":"example_table_id","row_id":"example_row_id","useColumnNames":true}' --json

coda.coda_insert_rows

Write write

Insert one or more new rows into a Coda table. Each row should have a "cells" array with column/value pairs.

Parameters
doc_id, table_id, rows

Generic CLI call

kosmo integrations:call coda.coda_insert_rows '{"doc_id":"example_doc_id","table_id":"example_table_id","rows":"example_rows"}' --json

Provider shortcut

kosmo integrations:coda coda_insert_rows '{"doc_id":"example_doc_id","table_id":"example_table_id","rows":"example_rows"}' --json

coda.coda_update_row

Write write

Update cells in an existing row in a Coda table. Provide a cells array with column/value pairs to update.

Parameters
doc_id, table_id, row_id, cells

Generic CLI call

kosmo integrations:call coda.coda_update_row '{"doc_id":"example_doc_id","table_id":"example_table_id","row_id":"example_row_id","cells":"example_cells"}' --json

Provider shortcut

kosmo integrations:coda coda_update_row '{"doc_id":"example_doc_id","table_id":"example_table_id","row_id":"example_row_id","cells":"example_cells"}' --json

coda.coda_delete_row

Write write

Delete a row from a Coda table. This action is permanent.

Parameters
doc_id, table_id, row_id

Generic CLI call

kosmo integrations:call coda.coda_delete_row '{"doc_id":"example_doc_id","table_id":"example_table_id","row_id":"example_row_id"}' --json

Provider shortcut

kosmo integrations:coda coda_delete_row '{"doc_id":"example_doc_id","table_id":"example_table_id","row_id":"example_row_id"}' --json

coda.coda_list_columns

Read read

List columns in a Coda table. Useful to discover column names and types before querying or inserting rows.

Parameters
doc_id, table_id, limit

Generic CLI call

kosmo integrations:call coda.coda_list_columns '{"doc_id":"example_doc_id","table_id":"example_table_id","limit":1}' --json

Provider shortcut

kosmo integrations:coda coda_list_columns '{"doc_id":"example_doc_id","table_id":"example_table_id","limit":1}' --json

coda.coda_list_pages

Read read

List pages in a Coda doc. Pages can contain text, tables, and other content.

Parameters
doc_id, limit

Generic CLI call

kosmo integrations:call coda.coda_list_pages '{"doc_id":"example_doc_id","limit":1}' --json

Provider shortcut

kosmo integrations:coda coda_list_pages '{"doc_id":"example_doc_id","limit":1}' --json

coda.coda_get_current_user

Read read

Verify Coda authentication and get the current user's profile information.

Parameters
none

Generic CLI call

kosmo integrations:call coda.coda_get_current_user '{}' --json

Provider shortcut

kosmo integrations:coda coda_get_current_user '{}' --json

Function Schemas

Use these parameter tables when building CLI payloads without calling integrations:schema first.

coda.coda_list_docs

List Coda docs accessible to the authenticated user. Optionally filter by name or ownership.

Operation
Read read
Schema command
kosmo integrations:schema coda.coda_list_docs --json
ParameterTypeRequiredDescription
query string no Search query to filter docs by name.
isOwner boolean no If true, only return docs owned by the user.
limit integer no Maximum number of docs to return (default: 20, max: 100).

coda.coda_get_doc

Get details of a specific Coda doc by its ID.

Operation
Read read
Schema command
kosmo integrations:schema coda.coda_get_doc --json
ParameterTypeRequiredDescription
doc_id string yes The ID of the doc to retrieve.

coda.coda_list_tables

List tables in a Coda doc. Returns table IDs, names, and display types.

Operation
Read read
Schema command
kosmo integrations:schema coda.coda_list_tables --json
ParameterTypeRequiredDescription
doc_id string yes The ID of the doc.
limit integer no Maximum number of tables to return (default: 20, max: 100).

coda.coda_get_table

Get details of a specific table in a Coda doc, including its columns and display column.

Operation
Read read
Schema command
kosmo integrations:schema coda.coda_get_table --json
ParameterTypeRequiredDescription
doc_id string yes The ID of the doc.
table_id string yes The ID or name of the table.

coda.coda_list_rows

List rows in a Coda table. Use useColumnNames=true to get values keyed by human-readable column names instead of column IDs.

Operation
Read read
Schema command
kosmo integrations:schema coda.coda_list_rows --json
ParameterTypeRequiredDescription
doc_id string yes The ID of the doc.
table_id string yes The ID or name of the table.
limit integer no Maximum number of rows to return (default: 20, max: 1000).
useColumnNames boolean no If true, return values keyed by column names instead of column IDs (default: true).

coda.coda_get_row

Get a single row from a Coda table by its row ID.

Operation
Read read
Schema command
kosmo integrations:schema coda.coda_get_row --json
ParameterTypeRequiredDescription
doc_id string yes The ID of the doc.
table_id string yes The ID or name of the table.
row_id string yes The ID of the row to retrieve.
useColumnNames boolean no If true, return values keyed by column names instead of column IDs (default: true).

coda.coda_insert_rows

Insert one or more new rows into a Coda table. Each row should have a "cells" array with column/value pairs.

Operation
Write write
Schema command
kosmo integrations:schema coda.coda_insert_rows --json
ParameterTypeRequiredDescription
doc_id string yes The ID of the doc.
table_id string yes The ID or name of the table.
rows array yes Array of row objects. Each row should be {"cells": [{"column": "col-name-or-id", "value": "the-value"}]}.

coda.coda_update_row

Update cells in an existing row in a Coda table. Provide a cells array with column/value pairs to update.

Operation
Write write
Schema command
kosmo integrations:schema coda.coda_update_row --json
ParameterTypeRequiredDescription
doc_id string yes The ID of the doc.
table_id string yes The ID or name of the table.
row_id string yes The ID of the row to update.
cells array yes Array of cell objects to update, e.g. [{"column": "col-name-or-id", "value": "new-value"}].

coda.coda_delete_row

Delete a row from a Coda table. This action is permanent.

Operation
Write write
Schema command
kosmo integrations:schema coda.coda_delete_row --json
ParameterTypeRequiredDescription
doc_id string yes The ID of the doc.
table_id string yes The ID or name of the table.
row_id string yes The ID of the row to delete.

coda.coda_list_columns

List columns in a Coda table. Useful to discover column names and types before querying or inserting rows.

Operation
Read read
Schema command
kosmo integrations:schema coda.coda_list_columns --json
ParameterTypeRequiredDescription
doc_id string yes The ID of the doc.
table_id string yes The ID or name of the table.
limit integer no Maximum number of columns to return (default: 20, max: 100).

coda.coda_list_pages

List pages in a Coda doc. Pages can contain text, tables, and other content.

Operation
Read read
Schema command
kosmo integrations:schema coda.coda_list_pages --json
ParameterTypeRequiredDescription
doc_id string yes The ID of the doc.
limit integer no Maximum number of pages to return (default: 20, max: 100).

coda.coda_get_current_user

Verify Coda authentication and get the current user's profile information.

Operation
Read read
Schema command
kosmo integrations:schema coda.coda_get_current_user --json
ParameterTypeRequiredDescription
No parameters.

Permissions

Headless calls still follow the integration read/write permission policy. Configure read/write defaults with integrations:configure. Add --force only for trusted automation that should bypass that policy.