MCP TODO Checklist Server

local-only server

The server can only run on the client’s local machine because it depends on local resources.

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.