Skip to main content
Glama

TODO MCP CLI y servidor

Este repositorio contiene una implementación mínima del Protocolo de contexto de modelo (MCP) para una aplicación de lista de tareas pendientes, que incluye:

  • Servidor FastAPI ( server/ ): expone un punto final /tools para el descubrimiento de herramientas y un punto final /rpc para llamadas JSON-RPC para realizar operaciones en tareas.

  • Cliente CLI ( client/cli.py ): una interfaz de línea de comandos de Python que interactúa con un LLM (a través de OpenAI) y el servidor MCP para crear, enumerar y completar tareas mediante llamadas de función.


Características

  • Agregar tareas con título, contenido y fecha de vencimiento opcional

  • Enumerar todas las tareas

  • Marcar tareas como completadas

  • Generación de ID de tareas del lado del servidor

  • Cumplimiento de JSON-RPC 2.0 para la invocación de herramientas


Prerrequisitos

  • Python 3.10+

  • pipenv o venv para entornos virtuales

  • Una clave API de OpenAI


Instalación

  1. Clonar el repositorio:

    git clone https://github.com/oseni99/todo-mcp cd todo-mcp
  2. Crear y activar un entorno virtual:

    python3 -m venv .venv source .venv/bin/activate
  3. Instalar dependencias:

    pip install -r requirements.txt
  4. Crea un .env en la raíz del proyecto:

    OPENAI_API_KEY=sk-... MCP_SERVER=http://127.0.0.1:8000

Estructura del directorio

todoMCP/ ├── client/ # CLI client code │ └── cli.py # Main entrypoint for the MCP-CLI ├── server/ # FastAPI server code │ ├── handlers.py # Business logic for add, list, complete │ ├── tools.py # JSON-Schema tool manifest │ └── main.py # FastAPI app with /tools and /rpc ├── .env # Environment variables (not committed) ├── requirements.txt # Python dependencies └── README.md # This file

Ejecución del servidor

fastapi dev server/main.py

Ejecución de la CLI

Desde la raíz del proyecto:

python -m client.cli

Escriba comandos en lenguaje natural en el indicador, por ejemplo:

> Create a task titled "Write blog post" with content "Outline first draft" due 2025-05-20 > List my tasks > Mark the first task as done > Thanks! > exit

La CLI imprimirá invocaciones de herramientas y respuestas LLM.


-
security - not tested
F
license - not found
-
quality - not tested

Latest Blog Posts

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/oseni99/todo-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server