Provides comprehensive task management through Todoist, enabling the creation, organization, and tracking of tasks, projects, sections, and labels, along with productivity statistics and natural language task entry.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Todoist MCP ServerAdd a task to review the design doc tomorrow morning"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Todoist MCP Server
An MCP (Model Context Protocol) server that provides comprehensive task management through Todoist. This enables AI assistants like Claude to create, manage, and organize tasks using natural language.
Features
Tools (21 total)
Tool | Description |
| List tasks with filtering (by project, priority, due date, etc.) |
| Get detailed task info including comments and subtasks |
| Create tasks with natural language due dates |
| Update task content, due date, priority, labels |
| Mark tasks complete (handles recurring) |
| Reopen completed tasks |
| Permanently delete tasks |
| Move tasks between projects/sections |
| List all projects |
| Create new projects |
| Update project name, color, view style |
| Permanently delete projects |
| List sections within projects |
| Create sections |
| Rename or collapse/expand sections |
| Move sections between projects |
| Permanently delete sections |
| List all labels |
| Create new labels |
| Update label name, color, order |
| Permanently delete labels |
| Add comments to tasks |
| Get completion statistics |
| Natural language task entry |
Resources
Resource | Description |
| Today's tasks including overdue |
| Tasks due in the next 7 days |
| All overdue tasks |
| Project overview with task counts |
| Labels and usage counts |
Prompts
Prompt | Description |
| Morning planning workflow |
| GTD-style weekly review |
| Rapid multi-task capture |
| Break large tasks into subtasks |
Setup
1. Get Your Todoist API Token
Go to https://todoist.com/app/settings/integrations/developer
Scroll to "API token"
Copy your token
2. Install Dependencies
3. Build
4. Add to Claude Code
Or add manually to your Claude Code configuration:
5. Verify Connection
In Claude Code, type /mcp to check the server is connected.
Usage Examples
Create a Task
The AI will use create_task with natural language due date parsing.
View Today's Tasks
Uses the todoist://today resource or list_tasks with dueToday: true.
Daily Planning
Invokes the daily_planning prompt for a guided planning session.
Quick Capture
Uses quick_add or create_task for natural language entry.
Initialize GTD Structure (One-Time Setup)
Run the setup script to create a GTD-inspired structure:
This creates:
Projects: Work, Personal (with sub-projects), Recurring, Someday/Maybe, Reference
Labels: Context (@computer, @phone), Energy (@high-energy), Time (@5min, @deep-work), Status (@waiting-for)
Natural Language Due Dates
Todoist supports flexible date parsing:
Input | Result |
| Today |
| Tomorrow |
| Tomorrow at 2:00 PM |
| Next Monday |
| 3 days from now |
| January 15 |
| Daily recurring |
| Weekly on Monday at 9 AM |
| Monday through Friday |
Priority Mapping
API Value | Display | Color |
| P1 (highest) | Red |
| P2 | Orange |
| P3 | Yellow |
| P4 (default) | None |
Rate Limiting
The server implements rate limiting to stay within Todoist's API limits:
Limit: 450 requests per 15 minutes
Caching: Projects and labels are cached for 5 minutes
Development
Run in Development Mode
This runs TypeScript in watch mode.
Test with MCP Inspector
Opens the MCP Inspector for testing tools and resources.
Project Structure
Troubleshooting
"TODOIST_API_TOKEN environment variable is required"
Make sure you've set the token in your MCP configuration:
Rate Limit Errors
The server automatically handles rate limiting, but if you hit limits:
Wait 15 minutes for the window to reset
Check
get_productivity_statsto see current rate limit usage
Tasks Not Appearing
Verify your API token is correct
Check that tasks aren't filtered out (completed, different project, etc.)
Use
list_taskswithout filters to see all tasks
Quick Add Project Assignment
The quick_add tool uses Todoist's natural language parser, which may not always parse project names with spaces correctly. For example, "Task #My Project" might not assign to the "My Project" project.
Workaround: Use create_task with explicit projectId for reliable project assignment, or use project names without spaces.
License
MIT