{"id":"pgsql-mcp-server","name":"pgsql-mcp-server","homepage":"https://pypi.org/project/pgsql-mcp-server/","repo_url":"https://github.com/twn39/pgsql-mcp-server","category":"infrastructure","subcategories":[],"tags":["mcp","postgresql","pgsql","python","database","tool-server"],"what_it_does":"A Model Context Protocol (MCP) tool server that connects to a PostgreSQL database (via DSN) and exposes MCP-callable tools to introspect schema (schemas/tables/columns/indexes/foreign keys) and run SQL for DQL/DML/DDL/DCL operations within transactions (as described).","use_cases":["Schema exploration for PostgreSQL (e.g., listing tables/columns/indexes/foreign keys) via MCP tooling","Agent-assisted query generation and execution against a Postgres database","Administrative SQL execution (DDL/DCL) in controlled environments","Debugging and testing database interactions using an MCP inspector"],"not_for":["Internet-facing, public deployments without additional network and credential hardening","Untrusted users directly invoking DML/DDL/DCL without strict allowlisting and auditing","Workloads requiring automatic paging/search over large result sets (pagination/limits not described)"],"best_when":"Used by trusted operators/agents in a secured network environment to perform controlled database inspection and SQL execution through MCP.","avoid_when":"Avoid exposing this server to untrusted networks or users, especially for DML/DDL/DCL, unless you implement strong authorization, query allowlisting, and monitoring.","alternatives":["Direct MCP PostgreSQL tooling with a purpose-built, security-reviewed connector","A REST/GraphQL API layer over PostgreSQL with strict query allowlisting","PostgREST / Hasura (for safe CRUD/query patterns) where applicable"],"af_score":49.8,"security_score":37.8,"reliability_score":36.2,"package_type":"mcp_server","discovery_source":["pypi"],"priority":"low","status":"evaluated","version_evaluated":null,"last_evaluated":"2026-04-04T21:48:44.056166+00:00","interface":{"has_rest_api":false,"has_graphql":false,"has_grpc":false,"has_mcp_server":true,"mcp_server_url":null,"has_sdk":false,"sdk_languages":[],"openapi_spec_url":null,"webhooks":false},"auth":{"methods":["DSN provided at startup (postgres credentials embedded in DSN as shown in README)"],"oauth":false,"scopes":false,"notes":"README describes passing a PostgreSQL DSN via CLI. No additional server-side authentication/authorization mechanism is described in the provided content."},"pricing":{"model":null,"free_tier_exists":false,"free_tier_limits":null,"paid_tiers":[],"requires_credit_card":false,"estimated_workload_costs":null,"notes":"No pricing information provided; appears to be a self-hosted open-source tool server."},"requirements":{"requires_signup":false,"requires_credit_card":false,"domain_verification":false,"data_residency":[],"compliance":[],"min_contract":null},"agent_readiness":{"af_score":49.8,"security_score":37.8,"reliability_score":36.2,"mcp_server_quality":70.0,"documentation_accuracy":60.0,"error_message_quality":0.0,"error_message_notes":null,"auth_complexity":55.0,"rate_limit_clarity":0.0,"tls_enforcement":70.0,"auth_strength":30.0,"scope_granularity":0.0,"dependency_hygiene":55.0,"secret_handling":40.0,"security_notes":"Security is largely dependent on PostgreSQL credentials provided via DSN and on network-level deployment controls. No explicit MCP-server authentication, authorization, query allowlisting, audit logging, or secret-handling/redaction guidance is described. TLS is not explicitly mandated for the Postgres connection in the provided content.","uptime_documented":0.0,"version_stability":55.0,"breaking_changes_history":40.0,"error_recovery":50.0,"idempotency_support":"false","idempotency_notes":null,"pagination_style":"none","retry_guidance_documented":false,"known_agent_gotchas":["Tools allow running DML/DDL/DCL; agents may produce destructive statements unless you constrain/allowlist queries.","Pagination/row limits are not described; large SELECT results may be heavy.","Idempotency is not documented; retries could repeat non-idempotent statements."]}}