Wraps the official @doist/todoist-ai package to provide approximately 35 tools for managing tasks, projects, and productivity workflows within the Todoist platform.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Todoist MCP ServerAdd a task to buy groceries tomorrow at 10am"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Todoist MCP Server
Self-hosted Todoist MCP server running on todoist.backman.design. Wraps the official @doist/todoist-ai package (~35 built-in tools) with a custom Express server for adding your own tools on top. Fronted by Caddy for automatic TLS.
Prerequisites
Docker & Docker Compose
A domain with DNS pointed to your server (
todoist.backman.design)
Setup
git clone <repo-url> && cd todoist-mcp
cp .env.example .env # add your Todoist API key
docker compose up -dCaddy automatically provisions TLS certificates via Let's Encrypt. Make sure ports 80 and 443 are open and DNS is pointed before starting.
Connecting clients
Claude Code
claude mcp add --transport http todoist https://todoist.backman.design/mcpClaude Desktop
Add to claude_desktop_config.json:
{
"mcpServers": {
"todoist": {
"type": "http",
"url": "https://todoist.backman.design/mcp"
}
}
}Cursor / VS Code
Add to MCP settings (.cursor/mcp.json or VS Code MCP config):
{
"servers": {
"todoist": {
"type": "http",
"url": "https://todoist.backman.design/mcp"
}
}
}Updating
Rebuild to pull the latest @doist/todoist-ai version:
docker compose build --no-cache && docker compose up -dTo pin a specific version, edit the version in package.json and rebuild.
Troubleshooting
Check logs:
docker compose logs mcp-server
docker compose logs caddyHealth check:
curl https://todoist.backman.design/healthCertificate issues: Caddy handles certs automatically. If provisioning fails, ensure ports 80/443 are reachable and DNS resolves correctly. Check Caddy logs for details.
Architecture
Client (Claude Code, etc.)
│
│ HTTPS
▼
┌─────────────────────┐
│ Caddy (TLS + proxy)│ :443
│ caddy:2-alpine │
└────────┬────────────┘
│ HTTP
▼
┌─────────────────────┐
│ MCP Server │ :3001
│ server.js │
│ ├ @doist/todoist-ai│
│ └ custom tools │
└────────┬────────────┘
│
▼
Todoist APIThis server cannot be installed
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.