home / mcp / todoist mcp server extended mcp server

Todoist MCP Server Extended MCP Server

Todoist MCP Server Extended - Enabling natural language management of todoist via Claude, MCP and todoist REST APIv2. Featuring LLM optimized Tools including batch operations and robust error handling.

Installation
Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "chrusic-todoist-mcp-server-extended": {
      "command": "npx",
      "args": [
        "-y",
        "@chrusic/todoist-mcp-server-extended"
      ],
      "env": {
        "TODOIST_API_TOKEN": "PASTE-YOUR-TODOIST_API_TOKEN-HERE"
      }
    }
  }
}

You can use the Todoist MCP Server Extended to control Todoist tasks, projects, sections, and labels through natural language with an MCP-compatible client like Claude. It translates everyday language into Todoist actions, enabling fast task management, smart search, and batch operations from your preferred MCP workflow.

How to use

To use this MCP server, run it from your MCP client (for example Claude Desktop) and connect via the MCP mechanism the client provides. You will interact with Todoist through natural language prompts, and the server will translate those prompts into Todoist actions such as creating tasks, assigning them to projects or sections, labeling tasks, updating due dates, and marking items complete. Typical usage patterns include asking the agent to list today’s tasks, create a new task in a specific project and section, move a task to another section, or filter tasks by label and due date.

You can perform common operations like: creating tasks, updating tasks, completing tasks, deleting tasks, managing labels and projects, organizing sections, and performing smart searches with partial name matches. The approach is designed to be compatible with Claude or any MCP-capable LLM, enabling workflows that feel natural and efficient for everyday task management.

Example prompts you can try include asking Claude to: show all tasks for today, create a task in a given project and section, add a label to a task, move a task to a different section, or generate task recommendations based on your current list.

How to install

Prerequisites: you need Node.js and npm installed on your system. You will also configure your MCP client with an API token for Todoist.

# Install via Smithery (for Claude Desktop)
npx -y @smithery/cli install @Chrusic/todoist-mcp-server-extended --client claude
```

```
# Install via npm (global install)
npm install -g @chrusic/todoist-mcp-server-extended
```

```
# If you intend to run locally via your own MCP setup, ensure you have npx/npm available as shown above.

Additional configuration and usage notes

Configure the Todoist API token in your client configuration so the MCP server can authenticate with Todoist and perform actions on your behalf.

In Claude Desktop (or your MCP client), add a server entry that points to the MCP server you’re using and provide the necessary environment variable for the API token. The example below shows how the server is declared within the Claude client configuration. You should replace YOUR_API_TOKEN with your actual Todoist API token.

"todoist": {
  "command": "npx",
  "args": ["-y", "@chrusic/todoist-mcp-server-extended"],
  "env": {
      "TODOIST_API_TOKEN": "YOUR_API_TOKEN_HERE"
  }
}
```

```json
{
  "mcpServers": {
    "todoist": {
      "command": "npx",
      "args": ["-y", "@chrusic/todoist-mcp-server-extended"],
      "env": {
        "TODOIST_API_TOKEN": "YOUR_API_TOKEN_HERE"
      }
    }
  }
}

Available tools

todoist_get_tasks

Retrieve a list of tasks, with optional filters such as due date, project, section, and labels.

todoist_create_task

Create a new task with a title, optional description, due date, priority, and assignment to a project/section/labels.

todoist_update_task

Update task fields such as title, description, due date, priority, and project/section/labels.

todoist_complete_task

Mark a task as complete.

todoist_delete_task

Remove a task from Todoist.

todoist_add_label

Create or assign a label to a task.

todoist_show_by_label

Find tasks that have a specific label, optionally within a project.

todoist_move_task

Move a task to a different project or section.

todoist_subtask_operations

Create and manage subtasks for a parent task.