todoist mcp python
A Model Context Profile server that enables Claude to interact with Todoist, allowing users to create, retrieve, update, and manage tasks through natural language commands.
A Model Context Profile server that enables Claude to interact with Todoist, allowing users to create, retrieve, update, and manage tasks through natural language commands.
A Model Context Protocol (MCP) server that allows clients like Claude to interact with Todoist, enabling task management capabilities through natural language. The server acts as an intermediary between clients and the Todoist API, handling authentication, data transformation, and command processing. This is a Python version
You can run the server directly from GitHub using UVX:
uvx --from https://github.com/Johnxjp/todoist-mcp-python.git mcp-server-todoist
Then add this configuration to your Claude settings:
{
"mcpServers": {
"todoist-server": {
"command": "uvx",
"args": [
"--from",
"https://github.com/Johnxjp/todoist-mcp-python.git",
"mcp-server-todoist"
],
"env": {
"TODOIST_API_TOKEN": "YOUR_API_TOKEN"
}
}
}
}
If you prefer to clone the repository, use these commands:
git clone [email protected]:Johnxjp/todoist-mcp-python.git
Then add to your Claude config file:
{
"mcpServers": {
"todoist-server": {
"command": "uv",
"args": [
"run",
"--with",
"mcp[cli]",
"--with",
"todoist_api_python",
"mcp",
"run",
"/full/path/to/todoist_server.py"
],
"env": {
"TODOIST_API_TOKEN": "YOUR_API_TOKEN"
}
}
}
}
The server provides the following tools for Claude to use:
Optional:
get_tasks: Get a list of tasks and Ids from Todoist with various filters
Optional:
update_task: Update an existing task by searching for it by name
Optional:
delete_task: Delete a task by searching for it by name
Required: task_id
complete_task: Mark a task as complete by searching for it by name
Here are some examples of how Claude can interact with Todoist through this MCP server:
.env
file or expose your API token