Todoist MCP Server
Enables full management of Todoist accounts, including projects, tasks, sections, and labels, through the Model Context Protocol. It provides a comprehensive set of tools for performing CRUD operations and managing user information via the Todoist API.
README
Todoist MCP Server
A Model Context Protocol (MCP) server for integrating with the Todoist API. This server provides tools to manage projects, tasks, comments, sections, labels, and user information.
Features
- Projects: Create, read, update, delete, archive, and unarchive projects
- Tasks: Create, read, update, delete, close, and reopen tasks with support for due dates, priorities, labels, and assignments
- Comments: Create, read, update, and delete comments on tasks and projects
- Sections: Create, read, update, and delete sections within projects
- Labels: Create, read, update, and delete labels
- User: Get user information
Prerequisites
- Node.js 18+ (required for native fetch API support)
- A Todoist API token (get one from Todoist Settings > Integrations)
Installation
- Clone or download this repository
- Install dependencies:
npm install
- Build the project:
npm run build
Note: If you encounter TypeScript errors about fetch or URLSearchParams not being found, this is expected during development. These are built-in to Node.js 18+ and will work correctly at runtime. The errors should resolve after installing dependencies.
Configuration
Set the TODOIST_API_TOKEN environment variable with your Todoist API token:
export TODOIST_API_TOKEN="your-api-token-here"
Or create a .env file (you'll need to install dotenv package if you want to use it):
TODOIST_API_TOKEN=your-api-token-here
Usage
Running the Server
The server communicates via stdio (standard input/output) as per MCP protocol:
npm start
Or for development:
npm run dev
MCP Client Configuration
To use this server with an MCP client (like Claude Desktop, Cursor, etc.), configure it in your MCP settings. Example configuration:
{
"mcpServers": {
"todoist": {
"command": "node",
"args": ["/path/to/todoist-mcp/dist/index.js"],
"env": {
"TODOIST_API_TOKEN": "your-api-token-here"
}
}
}
}
Available Tools
Projects
get_projects- Get all active projects (supports pagination)get_project- Get a specific project by IDcreate_project- Create a new projectupdate_project- Update an existing projectdelete_project- Delete a projectarchive_project- Archive a projectunarchive_project- Unarchive a project
Tasks
get_tasks- Get tasks (supports filtering by project, section, label, and pagination)get_task- Get a specific task by IDcreate_task- Create a new taskupdate_task- Update an existing taskdelete_task- Delete a taskclose_task- Close/complete a taskreopen_task- Reopen a completed task
Comments
get_comments- Get comments (supports filtering by project/task and pagination)create_comment- Create a comment on a task or projectupdate_comment- Update a commentdelete_comment- Delete a comment
Sections
get_sections- Get sections (supports filtering by project and pagination)create_section- Create a new sectionupdate_section- Update a sectiondelete_section- Delete a section
Labels
get_labels- Get all labels (supports pagination)create_label- Create a new labelupdate_label- Update a labeldelete_label- Delete a label
User
get_user- Get current user information
Examples
Creating a Task
{
"name": "create_task",
"arguments": {
"content": "Buy groceries",
"project_id": "1234567890",
"due_string": "tomorrow",
"priority": 2,
"labels": ["shopping", "personal"]
}
}
Getting All Projects
{
"name": "get_projects",
"arguments": {
"limit": 50
}
}
Creating a Project
{
"name": "create_project",
"arguments": {
"name": "My New Project",
"color": "berry_red",
"view_style": "board"
}
}
API Documentation
For detailed API documentation, see the Todoist API v1 Documentation.
License
MIT
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.