Cómo conectar una IA con tus datos usando MCP y Python
¿Una inteligencia artificial puede consultar tu inventario en lugar de inventar una respuesta?
Para explorar esta pregunta construí StockBridge, un servidor MCP en Python que permite a un asistente consultar productos, precios y existencias desde un archivo JSON.
¿Qué es MCP?
Model Context Protocol (MCP) es un protocolo que permite conectar aplicaciones de inteligencia artificial con herramientas y fuentes de información externas.
En nuestro ejemplo, el funcionamiento es:
Usuario → Asistente de IA → Servidor MCP → Inventario JSON
El asistente solicita una consulta, el servidor ejecuta una función Python y devuelve los resultados.
Construyendo StockBridge
El proyecto utiliza Python, el SDK mcp==2.3.0 y un inventario ficticio de cinco productos.
Implementé dos herramientas:
-
buscar_producto(nombre): encuentra productos por nombre. -
productos_por_agotarse(limite=5): identifica productos cuyas existencias están por debajo de un límite.
Esta es la segunda herramienta:
@mcp.tool()
def productos_por_agotarse(limite: int = 5) -> BajoStock:
if type(limite) is not int or limite < 0:
raise ToolError("Límite inválido")
encontrados = sorted(
(p for p in INVENTARIO if p["stock"] < limite),
key=lambda p: (p["stock"], p["id"])
)
return {
"productos": encontrados,
"total": len(encontrados),
"limite": limite
}
Este fragmento forma parte del servidor completo, donde se definen mcp, BajoStock, ToolError e INVENTARIO.
El decorador @mcp.tool() permite registrar la función como una herramienta que un cliente MCP puede descubrir y ejecutar.
Resultados de la consulta
Al ejecutar la herramienta con limite=5, obtuvimos:
| Producto | Existencias | Precio |
|---|---|---|
| Miel 250 g | 0 | $18.000 COP |
| Café en grano 500 g | 2 | $28.000 COP |
| Café molido 500 g | 3 | $24.000 COP |
Los productos y precios son ficticios, pero la consulta se realiza sobre el archivo JSON.
¿Cómo sabemos que realmente funciona?
No quería limitarme a mostrar una respuesta aparentemente correcta.
Por eso desarrollé 11 pruebas automatizadas: diez verificaciones funcionales y una prueba de integración que inicia el servidor y se comunica mediante MCP sobre stdio.
También conecté StockBridge con GitHub Copilot en Visual Studio Code.
Durante la demostración, Copilot ejecutó la herramienta productos_por_agotarse y utilizó sus resultados.
Esto demuestra una diferencia importante:
No es lo mismo que una IA genere una respuesta a que consulte datos mediante una herramienta verificable.
Tutorial completo
Documenté el proyecto paso a paso en TuCodigoCotidiano.
El tutorial explica cómo crear el inventario JSON, construir el servidor Python, validar datos, ejecutar pruebas, utilizar MCP Inspector y conectar las herramientas con GitHub Copilot.
Incluye el código necesario para reproducir el laboratorio.
Leer el tutorial completo: MCP con Python, permite que una IA consulte tu inventario
Conclusión
MCP permite construir asistentes que pueden utilizar herramientas para acceder a información específica.
Pero también necesitamos verificar las llamadas, validar los datos y controlar los permisos.
Una cosa es que una IA responda. Otra muy distinta es demostrar que consultó los datos.
¿Qué herramienta conectarías primero a un asistente mediante MCP?
Top comments (0)