MCP Todo Server
MCP Todo Server
Servidor MCP desarrollado en Python para la gestión básica de tareas almacenadas localmente en un archivo JSON.
El proyecto implementa las principales capacidades de Model Context Protocol (MCP): Resources, Tools y Prompts, permitiendo consultar tareas pendientes, registrar nuevas tareas, marcar tareas como completadas y generar una plantilla de resumen diario.
Funcionalidades
El servidor expone las siguientes capacidades:
Resource — tasks://pending
Retorna las tareas que se encuentran pendientes en tasks.json.
Las tareas completadas permanecen almacenadas, pero no son incluidas en el resultado del Resource.
Tool — add_task
Permite registrar una nueva tarea proporcionando:
nombre;
descripción;
prioridad (
alta,mediaobaja).
Cada tarea recibe automáticamente un identificador con el formato:
T-001
T-002
T-003La herramienta también valida que la tarea tenga un nombre y que la prioridad corresponda con uno de los valores permitidos.
Tool — complete_task
Permite marcar una tarea como completada utilizando su identificador.
Por ejemplo:
T-001Al encontrar la tarea, su estado completada cambia de false a true y el cambio se guarda en tasks.json.
Prompt — daily_summary
Genera una plantilla basada en el estado actual de las tareas.
Considera:
total de tareas;
tareas completadas;
tareas pendientes;
tareas pendientes de prioridad alta.
La plantilla permite generar un resumen del progreso general y orientar la atención hacia las actividades de mayor prioridad.
Estructura del proyecto
mcp-todo-server/
│
├── .vscode/
│ └── mcp.json
├── server.py
├── tasks.json
├── requirements.txt
├── README.md
└── .gitignoreArchivo | Descripción |
| Configuración del servidor MCP para su integración con Visual Studio Code |
| Contiene la implementación del servidor MCP |
| Almacena localmente las tareas |
| Contiene las dependencias del proyecto |
| Documentación del proyecto |
| Define los archivos y directorios excluidos de Git |
El directorio .venv corresponde al entorno virtual local y no se incluye en el repositorio.
Modelo de datos
Las tareas se almacenan en formato JSON con la siguiente estructura:
{
"id": "T-001",
"nombre": "Revisar documento del extraclase",
"descripcion": "Comprobar que las capturas y explicaciones estén completas",
"prioridad": "alta",
"completada": true
}El campo id identifica cada tarea, mientras que completada permite determinar si debe aparecer en el Resource de tareas pendientes.
Requisitos
Para ejecutar el proyecto se requiere:
Python 3
pip
Model Context Protocol SDK para Python
Para realizar pruebas con MCP Inspector se utilizó pnpm.
Instalación
1. Clonar el repositorio
git clone https://github.com/lnnth0440/mcp-todo-server.git
cd mcp-todo-server2. Crear el entorno virtual
En Windows:
python -m venv .venv3. Activar el entorno virtual
En PowerShell:
.\.venv\Scripts\Activate.ps14. Instalar las dependencias
python -m pip install -r requirements.txtEjecución
Con el entorno virtual activo, ejecutar:
python server.pyEl servidor utiliza comunicación mediante entrada y salida estándar (stdio) y permanece en ejecución esperando la conexión de un cliente MCP.
Para detenerlo:
Ctrl + CPruebas con MCP Inspector
El funcionamiento del servidor puede comprobarse mediante MCP Inspector.
Utilizando pnpm:
pnpm dlx @modelcontextprotocol/inspector python server.pyUna vez establecida la conexión, MCP Inspector permite descubrir e interactuar con las capacidades expuestas por el servidor:
Resources
└── tasks://pending
Tools
├── add_task
└── complete_task
Prompts
└── daily_summaryEstas pruebas permiten verificar la consulta de tareas, la modificación de tasks.json mediante las Tools y la generación de la plantilla de resumen diario.
Integración con Visual Studio Code
El servidor también fue integrado con Visual Studio Code como cliente MCP compatible.
La configuración se encuentra en:
.vscode/mcp.jsonEl archivo contiene la definición del servidor local:
{
"servers": {
"mcp-todo-server": {
"type": "stdio",
"command": "C:\\Users\\jmuri\\Documents\\mcp-todo-server\\.venv\\Scripts\\python.exe",
"args": [
"C:\\Users\\jmuri\\Documents\\mcp-todo-server\\server.py"
]
}
}
}Para iniciar el servidor desde Visual Studio Code:
Abrir el proyecto en Visual Studio Code.
Abrir la paleta de comandos con
Ctrl + Shift + P.Ejecutar
MCP: List Servers.Seleccionar
mcp-todo-server.Elegir la opción
Start.
Cuando la conexión se establece correctamente, Visual Studio Code muestra el servidor en estado Running y descubre las herramientas:
add_task
complete_taskDesde el chat de Visual Studio Code es posible utilizar lenguaje natural para invocar las herramientas del servidor.
Por ejemplo:
Agrega una nueva tarea llamada "Preparar entrega final",
con la descripción "Revisar README, capturas y documento final"
y prioridad media.Visual Studio Code utiliza la herramienta add_task del servidor MCP y actualiza el archivo tasks.json.
También puede utilizarse complete_task para marcar tareas como completadas y daily_summary para generar un resumen del estado actual de las tareas.
Tecnologías utilizadas
Python
Model Context Protocol (MCP)
JSON
MCP Inspector
Visual Studio Code
Git
GitHub
Autora
Jendry Linneth Murillo Pérez
Programación IV
II Cuatrimestre, 2026
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/lnnth0440/mcp-todo-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server