Labsco
MCP SERVER

Todoist

by Johnxjp

Add, find, update and complete Todoist tasks in conversation — including due dates, priorities, labels and projects.

Project & Task ManagementVerified
Summary
Tasks are fetched with their ids because every write needs one.

The shape of the tool set tells you how to use it: `get_tasks` returns ids, and update, complete and delete all take an id. So the working pattern is find-then-act — describe the task in words, let the listing tool resolve it, then operate on what came back. Dates take a plain YYYY-MM-DD, with deadline kept separate from due date.

What it is

A Python server over the Todoist API, covering task creation, retrieval and management. It handles the authentication and the data shaping so the conversation stays in terms of tasks rather than API payloads.

What you get
  • A task created from its content, optionally with description, due date, priority, project, section and labels — `create_task`
  • Tasks listed with ids and filters for project name or id, task name, priority, labels, overdue status and a limit — `get_tasks`
  • An existing task updated by id: content, description, labels, priority, `due_date` and `deadline_date` — `update_task`
  • A task completed or removed by id — `complete_task`, `delete_task`
Requirements

A Todoist account and its API token in `TODOIST_API_TOKEN`, taken from User Settings → Integrations → Developer. Python 3.12 and uv. Runs straight from the repository with `uvx --from https://github.com/Johnxjp/todoist-mcp-python.git mcp-server-todoist`, so there is nothing to clone first.

Setup effort

One command plus a key — uvx --from https://github.com/Johnxjp/todoist-mcp-python.git mcp-server-todoist, then supply credentials