Servidor PostgreSQL MCP
Un servidor Modelo-Controlador-Proveedor (MCP) que:
Se conecta a una base de datos PostgreSQL
Expone esquemas de tablas como recursos
Proporciona herramientas para ejecutar consultas SQL de solo lectura
Incluye indicaciones para tareas comunes de análisis de datos.
Características
Exploración de esquemas : explore esquemas, tablas y columnas de bases de datos
Ejecución de consultas de solo lectura : ejecute consultas SQL de forma segura en su base de datos
Indicaciones de análisis de datos : Plantillas SQL prediseñadas para tareas de análisis comunes
Visualización de datos : generar datos para visualización
Exploración de relaciones : visualice relaciones de tablas y claves externas
Documentación de API : Especificación OpenAPI generada automáticamente
Related MCP server: PostgreSQL MCP Server
Arquitectura
Esta aplicación sigue el patrón Modelo-Controlador-Proveedor (MCP):
Capa de modelo : interacción directa con la base de datos
Capa de proveedor : lógica empresarial y procesamiento de datos
Capa de controlador : puntos finales de API y manejo de solicitudes
Características de seguridad
Validación de consultas de solo lectura
Protección contra inyección SQL
Limitación de velocidad
Consultas parametrizadas
Soporte de autenticación
Configuración de CORS
Instalación
Clonar el repositorio:
git clone <repository-url> cd mcp-postgres-serverInstalar dependencias:
npm installCree un archivo
.envbasado en.env.template:cp .env.template .envActualice el archivo
.envcon las credenciales de su base de datos PostgreSQL.Iniciar el servidor:
npm start
Configuración
Toda la configuración se gestiona a través de variables de entorno:
Servidor : Puerto, entorno, configuración CORS
Base de datos : Detalles de conexión, configuración del grupo
Seguridad : configuración de JWT, limitación de velocidad
Consulta : Límites de ejecución, límites de tamaño de resultados
Puntos finales de API
Puntos finales del esquema
GET /api/schemas- Listar todos los esquemasGET /api/schemas/:schema/tables- Listar tablas en un esquemaGET /api/schemas/:schema/tables/:table- Obtener detalles del esquema de la tablaGET /api/schemas/:schema/relationships- Obtener relaciones de tablasGET /api/structure- Obtener la estructura completa de la base de datosGET /api/search?q=term- Buscar en tablas y columnas
Puntos finales de consulta
POST /api/query- Ejecutar una consulta SQLPOST /api/query/explain- Obtener el plan de ejecución de la consultaGET /api/schemas/:schema/tables/:table/sample- Obtener datos de muestraGET /api/schemas/:schema/tables/:table/stats- Obtener estadísticas de la tabla
Puntos finales del mensaje de análisis
GET /api/prompts- Plantillas de indicaciones para el análisis de listasGET /api/prompts/:templateId- Obtener detalles de la plantilla de solicitudPOST /api/prompts/:templateId/generate- Generar SQL a partir de la plantillaGET /api/schemas/:schema/tables/:table/analysis/suggest- Obtener sugerencias de análisis
Consultas de ejemplo
Consulta de tabla básica
Uso de indicaciones de análisis
Desarrollo
Ejecutar en modo de desarrollo:
npm run devEjecutar pruebas:
npm testCódigo de pelusa:
npm run lint
Licencia
Instituto Tecnológico de Massachusetts (MIT)
Appeared in Searches
- A database for searching medical and scientific research articles
- PostgreSQL MCP (Multi-Version Concurrency Control or specific usage)
- Information about PostgreSQL MCP (Managed Cloud Provider or other related concepts)
- Search for information about 'rag'
- Overview and Resources for PostgreSQL Database System