14 de enero de 2026
Me encontraba en una situación que probablemente te suene familiar. Tenía un proyecto antiguo, una aplicación web funcional que lleva años funcionando, alimentada por una base de datos PostgreSQL que... bueno, digamos que ha vivido su propia vida.
Cada cierto tiempo, el cliente pedía información que no se podía ver en la aplicación web, por lo que era necesario consultar directamente la base de datos. Y cada vez, me enfrentaba al mismo ritual:
No era técnicamente difícil, pero sí increíblemente lento y repetitivo. Y no nos engañemos, hacer consultas SQL no es divertido.
Como buen desarrollador del siglo XXI, mi primer pensamiento fue: "¿Puede la IA ayudarme con esto?". Empecé a usar chats con modelos de IA para generar las consultas SQL.
El proceso era algo así:
Yo: Necesito una consulta que me muestre estos datos.
IA: Aquí tienes la consulta SQL:
Funcionaba... hasta que no funcionaba. El problema fundamental: la IA no conocía mi base de datos. Tenía que explicarle constantemente:
"La tabla usuarios se llama realmente clientes"
"Los campos de fecha están en formato timestamp"
"La relación entre clientes y pedidos es a través de cliente_id, no usuario_id"
"Ten cuidado que hay clientes inactivos en la tabla clientes_baja"
Cada consulta me llevaba más tiempo explicando el contexto que escribiendo SQL yo mismo. Era como tener que entrenar a alguien cada vez que quería hacer una pregunta, bueno, de hecho era literalmente así.
Investigando sobre cómo las IAs podrían conectarse directamente a bases de datos, apareció MCP (Model Context Protocol). Y fue como si se encendiera una bombilla.
MCP no es un modelo ni una IA nueva, es un protocolo que permite a los modelos interactuar con herramientas externas (bases de datos, APIs, sistemas locales) de forma estructurada.
¿Y si en lugar de explicarle a la IA cómo es mi base de datos, pudiera simplemente dejarla hablar con ella directamente?
Dejé de pensar en "cómo genero mejores consultas SQL" y empecé a pensar en "cómo conecto la IA directamente a mis datos".
La diferencia es sutil pero fundamental:
Eliminaba el intermediario (yo) y con ello, toda la fricción.
Empecé con Gemini-cli porque descubrí que tenía un sistema de extensiones ya maduro. Entre ellas, una extensión oficial para PostgreSQL.
La instalación fue ridiculamente sencilla:
gemini extensions install https://github.com/gemini-cli-extensions/postgres
Configuré las variables de entorno, y en minutos, tenía una IA que podía consultar mi base de datos real. El momento mágico fue cuando pregunté (ejemplo figurado):
Yo: "Muéstrame todos los clientes de Madrid"
Gemini: "Tengo 3 clientes en Madrid: Ana García, Carlos López y María Pérez. Ana se registró hace 2 semanas y ya ha hecho un pedido."
No me devolvió una consulta SQL, me devolvió una respuesta basada en los datos. La IA había ejecutado la consulta, interpretado los resultados, y me los presentó de forma natural.
Ventajas de este enfoque:
Como últimamente estoy experimentando bastante con Opencode (una herramienta que me está encantando), quise ver cómo podía lograr lo mismo con ellos. Aquí la historia fue diferente.
Opencode no tiene un sistema de extensiones predefinido como Gemini-cli. En su lugar, utiliza MCP de forma más nativa, pero requiere que configuremos los servicios MCP manualmente.
El proceso fue:
postgres-mcp como paquete npmopencode.json para que usara este MCP localAunque fue más manual que el enfoque de Gemini-cli, una vez funcionó, la experiencia fue igual de impresionante. La diferencia principal está en la filosofía:
He creado un pequeño repositorio en mi cuenta de GitHub con la configuración y una base de datos de ejemplo para probarlo. Es principalmente una documentación para mi yo del futuro. Pero como compartir es vivir, ahí queda, por si a alguien le es útil o quiere hacer pruebas.
Si no te gustan, tengo otras. Pero:
La IA es el mayor avance en interfaces de usuario desde que se inventó el ratón. Los modelos pueden ser mejores o peores, acertar más o menos según su entrenamiento y sus capaciades, pero lo que es innegable es que la IA está cambiando la forma de relacionarnos con la tecnología. Ahora podemos hablarle a todo, incluído a una base de datos.
"Me fío de todo el mundo pero desconfío del diablo que llevan dentro". Esta frase es de la película The Italian Job. Viene que ni al pelo. Los modelos de IA son lo que son, se basan en probabilidad, no hacen magia, recuérdalo siempre. En este ejemplo concreto, si conoces el dominio que estás consultando y algo te huele raro, revisa, es muy probable que la IA haya hecho mal. Coteja la información, revisa la SQL que ha usado, etc. sobre todo si la información es importante.