Skip to main content
Glama
Luis9007

Tareas MCP Server

by Luis9007
README.md
# Servidor MCP de Tareas

Servidor MCP (Model Context Protocol) desarrollado con FastMCP y Python para la gestión de tareas, con base de datos MySQL en Docker.

## 🚀 Inicio rápido con Docker

### Requisitos
- Docker y Docker Compose instalados y en ejecución.

### Levantar los contenedores
Para construir y levantar el servidor MCP y la base de datos MySQL:

```bash
docker compose up -d --build
```

Esto iniciará:
1. **`tareas_mysql`**: Base de datos MySQL 8.0 en el puerto `3306`.
2. **`tareas_mcp_server`**: Servidor MCP en el puerto `8000` (Streamable HTTP / SSE).

### Ver los logs
```bash
docker compose logs -f
```

### Detener los contenedores
```bash
docker compose down
```

---

## 🛠️ Herramientas MCP disponibles

- `get_tareas`: Obtiene la lista completa de tareas.
- `get_tarea_by_id`: Consulta una tarea específica por su ID.
- `crear_tarea`: Registra una nueva tarea (`titulo`, `fecha`, `completado`).
- `actualizar_tarea`: Modifica los campos de una tarea existente.
- `eliminar_tarea`: Elimina una tarea por su ID.
- `marcar_completada`: Marca una tarea como realizada (`completado = 1`).
- `marcar_pendiente`: Marca una tarea como pendiente (`completado = 0`).
- `get_tareas_pendientes`: Lista únicamente las tareas sin completar.
- `get_tareas_completadas`: Lista únicamente las tareas completadas.

---

## 🔌 Conexión desde Clientes MCP

### Opción 1: Conexión vía SSE / HTTP (Docker corriendo)
Si tu cliente MCP soporta transporte SSE / HTTP:
- **URL**: `http://localhost:8000/sse`

### Opción 2: Conexión directa vía stdio (Claude Desktop / Local)
En `claude_desktop_config.json`:
```json
{
  "mcpServers": {
    "tareas-mcp": {
      "command": "python",
      "args": [
        "c:\\Users\\USER\\Desktop\\ADSO 19\\mcp\\server_mcp.py"
      ]
    }
  }
}
```
*(Asegúrate de que la base de datos esté corriendo, ya sea en Docker o localmente).*

Maintenance

ActivityMaintained
ResponsivenessNo issues