Interact with the Coda API to manage documents and pages, including creating, reading, updating, and deleting.
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.
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.Add the MCP server to Cursor/Claude Desktop/etc. like so:
{
"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:
{
"mcpServers": {
"coda": {
"command": "docker",
"args": ["run", "-i", "--rm", "-e", "API_KEY", "reaperberri/coda-mcp:latest"],
"env": {
"API_KEY": "..."
}
}
}
}
Prerequisites:
Clone the repository:
git clone <repository-url>
cd coda-mcp
Install dependencies:
pnpm install
Build the project:
pnpm build
This compiles the TypeScript code to JavaScript in the dist/
directory.
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
.
Automate your local browser
Interacting with Obsidian via REST API
Performs basic arithmetic calculations. A TypeScript-based server demonstrating core MCP concepts.
An MCP server that uses Google's Gemini 1.5 Pro to generate concise summaries of various content types.
An advanced MCP server for intelligent conversation context management and session continuity, requiring the Claude Desktop application and a Node.js environment.
An intelligent tutoring server that uses GitHub documentation repositories to provide structured educational prompts and tools.
A TypeScript server for automation and integration, featuring Microsoft OAuth, browser control, and basic utilities.
Provides the current UTC time from multiple verified sources.
MCP server that connects to the whole Microsoft 365 suite (Microsoft Office, Outlook, Excel) using Graph API (including mail, files, calendar)
Interact with your Tmux sessions, windows and pane, execute commands in tmux panes and retrieve result.