Servidor MCP de PostgreSQL
Un servidor de Protocolo de Contexto de Modelo (MCP) que proporciona acceso a bases de datos PostgreSQL. Este servidor permite a los LLM interactuar con las bases de datos para inspeccionar esquemas, ejecutar consultas y realizar operaciones CRUD (Crear, Leer, Actualizar, Eliminar) en las entradas de la base de datos. Este repositorio es una extensión de PostgreSQL MCP Server, que ofrece funcionalidades para crear tablas, insertar, actualizar, eliminar y eliminar entradas.
Instalación
Para instalar el servidor PostgreSQL MCP, siga estos pasos:
Instalar Docker y Claude Desktop
Clonar el repositorio:
git clone https://github.com/vignesh-codes/ai-agents-mcp-pg.gitEjecutar contenedor PG Docker
docker run --name postgres-container -e POSTGRES_USER=admin -e POSTGRES_PASSWORD=admin_password -e POSTGRES_DB=mydatabase -p 5432:5432 -d postgres:latestConstruya el servidor mcp:
docker build -t mcp/postgres -f src/Dockerfile .Abra Claude Desktop y conéctese al servidor MCP actualizando el campo
mcpServersenclaude_desktop_config.json:
Uso con Claude Desktop
Para usar este servidor con la aplicación Claude Desktop, agregue la siguiente configuración a la sección "mcpServers" de su claude_desktop_config.json :
Estibador
Al ejecutar Docker en macOS, utilice
host.docker.internalsi el servidor se ejecuta en la red del host (por ejemplo, localhost).Se puede agregar un nombre de usuario y una contraseña a la URL de PostgreSQL con
postgresql://user:password@host:port/db-name.
Asegúrese de reiniciar la aplicación de escritorio Claude después de actualizar el archivo de configuración.
Related MCP server: Enhanced PostgreSQL MCP Server
Características añadidas
Funcionalidad existente
consulta
Ejecutar consultas SQL de solo lectura en la base de datos conectada.
Entrada:
sql(cadena): la consulta SQL a ejecutar.Todas las consultas se ejecutan dentro de una transacción de SOLO LECTURA.
Nueva funcionalidad
Crear tablas
Capacidad de crear nuevas tablas dinámicamente proporcionando un nombre de tabla y definiciones de columnas.
Entrada de Claude Desktop:
{ "tableName": "example_table", "columns": [ { "name": "id", "type": "SERIAL PRIMARY KEY" }, { "name": "name", "type": "VARCHAR(255)" }, { "name": "age", "type": "INTEGER" } ] }
Insertar entradas
Insertar nuevas entradas en una tabla especificada.
Entrada de Claude Desktop:
{ "tableName": "example_table", "values": { "name": "John Doe", "age": 30 } }
Actualizar entradas
Actualizar entradas existentes en una tabla según condiciones.
Entrada de Claude Desktop:
{ "tableName": "example_table", "values": { "age": 35 }, "conditions": "name = 'John Doe'" }
Eliminar entradas
Eliminar entradas específicas en una tabla según las condiciones.
Entrada de Claude Desktop:
{ "tableName": "example_table", "conditions": "name = 'John Doe'" }
Tablas de caída
Eliminar tablas existentes de la base de datos.
Entrada de Claude Desktop:
{ "tableName": "example_table" }
Recursos
El servidor proporciona información de esquema para cada tabla de la base de datos:
Esquemas de tabla (
postgres://<host>/<table>/schema)Información del esquema JSON para cada tabla.
Incluye nombres de columnas y tipos de datos.
Descubierto automáticamente a partir de metadatos de la base de datos.
Muestra
Entrada a Claude Desktop
Salida de Claude Desktop
Entrada a Claude Desktop
Salida de Claude Desktop
Entrada a Claude Desktop
Salida de Claude Desktop
Entrada a Claude Desktop
Salida de Claude Desktop
ENTRADAS DE BD
Licencia
Este servidor MCP cuenta con la licencia MIT. Esto significa que puede usar, modificar y distribuir el software libremente, sujeto a los términos y condiciones de la licencia MIT. Para más detalles, consulte el archivo de LICENCIA en el repositorio del proyecto.