MCP TODO Checklist Server

MCP TODO Checklist

Um servidor MCP que implementa um sistema de checklist para gerenciamento de tarefas no Claude Desktop. O sistema permite criar e gerenciar múltiplas listas de tarefas, com suporte a prioridades, datas de vencimento e tags.

Funcionalidades

  • ✅ Criação e gerenciamento de múltiplas listas de tarefas
  • 📌 Suporte a prioridades (baixa, média, alta)
  • 📅 Datas de vencimento para tarefas
  • 🏷️ Sistema de tags para organização
  • 👥 Compartilhamento de listas entre usuários
  • 💾 Armazenamento persistente em sistema de arquivos

Requisitos

  • Node.js 18 ou superior
  • NPM 8 ou superior

Instalação

Método 1: Instalação Local (Desenvolvimento)

  1. Clone o repositório
cd C:\workspace\mcp git clone (seu-repositório) mcp-mr-checklist cd mcp-mr-checklist
  1. Instale as dependências e compile
npm install npm run build
  1. Configure no claude_desktop_config.json:
{ "servers": { "todo-checklist": { "type": "command", "command": "node dist/index.js", "cwd": "C:\\workspace\\mcp\\mcp-mr-checklist", "config": { "storagePath": "./data", "commandTimeout": 60000 } } } }

Método 2: Instalação Global (Uso)

  1. Instale o pacote globalmente
npm install -g @hevener/server-todo-checklist
  1. Configure no claude_desktop_config.json:
{ "servers": { "todo-checklist": { "type": "command", "command": "mcp-server-todo-checklist", "config": { "storagePath": "C:\\Users\\SEU_USUARIO\\AppData\\Local\\claude-todo-checklist", "commandTimeout": 60000 } } } }

Comandos Disponíveis no Claude

Criar uma nova lista

/todo_create { "title": "Minha Lista", "description": "Descrição opcional da lista" }

Adicionar uma tarefa

/todo_add { "listTitle": "Minha Lista", "taskTitle": "Nova Tarefa", "priority": "high", "dueDate": "2024-01-20", "tags": ["trabalho", "urgente"] }

Listar todas as listas

/todo_list

Ver detalhes de uma lista

/todo_show { "listTitle": "Minha Lista" }

Marcar tarefa como concluída

/todo_complete { "listTitle": "Minha Lista", "taskTitle": "Nova Tarefa" }

Estrutura do Projeto

src/ ├── index.ts # Ponto de entrada do servidor ├── commands.ts # Definição dos comandos disponíveis ├── service/ │ └── ChecklistService.ts # Lógica de negócio ├── storage/ │ └── index.ts # Implementação do armazenamento └── types/ ├── ChecklistItem.ts # Tipos para itens └── index.ts # Tipos principais

Estrutura de Dados

Lista (Checklist)

interface Checklist { id: string; title: string; description?: string; items: ChecklistItem[]; owner: string; shared?: string[]; createdAt: Date; updatedAt: Date; }

Tarefa (ChecklistItem)

interface ChecklistItem { id: string; title: string; description?: string; completed: boolean; dueDate?: Date; priority: 'low' | 'medium' | 'high'; tags: string[]; createdAt: Date; updatedAt: Date; }

Scripts de Desenvolvimento

# Compilar o projeto npm run build # Executar em modo desenvolvimento npm run dev # Observar alterações e recompilar npm run watch # Iniciar o servidor compilado npm start

Configurações

No arquivo claude_desktop_config.json, você pode configurar:

  • storagePath: Diretório onde os dados serão armazenados
  • commandTimeout: Tempo máximo de execução dos comandos em milissegundos (padrão: 60000)

Tecnologias Utilizadas

  • TypeScript
  • Model Context Protocol SDK
  • Zod (validação de dados)
  • Sistema de armazenamento baseado em arquivos

Licença

Distribuído sob a licença MIT. Veja LICENSE para mais informações.