Skip to main content
Glama
larturi

PostgreSQL MCP Server

by larturi

PostgreSQL MCP Server

Servidor MCP (Model Context Protocol) para acceso de solo lectura a bases de datos PostgreSQL.

Características

Este servidor MCP proporciona herramientas para:

  • 📋 Listar tablas disponibles en la base de datos

  • 🔍 Ver estructura completa de tablas (columnas, tipos, constraints, índices)

  • 📊 Obtener estadísticas de tablas (filas, tamaño, última actualización)

  • 🔎 Ejecutar queries SELECT de solo lectura (protegido contra operaciones de escritura)

Instalación

# Instalar dependencias
npm install

# Compilar el proyecto
npm run build

Configuración en Claude Desktop

Agrega la configuración del servidor MCP en tu archivo de configuración de Claude Desktop:

macOS

Edita: ~/Library/Application Support/Claude/claude_desktop_config.json

Windows

Edita: %APPDATA%\Claude\claude_desktop_config.json

Configuración:

{
  "mcpServers": {
    "postgres-mcp": {
      "command": "node",
      "args": [
        "/ruta/absoluta/a/postgres-mcp/build/index.js"
      ],
      "env": {
        "PGHOST": "localhost",
        "PGPORT": "5432",
        "PGDATABASE": "tu_base_de_datos",
        "PGUSER": "tu_usuario",
        "PGPASSWORD": "tu_password"
      }
    }
  }
}

Importante: Reemplaza /ruta/absoluta/a/postgres-mcp con la ruta real donde clonaste el proyecto.

Herramientas Disponibles

1. list_tables

Lista todas las tablas en un schema.

Parámetros:

  • schema (opcional): Nombre del schema (por defecto: 'public')

Ejemplo de uso:

Lista todas las tablas de la base de datos

2. describe_table

Muestra la estructura completa de una tabla.

Parámetros:

  • table_name (requerido): Nombre de la tabla

  • schema (opcional): Nombre del schema (por defecto: 'public')

Ejemplo de uso:

Muéstrame la estructura de la tabla users

3. query

Ejecuta una consulta SELECT de solo lectura.

Parámetros:

  • sql (requerido): Consulta SQL SELECT

  • limit (opcional): Límite de filas a retornar (por defecto: 100)

Ejemplo de uso:

Ejecuta esta query: SELECT * FROM users WHERE active = true

4. table_stats

Obtiene estadísticas de una tabla.

Parámetros:

  • table_name (requerido): Nombre de la tabla

  • schema (opcional): Nombre del schema (por defecto: 'public')

Ejemplo de uso:

Muéstrame las estadísticas de la tabla products

Seguridad

🔒 Este servidor está diseñado para ser de solo lectura:

  • Solo permite consultas SELECT

  • Bloquea operaciones: INSERT, UPDATE, DELETE, DROP, CREATE, ALTER, TRUNCATE, etc.

  • Aplica límites automáticos a las consultas que no especifican LIMIT

Desarrollo

# Compilar en modo watch
npm run watch

# Ejecutar en desarrollo
npm start

Troubleshooting

Error de conexión a PostgreSQL

  • Verifica que PostgreSQL esté corriendo

  • Confirma las credenciales en el archivo .env

  • Verifica que el usuario tenga permisos de lectura en la base de datos

El servidor no aparece en Claude Desktop

  • Asegúrate de haber reiniciado Claude Desktop después de editar la configuración

  • Verifica que la ruta al archivo build/index.js sea absoluta y correcta

  • Revisa los logs de Claude Desktop para ver errores

"Query no permitida"

  • Solo se permiten consultas SELECT

  • Asegúrate de no usar operaciones de escritura en tus queries

-
security - not tested
F
license - not found
-
quality - not tested

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/larturi/postgres-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server