MCP TODO Checklist Server
The MCP TODO Checklist Server is a task management system that allows you to create and manage multiple task lists. With this server, you can:
Create new task lists with titles and optional descriptions
Add tasks with priority levels (low, medium, high), due dates, and tags
List all available checklists
View detailed information about specific lists
Mark tasks as completed
Share lists with other users
Organize and categorize tasks using tags
Store all data persistently on the file system
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., "@MCP TODO Checklist Serveradd 'Buy groceries' to my shopping list with high priority"
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.
MCP TODO Checklist
An MCP server deploying a checklist system for task management on Claude Desktop. The system allows you to create and manage multiple task lists, with support for priorities, due dates and tags.
Features
✅ Creating and managing multiple to-do lists
📌 Priority support (low, medium, high)
📅 Due dates for tasks
🏷️ Tag system for organization
👥 Sharing lists between users
💾 Persistent file system storage
Related MCP server: Todo MCP Server
Requirements
Node.js 18 or higher
NPM 8 or higher
Installation
Method 1: Local Installation (Development)
Clone the repository
cd C:\workspace\mcp
git clone (seu-repositório) mcp-mr-checklist
cd mcp-mr-checklistInstall dependencies and compile
npm install
npm run buildConfigure in
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
}
}
}
}Method 2: Global Installation (Use)
Install the package globally
npm install -g @hevener/server-todo-checklistConfigure in
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
}
}
}
}Commands Available in Claude
Create a new list
/todo_create {
"title": "Minha Lista",
"description": "Descrição opcional da lista"
}Add a task
/todo_add {
"listTitle": "Minha Lista",
"taskTitle": "Nova Tarefa",
"priority": "high",
"dueDate": "2024-01-20",
"tags": ["trabalho", "urgente"]
}List all lists
/todo_listView details of a list
/todo_show {
"listTitle": "Minha Lista"
}Mark task as complete
/todo_complete {
"listTitle": "Minha Lista",
"taskTitle": "Nova Tarefa"
}Project Structure
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 principaisData Structure
Checklist
interface Checklist {
id: string;
title: string;
description?: string;
items: ChecklistItem[];
owner: string;
shared?: string[];
createdAt: Date;
updatedAt: Date;
}Task (ChecklistItem)
interface ChecklistItem {
id: string;
title: string;
description?: string;
completed: boolean;
dueDate?: Date;
priority: 'low' | 'medium' | 'high';
tags: string[];
createdAt: Date;
updatedAt: Date;
}Development Scripts
# 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 startSettings
In the claude_desktop_config.json file, you can configure:
storagePath: Directory where data will be storedcommandTimeout: Maximum command execution time in milliseconds (default: 60000)
Technologies Used
TypeScript
Model Context Protocol SDK
Zod (data validation)
File-based storage system
License
Distributed under the MIT License. See LICENSE for more information.
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.
TDQS
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
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
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.
Nifty's MCP server — exposes tasks, projects, messages, and files as tools for AI agents.
Related MCP Servers
- -licenseNot 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.1
- AlicenseNot gradedqualityCmaintenanceA CRUD todo list server that exposes tools to create, list, and conclude tasks, compatible with any MCP host.14MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/hevener10/mcp-todo-checklist'
If you have feedback or need assistance with the MCP directory API, please join our Discord server