This is intended to be used with a client like claude desktop or goose in my case. Ideally, it would be part of a larger set of tools for general, "secretary" type tasks.
There are other (probably better) todoist mcp servers out there, but for some reason they wouldn't work with my client. So here we are. This has a pretty narrow scope as far as functionality goes. You could probably make this fancy, but I wanted to keep the guardrails pretty high: no deleting or marking todos as completed. Even editing tasks was pushing it.
Follow the instructions of your client. If you have a config file like claude desktop, it might look something like this:
{
"mcpServers": {
"SWMM": {
"command": "uv",
"args": [
"run",
"--directory",
"/<path/to/directory>/todoist-mcp",
"server.py"
]
}
}
}