Skip to main content

MCP Server for Todoist — Connect AI agents to your Todoist tasks

Project description

Todoist MCP Server ✅

PyPI License: MIT

Connect AI agents to your Todoist tasks via the Model Context Protocol (MCP).

Create, search, complete, and manage your Todoist tasks — all from Claude, Gemini, Cursor, or any MCP-compatible AI agent.


✨ Features

Category Tools Description
📋 Tasks list_tasks, get_task, create_task, update_task, complete_task, delete_task, reopen_task Full task CRUD with priority, due dates, labels
🔍 Smart Search search_task_by_name, complete_task_by_name, delete_task_by_name, update_task_by_name Find and operate on tasks by name (fuzzy matching)
📁 Projects list_projects, create_project, get_project, delete_project Manage projects
📑 Sections list_sections, create_section, delete_section Organize tasks into sections
🏷️ Labels list_labels, create_label Tag management
💬 Comments list_comments, add_comment Task comments
⚙️ Config set_api_token, get_current_config Runtime token management

24 tools total — the most comprehensive Todoist MCP server available.


🚀 Quick Start

Install

pip install todoist-mcp-helper

Get Your API Token

  1. Go to Todoist Settings → Integrations
  2. Scroll to Developer → copy your API Token

📋 Configuration

All credentials are passed via environment variables — no tokens in code.

Variable Description Required
TODOIST_API_TOKEN Your Todoist API Token

🔧 Platform Configuration

Claude Desktop

{
  "mcpServers": {
    "todoist": {
      "command": "todoist-mcp",
      "env": {
        "TODOIST_API_TOKEN": "your_api_token_here"
      }
    }
  }
}

Gemini CLI

Add to ~/.gemini/settings.json:

{
  "mcpServers": {
    "todoist": {
      "command": "todoist-mcp",
      "env": {
        "TODOIST_API_TOKEN": "your_api_token_here"
      }
    }
  }
}

Cursor

Add to Cursor Settings → MCP:

{
  "todoist": {
    "command": "todoist-mcp",
    "env": {
      "TODOIST_API_TOKEN": "your_api_token_here"
    }
  }
}

💡 Usage Examples

Once configured, ask your AI agent:

  • "Show me my tasks for today"
  • "Create a task: Buy groceries, due tomorrow, priority 2"
  • "Complete the task about groceries"
  • "Search for tasks related to meeting"
  • "List all my projects"
  • "Add a comment to my latest task"

🔐 Runtime Configuration

Change tokens without restarting:

  • set_api_token — Switch Todoist account at runtime
  • get_current_config — Check current configuration

📄 License

MIT License — see LICENSE for details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

todoist_mcp_helper-1.1.0.tar.gz (9.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

todoist_mcp_helper-1.1.0-py3-none-any.whl (9.3 kB view details)

Uploaded Python 3

File details

Details for the file todoist_mcp_helper-1.1.0.tar.gz.

File metadata

  • Download URL: todoist_mcp_helper-1.1.0.tar.gz
  • Upload date:
  • Size: 9.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for todoist_mcp_helper-1.1.0.tar.gz
Algorithm Hash digest
SHA256 e643f9f53ef09ddafa0c09c616e121bbfd65b50108405adeac7a13d7ab354d5d
MD5 53424e8428fbf29bc3ede2e34297b909
BLAKE2b-256 71dc1c39a5d2c6453b49e4ba0b7c1b1b8cae1657f28644879683a17ec092adc7

See more details on using hashes here.

File details

Details for the file todoist_mcp_helper-1.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for todoist_mcp_helper-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 cc4e8758cd1d4ddf33b6d3aaea78fbf1fc58acddda6a2a0ab26aba3ec0a93fb9
MD5 67d6acc46740d459c67a555f3168adf5
BLAKE2b-256 5a95f351a4461964345d9017a64517cfa34c9f297b095cbe32008b022ef5ba16

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page