Todoist

Implementação completa da API REST do Todoist para servidor MCP

Documentação

Todoist MCP Server

Uma implementação de servidor Model Context Protocol (MCP) que integra Claude e outros assistentes de IA ao Todoist, permitindo gerenciamento de tarefas em linguagem natural.

Recursos

  • Integração completa com a API do Todoist: Acesso à API REST v2 completa do Todoist e suporte à API Sync do Todoist por meio de linguagem natural
  • Processamento em lote: O cliente pode processar várias tarefas em uma única solicitação
  • Busca por nome: A IA pode buscar tarefas, projetos e rótulos pelo nome em vez do ID
  • Tarefas: Criar, atualizar, concluir, reabrir, mover e excluir tarefas usando linguagem conversacional
  • Projetos: Criar e gerenciar projetos e seções
  • Comentários: Adicionar e gerenciar comentários em tarefas e projetos
  • Rótulos: Criar e gerenciar rótulos pessoais e compartilhados
  • Contexto inteligente: Na inicialização, fornece automaticamente seus projetos e rótulos à IA por meio das instruções do servidor — sem necessidade de chamadas extras de ferramentas
  • Suporte a prompts: Você pode facilmente fornecer informações sobre seus projetos ao cliente

Configuração

Você precisará de um token da API do Todoist para usar este servidor MCP.

Obtendo um token da API do Todoist

  1. Faça login na sua conta do Todoist
  2. Navegue até Configurações → Integrações
  3. Encontre seu token da API em "Desenvolvedor"

Uso

Adicione ao mcpServers na configuração da sua plataforma:

"todoist": {
    "command": "npx",
    "args": ["-y", "todoist-mcp"],
    "env": { "API_KEY": "your_todoist_api_token" }
}
PlataformaConfiguração
Claude Desktop~/Library/Application Support/Claude/claude_desktop_config.json (macOS), %APPDATA%\Claude\ (Windows)
Claude Code.mcp.jsonclaude mcp add --transport stdio --scope project --env API_KEY=token todoist -- npx -y todoist-mcp
Cursor~/.cursor/mcp.json ou .cursor/mcp.json
Codex~/.codex/config.toml ou .codex/config.toml — veja o exemplo abaixo
Gemini CLI~/.gemini/settings.jsongemini mcp add -e API_KEY=token todoist npx -y todoist-mcp

Codex — CLI:

codex mcp add todoist --env API_KEY=your_token -- npx -y todoist-mcp

Ou adicione ao config.toml:

[mcp_servers.todoist]
command = "npx"
args = ["-y", "todoist-mcp"]

[mcp_servers.todoist.env]
API_KEY = "your_todoist_api_token"

Ferramentas Disponíveis

Tarefas

  • get_tasks_list: Obter tarefas com filtragem opcional por projeto, seção, rótulo ou IDs
  • get_tasks_by_filter: Obter tarefas usando a linguagem de filtro do Todoist (ex.: "today", "overdue", "P1 | P2", "#Work & @urgent")
  • create_tasks: Criar novas tarefas com vários atributos
  • get_tasks: Obter tarefas específicas por ID ou nome
  • update_tasks: Atualizar tarefas existentes
  • close_tasks: Marcar tarefas como concluídas
  • reopen_tasks: Reabrir tarefas concluídas
  • delete_tasks: Excluir tarefas
  • move_tasks: Mover tarefas para um projeto ou seção diferente

Projetos

  • get_projects_list: Obter todos os projetos
  • create_projects: Criar novos projetos
  • get_projects: Obter projetos específicos por ID ou nome
  • update_projects: Atualizar projetos existentes
  • delete_projects: Excluir projetos
  • get_collaborators: Obter todos os colaboradores de um projeto
  • move_projects: Mover projetos para um local diferente ou subprojeto

Seções

  • get_sections_list: Obter todas as seções ou filtrar por projeto
  • create_sections: Criar novas seções
  • get_sections: Obter seções específicas por ID ou nome
  • update_sections: Atualizar seções
  • delete_sections: Excluir seções

Comentários

  • get_comments_list: Obter comentários de um projeto ou tarefa
  • create_comments: Criar novos comentários
  • get_comments: Obter comentários específicos por ID
  • update_comments: Atualizar comentários
  • delete_comments: Excluir comentários

Rótulos

  • get_labels_list: Obter todos os rótulos pessoais
  • create_labels: Criar novos rótulos pessoais
  • get_labels: Obter rótulos pessoais por ID ou nome
  • update_labels: Atualizar rótulos pessoais
  • delete_labels: Excluir rótulos pessoais
  • get_shared_labels: Obter todos os rótulos compartilhados
  • rename_shared_labels: Renomear rótulos compartilhados
  • remove_shared_labels: Remover rótulos compartilhados

Utilitários

  • utils_get_colors: Obter cores disponíveis para projetos, rótulos e filtros

Prompts

  • projects_list: Obter lista de projetos com suas seções e parâmetros em formato markdown

Exemplo de Uso

Pergunte ao seu assistente de IA (como Claude) questões como:

"What tasks do I have due today?"
"Create a task to review the quarterly report by next Friday"
"Make a new project called 'Home Renovation'"
"Add a comment to my meeting prep task"
"Show me all my high priority tasks"
"Create a label for 'Urgent' tasks with a red color"
"What projects do I have in my Todoist?"
"Mark my dentist appointment task as complete"

Desenvolvimento

# Install dependencies
npm install

# Build the project and run inspector
npm run build && npx @modelcontextprotocol/inspector -e API_KEY=YOUR_API_KEY_HERE node dist/index.js

Licença

Este projeto é licenciado sob a Licença MIT — veja o arquivo LICENSE para detalhes.

Problemas e Suporte

Se você encontrar algum problema ou precisar de suporte, abra uma issue no repositório do GitHub.