MCP Servers

A collection of Model Context Protocol servers, templates, tools and more.

M
MCP Practical Course

MCP server by iamdgarcia

Created 9/1/2025
Updated 6 days ago
Repository documentation and setup instructions

MCP Python Demo

Ejemplo práctico de cómo usar el Model Context Protocol (MCP) con Python.
Este repo incluye un servidor básico, un servidor conectado a SQLite y un cliente de prueba.

MCP es un estándar abierto creado por Anthropic que permite conectar modelos de lenguaje (LLMs) con datos y herramientas externas de forma estandarizada.
Piensa en él como el USB-C de la inteligencia artificial.


📂 Contenido del repo

  • src/servidor.py → Servidor MCP básico (tool sumar)
  • src/servidor_bd.py → Servidor MCP conectado a SQLite (tool get_top_chatters)
  • src/cliente.py → Cliente MCP que lanza el servidor como subproceso y prueba las tools
  • src/init_sqlite.py → Script para inicializar la base de datos community.db
  • data/community.db → Base de datos SQLite generada con datos de ejemplo
  • Dockerfile → Para desplegar en DigitalOcean, Render, Fly.io, etc.
  • Procfile → Compatibilidad con Heroku-like PaaS
  • requirements.txt → Dependencias (mcp, python-dotenv)

🚀 Instalación local

1. Clonar el repo

git clone https://github.com/iamdgarcia/mcp-practical-course.git
cd mcp-practical-course

2. Crear entorno virtual e instalar dependencias

python -m venv .venv
source .venv/bin/activate    # En Windows: .venv\Scripts\activate
pip install -r requirements.txt

3. Inicializar la base de datos de ejemplo

python src/init_sqlite.py

🧪 Uso

Servidor básico (calculadora)

python src/servidor.py

Servidor con base de datos

python src/servidor_bd.py

Cliente de prueba

Edita en src/cliente.py qué servidor quieres lanzar (servidor.py o servidor_bd.py) y ejecuta:

python src/cliente.py

Ejemplo de salida con servidor_bd.py:

=== Herramientas disponibles ===
- get_top_chatters: Obtiene la lista de usuarios ordenados por mensajes enviados
===============================

Resultado: [{'name': 'Alice', 'messages': 120}, {'name': 'Bob', 'messages': 75}, {'name': 'Carlos', 'messages': 50}]

🐳 Docker

Construir y correr el contenedor:

docker build -t mcp-python-demo .
docker run -p 8080:8080 --env-file .env mcp-python-demo

🌐 Despliegue

Ejemplo con DigitalOcean App Platform:

  1. Conecta este repo a tu cuenta de DO.
  2. DO detectará el Dockerfile.
  3. Exponer el puerto 8080 (la app también puede leer $PORT).
  4. Añade variables de entorno necesarias en el panel de configuración.

🔒 Buenas prácticas

  • No expongas tu servidor MCP sin control → usa autenticación o proxys.
  • Guarda credenciales en .env y no las subas al repo.
  • Actualiza dependencias (pip install -U mcp).
  • Valida entradas de usuario antes de usarlas en queries SQL.

📖 Referencias


📜 Licencia

Este proyecto está bajo licencia MIT. Puedes usarlo, modificarlo y distribuirlo libremente.

Quick Setup
Installation guide for this server

Install Package (if required)

uvx mcp_practical_course

Cursor configuration (mcp.json)

{ "mcpServers": { "iamdgarcia-mcp-practical-course": { "command": "uvx", "args": [ "mcp_practical_course" ] } } }