trackmcp
Back to directory

MCP Server for Coda

33 stars TypeScriptServers & Infrastructure Updated Oct 18, 2025

Documentation

Coda MCP Server

This project implements a Model Context Protocol (MCP) server that acts as a bridge to interact with the Coda API. It allows an MCP client (like an AI assistant) to perform actions on Coda pages, such as listing, creating, reading, updating, duplicating, and renaming.

> [!NOTE]

> This MCP server is not developed or maintained by Coda; it's a community-built project.

Features

The server exposes the following tools to the MCP client:

  • `coda_list_documents`: Lists all documents available to the user.
  • `coda_list_pages`: Lists all pages within the configured Coda document with pagination support.
  • `coda_create_page`: Creates a new page in the document, optionally under a specified parent page (creating a subpage) and populating it with initial markdown content.
  • `coda_get_page_content`: Retrieves the content of a specified page (by ID or name) as markdown.
  • `coda_replace_page_content`: Replaces the content of a specified page with new markdown content.
  • `coda_append_page_content`: Appends new markdown content to the end of a specified page.
  • `coda_duplicate_page`: Creates a copy of an existing page with a new name.
  • `coda_rename_page`: Renames an existing page.
  • `coda_peek_page`: Peek into the beginning of a page and return a limited number of lines.
  • `coda_resolve_link`: Resolve metadata given a browser link to a Coda object.
  • `coda_list_tables`: List tables in a document.
  • `coda_list_columns`: List columns in a table.
  • `coda_list_rows`: List rows in a table with optional filtering and sorting.
  • `coda_get_row`: Get a single row from a table.
  • `coda_upsert_rows`: Insert or upsert rows into a table.
  • `coda_update_row`: Update a single row in a table.
  • `coda_delete_row`: Delete a single row from a table.
  • `coda_delete_rows`: Delete multiple rows from a table.
  • `coda_push_button`: Push a button column on a row in a table.

Usage

Add the MCP server to Cursor/Claude Desktop/etc. like so:

json
{
  "mcpServers": {
    "coda": {
      "command": "npx",
      "args": ["-y", "coda-mcp@latest"],
      "env": {
        "API_KEY": "..."
      }
    }
  }
}

Required environment variables:

  • `API_KEY`: Your Coda API key. You can generate one from your Coda account settings.

This MCP server is also available with Docker, like so:

json
{
  "mcpServers": {
    "coda": {
      "command": "docker",
      "args": ["run", "-i", "--rm", "-e", "API_KEY", "reaperberri/coda-mcp:latest"],
      "env": {
        "API_KEY": "..."
      }
    }
  }
}

Local Setup

1. Prerequisites:

    2. Clone the repository:

    bash
    git clone 
        cd coda-mcp

    3. Install dependencies:

    bash
    pnpm install

    4. Build the project:

    bash
    pnpm build

    This compiles the TypeScript code to JavaScript in the `dist/` directory.

    Running the Server

    The MCP server communicates over standard input/output (stdio). To run it, set the environment variables and run the compiled JavaScript file - `dist/index.js`.

    Frequently asked questions

    What is coda-mcp?

    coda-mcp is MCP Server for Coda

    How do I install coda-mcp?

    Open the GitHub repository and follow its README. Most MCP servers are added to your client's MCP config, then called by your agent.

    Is coda-mcp open source?

    Yes — it is hosted on GitHub at https://github.com/orellazri/coda-mcp and has 33 stars.

    Related MCP tools

    Run your own MCP server? See who uses it and what to fix.

    Measure it with TrackMCP