Servidor MCP para PostgreSQL
Una implementación de servidor de Protocolo de Contexto de Modelo (MCP) para PostgreSQL, que proporciona una interfaz simple para interactuar con bases de datos PostgreSQL a través de MCP.
Características
Ejecutar consultas SQL con entradas parametrizadas
Ejecutar operaciones INSERTAR/ACTUALIZAR/ELIMINAR
Crear nuevas bases de datos
Crear o actualizar esquemas de tablas
Depurar conexiones PostgreSQL
En contenedores con Docker para una fácil implementación
Configuración basada en el entorno
Related MCP server: PostgreSQL MCP Server
Prerrequisitos
Python 3.8+
PostgreSQL 10+
Docker (opcional, para implementación en contenedores)
Docker Compose (opcional, para desarrollo)
Instalación
Uso de Docker (recomendado)
Clonar el repositorio:
git clone https://github.com/asadudin/mcp-server-postgres.git cd mcp-server-postgresCopie el archivo de entorno de ejemplo:
cp .env.example .envActualice el archivo
.envcon sus credenciales de PostgreSQL:PG_HOST=postgres PG_PORT=5432 PG_USER=postgres PG_PASSWORD=your_password PG_DATABASE=your_database HOST=0.0.0.0 PORT=8056Inicie el servicio usando Docker Compose:
docker-compose up -d
Instalación manual
Clonar el repositorio:
git clone https://github.com/asadudin/mcp-server-postgres.git cd mcp-server-postgresCrear y activar un entorno virtual:
python -m venv venv source venv/bin/activate # On Windows: .\venv\Scripts\activateInstalar dependencias:
pip install -r requirements.txtCopie el archivo de entorno de ejemplo y actualícelo:
cp .env.example .env # Edit .env with your configurationEjecutar el servidor:
python mcp_server_postgres.py
Uso
El servidor MCP proporciona los siguientes puntos finales:
sql_query
Ejecute una consulta SELECT y devuelva los resultados como JSON.
Parámetros:
query: cadena de consulta SQLparams: cadena JSON opcional de parámetros de consulta (lista o diccionario)
Ejemplo:
sql_execute
Ejecutar una instrucción INSERT/UPDATE/DELETE.
Parámetros:
query: instrucción SQLparams: cadena JSON opcional de parámetros de consulta (lista o diccionario)
Ejemplo:
create_database
Crear una nueva base de datos PostgreSQL.
Parámetros:
database_name: Nombre de la base de datos a crear
create_or_update_table
Crear o actualizar un esquema de tabla.
Parámetros:
sql: instrucción SQL CREATE TABLE o ALTER TABLE
debug_postgres_connection
Depurar la conexión PostgreSQL.
Variables de entorno
Variable | Por defecto | Descripción |
PG_HOST | host local | Host de PostgreSQL |
PUERTO_PG | 5432 | Puerto PostgreSQL |
PG_USER | postgres | Nombre de usuario de PostgreSQL |
CONTRASEÑA PG | Contraseña de PostgreSQL | |
BASE DE DATOS PG | postgres | Nombre de la base de datos predeterminada |
ANFITRIÓN | 0.0.0.0 | Host al que vincular el servidor MCP |
PUERTO | 8056 | Puerto para ejecutar el servidor MCP |
Desarrollo
Ejecución de pruebas
Construyendo la imagen de Docker
Documentación de la API
Para obtener documentación detallada de la API, consulte la especificación OpenAPI .
Contribuyendo
¡Agradecemos sus contribuciones! No dude en enviar una solicitud de incorporación de cambios.
Licencia
Este proyecto está licenciado bajo la licencia MIT: consulte el archivo de LICENCIA para obtener más detalles.