- Home
- MCP servers
- Todoist
Todoist
- python
7
GitHub Stars
python
Language
4 months ago
First Indexed
3 weeks ago
Catalog Refreshed
Documentation & install
Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.
Installation
Add the following to your MCP client configuration file.
Configuration
View docs{
"mcpServers": {
"mikemc-todoist-mcp-server": {
"command": "uvx",
"args": [
"--from",
"git+https://github.com/mikemc/todoist-mcp-server",
"todoist-mcp"
],
"env": {
"TODOIST_API_TOKEN": "YOUR_API_TOKEN"
}
}
}
}You run a Todoist MCP Server to expose Todoist data and actions through a local MCP client. This Python-based server lets you access projects, sections, tasks, and comments from Todoist using a structured MCP interface, enabling powerful task management workflows without leaving your preferred client.
How to use
Start by ensuring your MCP runtime is available and your Todoist API token is ready. Once the server is running, you can connect an MCP client to the Todoist MCP Server and issue operations such as listing projects, adding tasks, updating tasks, or commenting on items. The server exposes a set of endpoints corresponding to Todoist concepts like Projects, Sections, Tasks, and Comments, allowing you to create, read, update, or delete items through your MCP client.
Typical usage pattern includes starting the MCP server with the provided command, then using your MCP client to call tools such as fetching a list of projects, creating a new task inside a project, updating a task’s details, or adding comments. Make sure to supply your API token as an environment variable to authenticate with Todoist during operations.
How to install
Prerequisites you need to meet before running Todoist MCP Server: a Python 3.10+ runtime, the UV package manager, and a Todoist API token.
Obtain a Todoist API token by logging in and navigating to Settings → Integrations, then copying the token shown under Developer.
Configure the MCP server in your Claude Desktop setup by adding a Todoist MCP server entry with the following snippet. Replace your_todoist_api_token with your actual API token.
{
"mcpServers": {
"todoist": {
"command": "uvx",
"args": [
"--from",
"git+https://github.com/mikemc/todoist-mcp-server",
"todoist-mcp"
],
"env": {
"TODOIST_API_TOKEN": "your_todoist_api_token"
}
}
}
}
If you prefer running from a local copy, use the absolute path to the local source in the same configuration pattern.
{
"mcpServers": {
"todoist": {
"command": "uvx",
"args": [
"--from",
"/absolute/path/to/todoist-mcp-server",
"todoist-mcp"
],
"env": {
"TODOIST_API_TOKEN": "your_todoist_api_token"
}
}
}
}
If you are using Goose to configure an LLM-backed local environment, you can add a Todoist extension following the Goose prompts so the MCP server can be asked questions about your Todoist data.
{
"mcpServers": {
"todoist": {
"command": "uvx",
"args": [
"--from",
"git+https://github.com/mikemc/todoist-mcp-server",
"todoist-mcp"
],
"env": {
"TODOIST_API_TOKEN": "your_todoist_api_token"
}
}
}
}
Once configured, you can run the Goose tool to start the session and begin asking questions about your Todoist data or performing changes.
Additional notes
Security: protect your Todoist API token and ensure it is provided to the MCP server only in secure environments. The token enables access to your Todoist data and actions.
Notes on environment: the examples show the token provided as an environment variable named TODOIST_API_TOKEN. If you add other environment variables for your setup, include them in the server configuration as shown.
Available operations include fetching and manipulating projects, sections, tasks, and comments. You can list, create, update, complete/uncomplete, move, or delete these Todoist entities using the Todoist MCP Server.
Available tools
todoist_get_projects
Retrieve all Todoist projects for your workspace.
todoist_get_project
Fetch details for a single project by ID.
todoist_add_project
Create a new Todoist project.
todoist_update_project
Update properties of an existing project.
todoist_delete_project
Delete a Todoist project.
todoist_get_sections
List all sections within a specific project.
todoist_get_section
Fetch details of a single section.
todoist_add_section
Create a new section in a project.
todoist_update_section
Update an existing section.
todoist_delete_section
Delete a section.
todoist_get_task
Get details for a single task.
todoist_get_tasks
List tasks with optional filters.
todoist_filter_tasks
Filter tasks according to criteria.
todoist_add_task
Create a new task.
todoist_update_task
Update an existing task.
todoist_complete_task
Mark a task as completed.
todoist_uncomplete_task
Mark a task as incomplete.
todoist_move_task
Move a task to another project or section.
todoist_delete_task
Delete a task.
todoist_get_comment
Fetch a specific comment on a task.
todoist_get_comments
List all comments on a task.
todoist_add_comment
Add a new comment to a task.
todoist_update_comment
Update an existing comment.
todoist_delete_comment
Delete a comment.