MCP Todo Server

MCP Todo Server

Enables to manage tasks stored locally in a JSON file, including adding, completing, and querying pending tasks, as well as generating daily summaries.

Category
Visit Server

README

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, media o baja).

Cada tarea recibe automáticamente un identificador con el formato:

T-001
T-002
T-003

La 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-001

Al 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
└── .gitignore
Archivo Descripción
.vscode/mcp.json Configuración del servidor MCP para su integración con Visual Studio Code
server.py Contiene la implementación del servidor MCP
tasks.json Almacena localmente las tareas
requirements.txt Contiene las dependencias del proyecto
README.md Documentación del proyecto
.gitignore 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-server

2. Crear el entorno virtual

En Windows:

python -m venv .venv

3. Activar el entorno virtual

En PowerShell:

.\.venv\Scripts\Activate.ps1

4. Instalar las dependencias

python -m pip install -r requirements.txt

Ejecución

Con el entorno virtual activo, ejecutar:

python server.py

El 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 + C

Pruebas con MCP Inspector

El funcionamiento del servidor puede comprobarse mediante MCP Inspector.

Utilizando pnpm:

pnpm dlx @modelcontextprotocol/inspector python server.py

Una 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_summary

Estas 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.json

El 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:

  1. Abrir el proyecto en Visual Studio Code.
  2. Abrir la paleta de comandos con Ctrl + Shift + P.
  3. Ejecutar MCP: List Servers.
  4. Seleccionar mcp-todo-server.
  5. 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_task

Desde 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

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured