← Back to directory
T

Todoist MCP Server

Community
Manage Todoist tasks, projects, comments, and labels via natural language with MCP
Category
Collaboration #29 of 55
Stars
★ 63 Popular
Transport
stdio (local process)
Runtime
Node.js
Credentials
API key / credential required
License
MIT
Last commit
⚠
Tools
36
53FMRS · D

A community-maintained MCP server based on the README, offering full Todoist REST API v2 coverage plus Sync API support across tasks, projects, sections, comments, and labels, with batch operations and natural-language interaction. Documentation is clear and multiple mainstream MCP clients are supported. Best for heavy Todoist users, with attention to its unofficial status and token security.

Strongest · Documentation 14/20 Weakest · Security and permissions 7/20

Reliability
9/20
Security and permissions
7/20
Maintenance
10/20
Documentation
14/20
Setup experience
13/20
Why each score
Reliability 9/20
The README documents a full and coherent tool surface (tasks/projects/sections/comments/labels/utils) and mentions a local dev/debug workflow via `npm run build && npx @modelcontextprotocol/inspector`, suggesting the author exercised the MCP init/tool-list handshake at least manually. However, no CI workflow files or committed automated tests are present in the supplied material, and there is no visible error-handling or dependency-failure strategy to inspect. Per the static calibration rule, reliability cannot exceed 12 without verifiable CI+test evidence, so a 9 reflects a plausible happy path with unverified edge cases and error handling.
Security and permissions 7/20
Credentials are passed via the API_KEY environment variable rather than hardcoded, which is sound practice, and no example contains a real secret. However, Todoist API tokens are inherently account-wide, and the server exposes no scoping or least-privilege options. More importantly, several irreversible destructive tools (delete_tasks, delete_projects, delete_sections, delete_comments, delete_labels, remove_shared_labels) are documented with no mention of confirmation prompts, undo, or safeguards, and there is no disclosure of network egress boundaries. These are real gaps, but nothing in the material indicates malware, covert exfiltration, or fabricated identity/results, so this does not meet the 0-4 red-line bar; it lands in the lower-mid range for 'main risks visible but confirmation/scoping incomplete.'
Maintenance 10/20
The project is MIT licensed, not archived, and published to npm with a version badge, showing basic release and license governance. However, no changelog, release history, recent commit timestamps, or maintainer responsiveness evidence is provided in the material; star count and open-issue count are discovery signals only and are not scored. Lack of verifiable ongoing-maintenance evidence caps this at a middling score.
Documentation 14/20
The README is well organized: it covers obtaining a Todoist API token, provides configuration snippets for multiple clients (Claude Desktop, Claude Code, Cursor, Codex, Gemini CLI), lists the complete tool set by category, gives example prompts, and documents a local dev workflow. It falls short on per-tool parameter/schema detail, error codes, rate limits, cost/quota disclosure, and a dedicated troubleshooting section, and leaves assumptions (token scope, Sync vs REST API differences) unexplained — hence the deduction.
Setup experience 13/20
Installation is straightforward: a single `npx -y todoist-mcp` command plus one environment variable, with explicit config examples for several mainstream clients, keeping steps and complexity low. Since this is a purely static review with no execution logs, CI runs, or integration tests to confirm the flow works end-to-end, the score is capped at 15 per the static calibration rule, landing in the 'clear steps but unverified' range.

Static review · not runListed 2026-09-07

Read the FMRS scoring method →

Fit and risk

What it can accessUses the networkChanges third-party account data

Best for

  • Existing Todoist users on Claude Desktop, Cursor, Codex, or Gemini CLI who want AI-driven task management
  • Users needing batch task operations and filter-language queries

Not for

  • Users who do not use Todoist
  • Users requiring official Todoist support or guarantees (community project, MIT licensed)

Required permissions

  • Requires a Todoist API token with full read/write access to tasks, projects, sections, comments, and labels in that account

Risks and side effects

  • API token leakage could expose task data to viewing, modification, or deletion
  • AI misinterpretation could accidentally delete or alter tasks and projects
  • Third-party community project, not maintained by Todoist

Setup

Before you start

Runtime:Node.js

API_KEY requiredsecret Your Todoist API token, found under Settings → Integrations → "Developer" in your Todoist account.

