Skip to main content
Glama
mathewsls

postgres-explorer

by mathewsls

🐘 Postgres-Explorer MCP Server

Servidor MCP que permite a Claude Code explorar y consultar una base de datos PostgreSQL de forma segura (solo lectura).

✅ Requisitos

  • 🐍 Python >= 3.12

  • 🗄️ PostgreSQL accesible

  • 🐳 Docker (opcional)

Related MCP server: MCP PostgreSQL Server

🔐 Variables de entorno

DB_HOST=localhost
DB_NAME=name_example
DB_USER=user_example
DB_PASSWORD=password_example
DB_PORT=5432

⚙️ Configuración para Claude Code

Agrega esto a tu .mcp.json en la raíz del proyecto:

🐳 Opción 1 — Docker (recomendado)

Primero construye la imagen desde la raíz del proyecto:

docker build -t mi-mcp-postgres .

Luego agrega esto a tu .mcp.json:

{
  "mcpServers": {
    "postgres-explorer": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "--network",
        "host",
        "--env-file",
        "/ruta/absoluta/hacia/tu/proyecto/.env",
        "mi-mcp-postgres"
      ]
    }
  }
}

o a tu opencode.json:

{
  "mcp": {
    "postgres-explorer": {
      "type": "local",
      "command": [
        "docker",
        "run",
        "-i",
        "--rm",
        "--network",
        "host",
        "--env-file",
        "/ruta/absoluta/hacia/tu/proyecto/.env",
        "mi-mcp-postgres"
      ]
    }
  }
}

⚡ Opción 2 — Python directo

{
  "mcpServers": {
    "postgres-explorer": {
      "command": "uv",
      "args": ["run", "python", "main.py"]
    }
  }
}

🛠️ Herramientas disponibles

Herramienta

Descripción

get_schema

📋 Lista todas las tablas y sus columnas del esquema public

execute_query

🔍 Ejecuta una consulta SELECT y devuelve resultados

🔒 Seguridad: solo permite SELECT. Conexiones en modo read-only.

Available Tools

2 tools
execute_queryB

Ejecuta una consulta SQL SELECT en PostgreSQL y devuelve los resultados. Úsala solo para consultas de lectura.

ParametersJSON Schema
NameRequiredDescriptionDefault
sqlYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, yet description only mentions it's for SELECT and returns results no details on errors, permissions, row limits, or what happens on write attempts. Incomplete for a critical tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise sentences front-load the purpose. Could be slightly improved by structuring parameter details.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given only one parameter and an output schema, the description is missing parameter semantics and behavioral details, which are needed for safe usage.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% and description adds no explanation for the sql parameter, leaving it completely undefined.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states it executes a SQL SELECT query on PostgreSQL and returns results. Differentiates from sibling tool get_schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly says 'use only for read queries', providing context on when to use it. No explicit alternatives mentioned but sibling is get_schema.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_schemaA

Obtiene la lista de tablas y sus columnas en el esquema público de PostgreSQL.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description correctly implies a read-only operation by stating it retrieves schema information. With no annotations providing safety hints, the description carries the burden and adequately communicates the non-destructive nature. However, it omits details like permissions or side effects, which are likely negligible for a schema retrieval tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, clear sentence with no fluff. Every word earns its place, and it is front-loaded with the core action. Conciseness is excellent.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given that the tool has no parameters and an output schema exists (though not provided), the description is complete enough. It clearly states the output (list of tables and columns) and context (public schema of PostgreSQL). No additional details are necessary for this straightforward tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

There are no parameters, so the schema coverage is 100%. The description does not add meaning beyond the empty schema, but for zero-parameter tools, a baseline of 4 is appropriate as the schema already fully defines the interface.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool retrieves a list of tables and columns from the public schema of PostgreSQL. The verb 'obtiene' (gets) and resource 'tablas y sus columnas' are specific, and it distinguishes itself from the sibling tool 'execute_query' which likely executes queries.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

While the description implies this tool is for exploring schema structure rather than executing queries (given the sibling), it does not explicitly state when to use it or when not to use alternatives. No exclusions or alternatives are mentioned.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 2 tool updatesv0.1.0
    • First observedexecute_query
    • First observedget_schema

TDQS

A3.7/5.0
Disambiguation5/5

The two tools have clearly distinct purposes: execute_query handles arbitrary SELECT queries, while get_schema retrieves metadata about tables and columns. No overlap or ambiguity exists.

Naming Consistency5/5

Both tools follow a consistent verb_noun pattern (execute_query, get_schema) using snake_case, making the naming predictable and clear.

Tool Count2/5

With only 2 tools, the server feels minimal for a 'PostgreSQL explorer'. Typical exploration would benefit from additional tools like describe_table, list_schemas, or view_details, making 2 tools insufficient for a well-scoped exploration surface.

Completeness3/5

The server covers basic schema browsing and arbitrary read queries, but lacks more granular tools (e.g., specific table details, constraint info, index listing). Users cannot easily explore beyond the public schema or get metadata about individual objects without writing SQL.

Maintenance

ActivityMaintained
ResponsivenessSyncing

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

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

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables secure read-only access to PostgreSQL databases through SELECT queries only, with tools for exploring schemas, listing tables, and executing common queries while preventing any data modification operations.
    2,422
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables secure read-only access to PostgreSQL databases, allowing users to list tables, query schemas, execute SELECT statements, and inspect table structures through natural language interactions.
    751
    4
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Provides secure, read-only access to PostgreSQL databases for schema inspection and data querying. It enables users to list tables, describe structures, and execute SELECT statements while strictly blocking destructive operations.
    19
    1
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables safe interaction with PostgreSQL databases through read-only queries, schema exploration, and performance analysis.
    121
    MIT

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/mathewsls/mcp-postgresql'

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