todoist_get_tasksLABSCO SUMMARY
Deleting a project is one call away — which is why it is switched off.
The default configuration advertises the task tools and withholds project creation, update and deletion, so an agent that misreads an instruction cannot remove a project. That is the right default for a to-do list you actually rely on; the tools still exist if you decide you want them. Everything runs over stdio against your own token, with no intermediate service.
What it is
A stdio server over the Todoist REST API, with a visibility layer on top: which tools are advertised to the client is a configuration decision, so a setup can expose task management while keeping project creation and deletion out of reach.
What you get
- Tasks listed, optionally narrowed by
project_id, a Todoistfilterexpression and alimit—todoist_get_tasks - A task created with content plus optional description, project, priority, due-date string and labels —
todoist_create_task - A task updated by id, and a task closed as complete —
todoist_update_task,todoist_close_task - Projects listed —
todoist_get_projects - Project creation, update and deletion, implemented but kept out of the advertised set by default —
todoist_create_project,todoist_update_project,todoist_delete_project
Requirements
A Todoist API token in TODOIST_API_TOKEN, created in the Todoist App Console. Node.js 18+, and tsx to run the entry script. Install with npm install, build with npm run build inside packages/mcp-server, then launch script/run-mcp-server.ts over stdio from your client's config. Works with Cursor, Claude Desktop or any client that speaks stdio.
Setup effort
Build from source — git clone https://github.com/kentaroh7777/mcp-todoist.git
USE CASES
Capturing tasks in the middle of a conversation
Create a task with content, priority and a due-date string in natural language without switching to the Todoist app.
Reviewing what is due without opening the app
List tasks with a Todoist filter expression and have the assistant summarise what actually needs attention today.
Closing out work as you finish it
Complete tasks by id at the end of a session so the list reflects reality without a separate tidy-up pass.
8 tools
Listed in project docs. Your client may show a different list.
todoist_create_tasktodoist_update_tasktodoist_close_tasktodoist_get_projectstodoist_create_projecttodoist_update_projecttodoist_delete_projectBEFORE YOU INSTALL
What to know first
Tools you get
8 tools named in the project's documentation.
Requires
- tsx on PATH
- Node.js 18+
- TODOIST_API_TOKEN in your environment
Where it runs
The documented client runs the server on your machine.
INSTALLATION
Connect your client
You clone and build this one yourself.
Server setup
git clone https://github.com/kentaroh7777/mcp-todoist.git
cd mcp-todoist
npm install
cd packages/mcp-server
npm run build
cd ../..MCP Clients
Cursor
{
"mcpServers": {
"mcp-todoist": {
"command": "tsx",
"args": [
"/<YOUR_PROJECT_PATH>/script/run-mcp-server.ts"
],
"env": {
"TODOIST_API_TOKEN": "<YOUR_TODOIST_API_TOKEN>"
}
}
}
}/<YOUR_PROJECT_PATH> is the absolute path of your mcp-todoist clone (run pwd inside it), and <YOUR_TODOIST_API_TOKEN> is the API token from the Todoist App Console.