MCP TODO Checklist Server
MCP TODO 체크리스트
Claude Desktop에서 작업 관리를 위한 체크리스트 시스템을 구축하는 MCP 서버입니다. 이 시스템을 사용하면 우선순위, 마감일, 태그 지원으로 여러 작업 목록을 만들고 관리할 수 있습니다.
특징
✅ 여러 개의 할 일 목록 만들기 및 관리
📌 우선 지원 (낮음, 중간, 높음)
📅 작업 마감일
🏷️ 조직을 위한 태그 시스템
👥 사용자 간 목록 공유
💾 영구 파일 시스템 저장소
Related MCP server: Todo MCP Server
요구 사항
Node.js 18 이상
NPM 8 이상
설치
방법 1: 로컬 설치(개발)
저장소를 복제합니다
지엑스피1
종속성을 설치하고 컴파일합니다.
npm install
npm run buildclaude_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
}
}
}
}방법 2: 글로벌 설치(사용)
패키지를 전역적으로 설치합니다.
npm install -g @hevener/server-todo-checklistclaude_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
}
}
}
}Claude에서 사용 가능한 명령
새 목록을 만듭니다
/todo_create {
"title": "Minha Lista",
"description": "Descrição opcional da lista"
}작업 추가
/todo_add {
"listTitle": "Minha Lista",
"taskTitle": "Nova Tarefa",
"priority": "high",
"dueDate": "2024-01-20",
"tags": ["trabalho", "urgente"]
}모든 목록을 나열합니다
/todo_list목록의 세부 정보 보기
/todo_show {
"listTitle": "Minha Lista"
}작업을 완료로 표시
/todo_complete {
"listTitle": "Minha Lista",
"taskTitle": "Nova Tarefa"
}프로젝트 구조
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데이터 구조
체크리스트
interface Checklist {
id: string;
title: string;
description?: string;
items: ChecklistItem[];
owner: string;
shared?: string[];
createdAt: Date;
updatedAt: Date;
}작업(체크리스트 항목)
interface ChecklistItem {
id: string;
title: string;
description?: string;
completed: boolean;
dueDate?: Date;
priority: 'low' | 'medium' | 'high';
tags: string[];
createdAt: Date;
updatedAt: Date;
}개발 스크립트
# 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설정
claude_desktop_config.json 파일에서 다음을 구성할 수 있습니다.
storagePath: 데이터가 저장될 디렉토리commandTimeout: 최대 명령 실행 시간(밀리초) (기본값: 60000)
사용된 기술
타입스크립트
모델 컨텍스트 프로토콜 SDK
Zod(데이터 검증)
파일 기반 저장 시스템
특허
MIT 라이선스에 따라 배포됩니다. 자세한 내용은 LICENSE 참조하세요.
Available Tools
5 toolstodo_addC
Adiciona uma nova tarefa à lista
| Name | Required | Description | Default |
|---|---|---|---|
| listTitle | Yes | Título da lista | |
| taskTitle | Yes | Título da tarefa | |
| priority | No | Prioridade da tarefa | |
| dueDate | No | Data de vencimento (YYYY-MM-DD) | |
| tags | No | Tags da tarefa |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden for behavioral disclosure. While 'Adiciona' implies a write/mutation operation, the description doesn't disclose any behavioral traits like whether this requires specific permissions, what happens on duplicate tasks, whether the operation is idempotent, or what the response looks like. For a mutation tool with zero annotation coverage, this is a significant gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence in Portuguese that directly states the tool's purpose without any wasted words. It's appropriately sized and front-loaded with the core functionality.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutation tool with 5 parameters, no annotations, and no output schema, the description is incomplete. It doesn't explain what happens after adding a task, what the return value might be, or any error conditions. The description alone doesn't provide enough context for an agent to understand the full implications of using this tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description coverage is 100%, with all 5 parameters well-documented in the schema itself. The description adds no parameter information beyond what's already in the schema, so it doesn't enhance parameter understanding. With high schema coverage, the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Adiciona' - adds) and resource ('uma nova tarefa à lista' - a new task to the list), providing a specific verb+resource combination. However, it doesn't distinguish this tool from its sibling 'todo_create', which appears to serve a similar purpose based on naming, leaving some ambiguity about differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives like 'todo_create' or 'todo_list'. There's no mention of prerequisites, constraints, or appropriate contexts for this specific add operation versus other todo-related tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
todo_completeC
Marca uma tarefa como concluída
| Name | Required | Description | Default |
|---|---|---|---|
| listTitle | Yes | Título da lista | |
| taskTitle | Yes | Título da tarefa |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It states the tool marks a task as completed, implying a mutation, but doesn't address permissions, side effects (e.g., if completion is reversible), error handling, or response format. This is inadequate for a mutation tool with zero annotation coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence in Portuguese ('Marca uma tarefa como concluída') that directly states the tool's purpose with zero waste. It's appropriately sized and front-loaded, making it easy for an agent to parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given this is a mutation tool with no annotations and no output schema, the description is incomplete. It lacks information on behavioral traits (e.g., what happens on success/failure), return values, or error conditions, which are critical for an agent to use it correctly in context with siblings.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description coverage is 100%, with both parameters (listTitle and taskTitle) documented in the schema. The description doesn't add any meaning beyond what the schema provides (e.g., it doesn't explain how to identify the task or list). Baseline 3 is appropriate when the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Marca uma tarefa como concluída' clearly states the action (marks as completed) and the resource (a task). It's specific about what the tool does, though it doesn't explicitly differentiate from sibling tools like todo_add or todo_create, which would require a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., the task must exist), exclusions, or comparisons to siblings like todo_list or todo_show, leaving the agent without contextual usage information.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
todo_createC
Cria uma nova lista de tarefas
| Name | Required | Description | Default |
|---|---|---|---|
| title | Yes | Título da lista | |
| description | No | Descrição da lista (opcional) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool creates a new task list, implying a write operation, but lacks details on permissions required, whether creation is idempotent, error handling (e.g., if a list with the same title exists), or response format (since no output schema exists). For a mutation tool with zero annotation coverage, this is a significant gap in transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence: 'Cria uma nova lista de tarefas.' It's front-loaded with the core action and resource, with no wasted words or redundant information. This makes it easy to parse quickly, though its brevity contributes to gaps in other dimensions like guidelines and transparency.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (a write operation with no annotations and no output schema), the description is incomplete. It doesn't address behavioral aspects like authentication needs, error conditions, or what happens on success (e.g., returns a list ID). With siblings like 'todo_list' and 'todo_show', more context on how this tool fits into the workflow is missing, leaving users under-informed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description doesn't add any parameter-specific information beyond what the input schema provides. The schema has 100% description coverage, with clear docs for 'title' and 'description', so the baseline is 3. The description doesn't explain parameter interactions (e.g., how title uniqueness is handled) or provide examples, but it doesn't need to compensate for schema gaps either.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Cria uma nova lista de tarefas' (Creates a new task list). It specifies the verb 'cria' (creates) and the resource 'lista de tarefas' (task list), making the action and target explicit. However, it doesn't differentiate from sibling tools like 'todo_add' (which likely adds items to an existing list) or 'todo_list' (which likely lists existing lists), leaving some ambiguity about when to choose this tool over others.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., whether authentication is needed), exclusions (e.g., cannot create duplicate lists), or comparisons to siblings like 'todo_add' (for adding tasks) or 'todo_list' (for viewing lists). Without such context, users must infer usage from the tool name alone, which is insufficient for optimal selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
todo_listC
Lista todas as listas de tarefas
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It mentions listing but doesn't disclose behavioral traits such as pagination, sorting, authentication needs, rate limits, or what happens if no lists exist. For a tool with zero annotation coverage, this is a significant gap in transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence in Portuguese ('Lista todas as listas de tarefas'), which is appropriately sized and front-loaded. There's no wasted text, though it could be slightly more informative without losing conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (0 parameters, no output schema, no annotations), the description is incomplete. It lacks context on return values, error handling, or how it interacts with sibling tools, making it inadequate for full agent understanding despite the low complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has 0 parameters, and schema description coverage is 100%, so no parameter information is needed. The description doesn't add param semantics, but with no parameters, a baseline of 4 is appropriate as it doesn't need to compensate for gaps.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Lista todas as listas de tarefas' (Lists all task lists) states a clear verb ('Lista') and resource ('listas de tarefas'), but it's vague about scope and doesn't differentiate from sibling tools like 'todo_show'. It provides a basic purpose but lacks specificity about what 'all' entails (e.g., user-specific vs. global).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives like 'todo_show' or 'todo_create'. The description implies a listing function but doesn't specify contexts, prerequisites, or exclusions, leaving the agent without usage direction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
todo_showC
Mostra os detalhes de uma lista específica
| Name | Required | Description | Default |
|---|---|---|---|
| listTitle | Yes | Título da lista |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool shows details, implying a read-only operation, but doesn't confirm if it's safe (non-destructive), specify authentication needs, rate limits, or error handling (e.g., what happens if the list doesn't exist). For a tool with zero annotation coverage, this is a significant gap in transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that directly states the purpose without unnecessary words. It's appropriately sized for a simple tool, though it could be slightly more front-loaded by including key details upfront. There's no wasted text, earning a high score for conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (1 parameter, no output schema, no annotations), the description is incomplete. It doesn't explain what 'detalhes' includes in the output, potential errors, or behavioral traits. While the schema covers the parameter, the lack of output schema means the description should ideally hint at return values, but it doesn't, leaving gaps for the agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage, with the parameter 'listTitle' documented as 'Título da lista'. The description doesn't add any meaning beyond this, such as format examples or constraints. Since the schema does the heavy lifting, the baseline score of 3 is appropriate, as the description doesn't compensate but also doesn't detract.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Mostra os detalhes de uma lista específica' clearly states the verb ('Mostra' - shows) and resource ('detalhes de uma lista específica' - details of a specific list), making the purpose understandable. It distinguishes from siblings like todo_add (adds items), todo_complete (marks items as done), todo_create (creates lists), and todo_list (lists all lists) by focusing on showing details of a single list. However, it doesn't specify what 'detalhes' includes (e.g., items, metadata), which prevents a perfect score.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., that the list must exist), exclusions (e.g., not for editing), or comparisons to siblings like todo_list (which lists all lists) or todo_create (which creates new lists). This lack of contextual guidance leaves the agent to infer usage from the purpose alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
5 tool updates
- First observed
todo_add - First observed
todo_complete - First observed
todo_create - First observed
todo_list - First observed
todo_show
TDQS
Scored across 5 tools
The tools have clear purposes but some overlap exists, particularly between 'todo_add' (add a task to a list) and 'todo_create' (create a new task list), which could cause confusion if an agent needs to distinguish between adding tasks and creating lists. Descriptions help clarify, but the boundary is not perfectly distinct.
All tool names follow a consistent 'todo_' prefix with a descriptive verb (add, complete, create, list, show), using snake_case uniformly. This predictable pattern makes it easy for agents to understand and navigate the toolset.
With 5 tools, this server is well-scoped for a TODO checklist domain, covering core operations like creating lists, adding tasks, marking completion, and viewing details. Each tool earns its place without feeling excessive or insufficient.
The toolset covers basic CRUD operations but has notable gaps, such as missing update and delete functions for tasks or lists (e.g., no 'todo_update' or 'todo_delete'). Agents can work around this by using existing tools, but it limits full lifecycle management.
Maintenance
Related MCP Connectors
Zoom Tasks server for creating, updating, assigning, and synchronizing task workflows.
Local-first task manager: create, edit, and complete tasks, projects, and checklists via MCP.
Reusable checklists and dated runs of them: pass, fail, not applicable, and a sign-off.
Related MCP Servers
- FlicenseNot gradedqualityNot gradedmaintenanceEnhanced TickTick task management server that provides rich functionality including task assignment, section management, comments, and batch operations with significantly improved performance through checkpoint sync.-
- FlicenseNot gradedqualityDmaintenanceA Model Context Protocol server for managing todo lists and items with advanced features including task assignment, priorities, recurrence, filtering, and webhook notifications.1-
- FlicenseNot gradedqualityCmaintenanceMCP server for task/ticket management with dependency tracking, supporting CRUD operations, status management, project filtering, and automatic data migrations.27 npm1-
- AlicenseNot gradedqualityDmaintenanceA CRUD todo list server that exposes tools to create, list, and conclude tasks, compatible with any MCP host.6 npmMIT