- Home
- MCP servers
- Todoist
Todoist
- python
0
GitHub Stars
python
Language
7 months ago
First Indexed
3 months 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": {
"dan-bailey-todoist-mcp": {
"command": "/full/path/to/venv/bin/todoist-mcp",
"args": [],
"env": {
"TODOIST_API_TOKEN": "YOUR_API_TOKEN"
}
}
}
}You can run a Todoist MCP Server to let Claude and other MCP-compatible assistants interact with your Todoist data. It exposes task and project management via MCP, enabling natural language queries and actions like listing tasks, creating tasks, updating statuses, and managing projects."
How to use
Once the MCP server is up and connected, you can talk to Claude or another MCP client to manage Todoist data with natural language. You can ask to see today’s tasks, create new tasks with due dates, mark items as completed, list all projects, create new projects, and filter tasks by project, section, labels, or natural language terms. You can also query sections within projects to organize work. The server handles all communication with Todoist through its REST API v2 and translates your requests into Todoist actions.
Practical examples you can try after setup include:
- Show me all my tasks for today
- Create a task to review the quarterly report due tomorrow
- Mark task ID 12345 as completed
- List all my projects
- Create a new project called Home Renovation
- Show me all high-priority tasks
How to install
Prerequisites: Python 3.12 or higher, pip, and a Todoist account with an API token.
Step 1: Get Your Todoist API Token. Open Todoist Integrations Settings, locate the API token, and copy it for later use.
Step 2: Install the MCP Server.
git clone <repository-url>
cd todoist-mcp
pip install -e .
If you prefer a virtual environment, follow these steps instead:
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
pip install -e .
Step 3: Create a .env file with your API token. In the todoist-mcp directory, create a file named .env and add your token in the following format.
# Create .env file in the todoist-mcp directory
echo "TODOIST_API_TOKEN=your_api_token_here" > .env
Replace your_api_token_here with the token you copied in Step 1.
Step 4: Configure Claude Desktop to connect to the MCP server.
Option A: Using a virtual environment (Recommended for development). If you installed in a virtual environment, specify the full path to the server executable in Claude Desktop.
{ "mcpServers": { "todoist": { "command": "/full/path/to/venv/bin/todoist-mcp" } } }
To locate the full path, run one of these commands:
which todoist-mcp # macOS/Linux where todoist-mcp # Windows
Option B: Global installation. If you installed globally (without a virtual environment), use this configuration:
{ "mcpServers": { "todoist": { "command": "todoist-mcp" } } }
Important notes for configuration:
- The MCP server will automatically load the TODOIST\_API\_TOKEN from the .env file located in the todoist-mcp directory.
- You do NOT need to specify the token in the Claude Desktop config if you are using a .env file.
- After updating the config, fully restart Claude Desktop (quit the app completely, don’t just close the window)."
Step 5: Verify installation.
1. Restart Claude Desktop completely.
2. Open Claude Desktop.
3. Look for the MCP server indicator and confirm that todoist appears as an available MCP server.
4. Try a simple request like: Show me my Todoist tasks.
## Additional configuration and troubleshooting
Troubleshooting common issues.
"Could not connect to MCP server" or "spawn todoist-mcp ENOENT" — ensure you used the correct full path to the server when using a virtual environment, and verify the command exists by running which or where as appropriate. Also confirm the .env file exists in the todoist-mcp directory and contains the correct token.
"TODOIST\_API\_TOKEN environment variable not set" — ensure the .env file is in the todoist-mcp directory and contains the line TODOIST\_API\_TOKEN=your\_actual\_token, with no typos in the variable name.
"Server keeps disconnecting" — verify your API token is valid in Todoist developer settings, ensure Claude Desktop was fully restarted, and check logs for specific error messages.
## Available Tools (functions exposed by the MCP server)
The server exposes a set of operations to manage Todoist data.
- get\_tasks: List tasks with optional filtering
- get\_task: Get details of a specific task
- create\_task: Create a new task
- update\_task: Update an existing task
- complete\_task: Mark a task as completed
- reopen\_task: Reopen a completed task
- delete\_task: Delete a task
- get\_projects: List all projects
- get\_project: Get details of a specific project
- create\_project: Create a new project
- get\_sections: List sections within projects
## Available tools
### get\_tasks
List tasks with optional filtering to narrow results by project, label, due date, or other criteria.
### get\_task
Retrieve detailed information for a specific task by ID.
### create\_task
Create a new task with specified content, due date, project, and other attributes.
### update\_task
Update fields on an existing task, such as title, due date, or labels.
### complete\_task
Mark a task as completed in Todoist.
### reopen\_task
Reopen a previously completed task.
### delete\_task
Delete a task from Todoist.
### get\_projects
List all Todoist projects you have access to.
### get\_project
Get details for a specific project.
### create\_project
Create a new Todoist project.
### get\_sections
List sections within a project.