Obtain your API token from Todoist under Settings → Integrations → Developer, then add to your client's mcpServers config: command npx, args ["-y","todoist-mcp"], and env API_KEY set to your Todoist API token.

claude_desktop_config.json
{"mcpServers":{"todoist":{"command":"npx","args":["-y","todoist-mcp"],"env":{"API_KEY":"your_todoist_api_token"}}}}

Shown for Claude Desktop. Other clients may use a different file or key (VS Code uses "servers") — the configurator below converts it.

.vscode/mcp.json
{
  "servers": {
    "todoist": {
      "command": "npx",
      "args": [
        "-y",
        "todoist-mcp"
      ],
      "env": {
        "API_KEY": "your_todoist_api_token"
      }
    }
  }
}

Goes in your project's .vscode/mcp.json (VS Code uses a "servers" key).

Terminal
claude mcp add todoist -e API_KEY=your_todoist_api_token -- npx -y todoist-mcp

Run it in a terminal; replace any <…> placeholders with your own values first.

Check that it works

Add the todoist server (npx -y todoist-mcp) with API_KEY to your client's mcpServers config and restart it; tools like get_tasks_list and create_tasks should appear in the tool list, and asking "What projects do I have in my Todoist?" should return your projects.

Troubleshooting

  1. Verify the API_KEY environment variable is set to a valid Todoist API token
  2. Check the token in Todoist under Settings → Integrations → Developer
  3. Ensure Node.js is installed and npx is available
  4. Use @modelcontextprotocol/inspector to debug server connectivity

Things to try

Once connected, you can ask your AI assistant things like:

  • What tasks do I have due today?
  • Create a task to review the quarterly report by next Friday
  • Make a new project called 'Home Renovation'
  • Mark my dentist appointment task as complete

Tools 36

get_tasks_list read-only
Get tasks with optional filtering by project, section, label, or IDs
get_tasks_by_filter read-only
Query tasks using Todoist filter language (e.g. today, overdue, P1 | P2)
create_tasks writes
Create new tasks with various attributes
get_tasks read-only
Get specific tasks by ID or name
update_tasks writes
Update existing tasks
close_tasks writes
Mark tasks as complete
reopen_tasks writes
Reopen completed tasks
delete_tasks destructive
Delete tasks
Show 28 more tools
move_tasks writes
Move tasks to a different project or section
get_projects_list read-only
Get all projects
create_projects writes
Create new projects
get_projects read-only
Get specific projects by ID or name
update_projects writes
Update existing projects
delete_projects destructive
Delete projects
get_collaborators read-only
Get all collaborators for a project
move_projects writes
Move projects to a different location or subproject
get_sections_list read-only
Get all sections or filter by project
create_sections writes
Create new sections
get_sections read-only
Get specific sections by ID or name
update_sections writes
Update sections
delete_sections destructive
Delete sections
get_comments_list read-only
Get comments for a project or task
create_comments writes
Create new comments
get_comments read-only
Get specific comments by ID
update_comments writes
Update comments
delete_comments destructive
Delete comments
get_labels_list read-only
Get all personal labels
create_labels writes
Create new personal labels
get_labels read-only
Get personal labels by ID or name
update_labels writes
Update personal labels
delete_labels destructive
Delete personal labels
get_shared_labels read-only
Get all shared labels
rename_shared_labels writes
Rename shared labels
remove_shared_labels destructive
Remove shared labels
utils_get_colors read-only
Get available colors for projects, labels, and filters
projects_list read-only
Prompt returning projects with their sections and params in markdown format

Use cases

Query today's or high-priority tasks conversationally
Create, complete, or reopen tasks through natural language
Manage projects, sections, comments, and labels
Batch-retrieve tasks using Todoist filter language

Supported clients

Claude Desktop
Claude Code
Cursor
Codex
Gemini CLI

Listed from the project's documentation, not tested by this site.

Overview

A community-maintained Model Context Protocol (MCP) server that integrates Claude and other AI assistants with Todoist. It provides a full implementation of the Todoist REST API v2 and supports the Todoist Sync API, enabling natural-language creation, update, closure, reopening, moving, and deletion of tasks, plus management of projects, sections, comments, and personal/shared labels. On startup it supplies your projects and labels to the AI via server instructions, and it supports batch processing and search by name instead of ID.

Similar servers

Source revision 3c113e810c43 Data synced 2026-10-19 Read the FMRS scoring method