MCP Connector

Manage Todoist Tasks with Natural Language

MCP server letting Claude manage Todoist tasks via natural language - create, search, update, complete, and delete using an API token.

Works with claudetodoist

90
Spark score
out of 100
Updated Apr 2025
Version 1.0.0
Models

Add to Favorites

Why it matters

Integrate Claude with Todoist to manage your tasks using conversational speech. Create, update, complete, and delete tasks effortlessly through natural language commands.

Outcomes

What it gets done

01

Create new tasks with details like due dates and priority.

02

Retrieve and filter tasks using natural language queries.

03

Update existing tasks via partial name matching.

04

Complete or delete tasks using conversational commands.

Install

Add it to your toolbox

Run in your project directory:

curl -fsSL https://spark.entire.vc/get/vb-todoist | bash

Capabilities

Tools your agent gets

todoist_create_task

Create new tasks with content, description, due date, and priority attributes.

todoist_get_tasks

Retrieve and filter tasks by due date, priority, project with natural language date filtering.

todoist_update_task

Update existing tasks using natural language search to find tasks by partial name match.

todoist_complete_task

Mark tasks as completed using natural language search to find tasks by partial name match.

todoist_delete_task

Delete tasks using natural language search to find and delete tasks by name.

Overview

Todoist MCP Server

An MCP server that connects Claude to Todoist, letting it create, retrieve, update, complete, and delete tasks using natural language. It exposes five tools covering the full task lifecycle, with filtering by due date, priority, or project. Use when you want Claude to manage a Todoist account conversationally - creating, checking, updating, or completing tasks - instead of using the Todoist app directly.

What it does

This MCP server connects Claude to Todoist, letting Claude create, retrieve, update, complete, and delete Todoist tasks using natural-language instructions instead of the Todoist UI or API calls. It supports rich task details (description, due date, priority level) and flexible filtering (by due date, priority, or project), with natural-language date parsing and clear error feedback for a better user experience.

When to use - and when NOT to

Use it when you want Claude to manage a real Todoist account conversationally - creating tasks with descriptions and due dates ("Create task 'Team Meeting' with description 'Weekly sync' due tomorrow"), listing tasks filtered by due date, priority, or project ("Show high priority tasks due this week"), updating a task found via partial name match ("Update meeting task to be due next Monday"), marking tasks complete ("Mark the documentation task as complete"), or deleting tasks by name ("Delete the PR review task"). It is built for everyday task-management phrasing, not bulk data operations. Requires a Todoist account and a personal API token (found under Settings -> Integrations -> Developer in the Todoist app), plus Node.js/npm to install and configure the server for Claude Desktop.

Capabilities

Five tools: todoist_create_task (content required; description, due date, and priority level 1-4 optional), todoist_get_tasks (filter by due date, priority, or project, with natural-language date filtering and an optional result limit), todoist_update_task (finds a task via partial name match and updates any attribute - content, description, due date, or priority), todoist_complete_task (finds and marks a task complete via partial name match, with a confirmation message), and todoist_delete_task (finds and removes a task by name, with a confirmation message). The update, complete, and delete tools all rely on partial name matching rather than requiring exact task IDs, so Claude can act on a task from a short natural-language description of it.

How to install

Install via Smithery for Claude Desktop:

npx -y @smithery/cli install @abhiz123/todoist-mcp-server --client claude

Or install manually:

npm install -g @abhiz123/todoist-mcp-server

Then register it in claude_desktop_config.json, pointing command: "npx" at -y @abhiz123/todoist-mcp-server and passing your Todoist API token via the TODOIST_API_TOKEN environment variable. To build from source instead: clone the repository, run npm install to install dependencies, then npm run build. The project is MIT-licensed; issues and support requests are filed on the GitHub repository.

Who it's for

Todoist users who want to manage their task list through conversation with Claude rather than switching to the Todoist app or web UI - creating and organizing tasks, checking what's due, updating details, and marking work complete, all via natural language rather than manual clicking through the Todoist interface.

Source README

Todoist MCP Server

smithery badge

An MCP (Model Context Protocol) server implementation that integrates Claude with Todoist, enabling natural language task management. This server allows Claude to interact with your Todoist tasks using everyday language.

Todoist Server MCP server

Features

  • Natural Language Task Management: Create, update, complete, and delete tasks using everyday language
  • Smart Task Search: Find tasks using partial name matches
  • Flexible Filtering: Filter tasks by due date, priority, and other attributes
  • Rich Task Details: Support for descriptions, due dates, and priority levels
  • Intuitive Error Handling: Clear feedback for better user experience

Installation

Installing via Smithery

To install Todoist MCP Server for Claude Desktop automatically via Smithery:

npx -y @smithery/cli install @abhiz123/todoist-mcp-server --client claude

Manual Installation

npm install -g @abhiz123/todoist-mcp-server

Tools

todoist_create_task

Create new tasks with various attributes:

  • Required: content (task title)
  • Optional: description, due date, priority level (1-4)
  • Example: "Create task 'Team Meeting' with description 'Weekly sync' due tomorrow"

todoist_get_tasks

Retrieve and filter tasks:

  • Filter by due date, priority, or project
  • Natural language date filtering
  • Optional result limit
  • Example: "Show high priority tasks due this week"

todoist_update_task

Update existing tasks using natural language search:

  • Find tasks by partial name match
  • Update any task attribute (content, description, due date, priority)
  • Example: "Update meeting task to be due next Monday"

todoist_complete_task

Mark tasks as complete using natural language search:

  • Find tasks by partial name match
  • Confirm completion status
  • Example: "Mark the documentation task as complete"

todoist_delete_task

Remove tasks using natural language search:

  • Find and delete tasks by name
  • Confirmation messages
  • Example: "Delete the PR review task"

Setup

Getting a Todoist API Token

  1. Log in to your Todoist account
  2. Navigate to Settings → Integrations
  3. Find your API token under "Developer"

Usage with Claude Desktop

Add to your claude_desktop_config.json:

{
  "mcpServers": {
    "todoist": {
      "command": "npx",
      "args": ["-y", "@abhiz123/todoist-mcp-server"],
      "env": {
        "TODOIST_API_TOKEN": "your_api_token_here"
      }
    }
  }
}

Example Usage

Creating Tasks

"Create task 'Team Meeting'"
"Add task 'Review PR' due tomorrow at 2pm"
"Create high priority task 'Fix bug' with description 'Critical performance issue'"

Getting Tasks

"Show all my tasks"
"List tasks due today"
"Get high priority tasks"
"Show tasks due this week"

Updating Tasks

"Update documentation task to be due next week"
"Change priority of bug fix task to urgent"
"Add description to team meeting task"

Completing Tasks

"Mark the PR review task as complete"
"Complete the documentation task"

Deleting Tasks

"Delete the PR review task"
"Remove meeting prep task"

Development

Building from source

# Clone the repository
git clone https://github.com/abhiz123/todoist-mcp-server.git

# Navigate to directory
cd todoist-mcp-server

# Install dependencies
npm install

# Build the project
npm run build

Issues and Support

If you encounter any issues or need support, please file an issue on the GitHub repository.

FAQ

Common questions

Discussion

Questions & comments · 0

Sign In Sign in to leave a comment.