{
  "data": {
    "a": {
      "slug": "postgres-mcp-pro",
      "name": "Postgres MCP Pro",
      "vendor": "Crystal DBA",
      "vendorUrl": "https://www.crystaldba.ai",
      "kind": "mcp",
      "category": "data",
      "summary": "PostgreSQL server with configurable read/write access plus DBA tooling (index tuning with hypopg, EXPLAIN analysis, top-query and workload analysis, health checks).",
      "url": "https://www.anchorterminal.com/tools/postgres-mcp-pro",
      "markdownUrl": "https://www.anchorterminal.com/tools/postgres-mcp-pro.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/postgres-mcp-pro.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/postgres-mcp-pro.json",
      "repo": "https://github.com/crystaldba/postgres-mcp",
      "license": "MIT",
      "transports": [
        "stdio",
        "sse"
      ],
      "packages": [
        {
          "registry": "pypi",
          "name": "postgres-mcp"
        },
        {
          "registry": "oci",
          "name": "crystaldba/postgres-mcp"
        }
      ],
      "auth": "none",
      "authNotes": "No MCP-level auth; connects with a Postgres DATABASE_URI (environment variable or argument). The default access mode is unrestricted. --access-mode=restricted parses each statement against an allowlist, forces read-only transactions and stops queries after 30 seconds; an open report (#178) shows it can still read server files through a function in the FROM clause.",
      "pricing": "free",
      "pricingNotes": "Open source; no hosted offering.",
      "priceSummary": "Free · OSS",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No payments.",
        "endpoints": []
      },
      "toolCount": 9,
      "popularity": {
        "githubStars": 3200,
        "npmWeekly": null,
        "pypiWeekly": 228655,
        "asOf": "2026-09-26"
      },
      "docsUrl": "https://github.com/crystaldba/postgres-mcp#readme",
      "capabilities": [
        "db.sql",
        "db.admin"
      ],
      "tags": [
        "community",
        "local",
        "open-source",
        "python",
        "read-only-mode"
      ],
      "lastRelease": "2025-05-16",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 36.7,
        "grade": "F",
        "agentReady": false,
        "rank": 928,
        "ranked": true,
        "rankOf": 950,
        "categoryRank": 11,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 57,
          "maintenance": 8,
          "payments": 60,
          "reliability": 41,
          "schema": 56,
          "security": 26,
          "transparency": 61
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-01"
        },
        "negative": -8,
        "negativeNotes": [
          "-8: 2026-06-06, a public issue showed restricted (read-only) mode can read arbitrary files on the database host with `SELECT * FROM pg_read_file('/etc/passwd')`, because the function allowlist checks only function calls outside the FROM clause. It needs a role with pg_read_server_files or superuser. Nearly four months later the issue has no maintainer reply and the fix (#200, opened 2026-08-16) is unmerged (https://github.com/crystaldba/postgres-mcp/issues/178; https://github.com/crystaldba/postgres-mcp/pull/200)."
        ],
        "verdict": "Index tuning with hypopg, EXPLAIN with hypothetical indexes, top queries and seven health checks. No release since 0.3.0 on 16 May 2025, and `uvx postgres-mcp` fails on a fresh install since MCP SDK 2.0.",
        "bestFor": "An operator who wants an agent to diagnose and tune a self-managed Postgres, with a pinned install and a low-privilege role.",
        "strengths": [
          "Index tuning with hypopg, EXPLAIN with hypothetical indexes, top queries and seven health checks",
          "Restricted mode parses statements with pglast, blocks `COMMIT`, `ROLLBACK` and `EXPLAIN ANALYZE`, runs read-only and stops queries after 30 seconds",
          "Nine tools at roughly 1,300 tokens of definitions by our estimate",
          "MIT licence, Docker image and CI with lint, type checks and tests against a real Postgres"
        ],
        "weaknesses": [
          "No release since 0.3.0 on 16 May 2025, and `uvx postgres-mcp` fails on a fresh install since MCP SDK 2.0",
          "Unrestricted is the default and every README example uses it",
          "Open restricted-mode bypass (#178) reads server files when the role has pg_read_server_files or superuser",
          "No security policy, no maintainer reply on the security report, 37 open issues and 35 open pull requests",
          "`execute_sql` has no row limit, and the released package carries no tool annotations"
        ],
        "agentNotes": [
          "Launch with `uvx --with 'mcp\u003c2' postgres-mcp`. Plain `uvx postgres-mcp` now fails with \"No module named 'mcp.server.fastmcp'\"",
          "Pass `--access-mode=restricted` explicitly. The default is unrestricted",
          "Connect with a role that lacks superuser and pg_read_server_files. Restricted mode alone doesn't stop server file reads",
          "Put `LIMIT` in every `execute_sql` query. The server returns every row",
          "Don't set `analyze: true` on `explain_query` for writes in unrestricted mode. It runs the statement"
        ],
        "metrics": {
          "kind": "local",
          "measured": false
        },
        "reviewCount": 2,
        "avgRating": 2.5,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "F",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 36.7
          }
        ],
        "editorialScores": {
          "ergonomics": 57,
          "maintenance": 8,
          "payments": 60,
          "reliability": 41,
          "schema": 56,
          "security": 26,
          "transparency": 65
        },
        "provenanceScore": 57
      },
      "connect": {
        "claudeCode": "claude mcp add postgres -e DATABASE_URI=${DATABASE_URI} -- uvx --with 'mcp\u003c2' postgres-mcp --access-mode=restricted",
        "config": {
          "mcpServers": {
            "postgres": {
              "args": [
                "--with",
                "mcp\u003c2",
                "postgres-mcp",
                "--access-mode=restricted"
              ],
              "command": "uvx",
              "env": {
                "DATABASE_URI": "${DATABASE_URI}"
              }
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/db.sql",
        "tool": "https://letme.dev/postgres-mcp-pro"
      },
      "area": "developer",
      "provenance": {
        "legalEntity": "Crystal Corp.",
        "domain": "crystaldba.ai",
        "domainRegistered": "2024-11-25",
        "domainNote": "The licence names Crystal Corp. www.crystaldba.ai loaded on 1 October 2026 but showed no terms, privacy policy or contact links. A commenter on issue #187 says Crystal DBA was acquired by Temporal, which we couldn't confirm.",
        "endpointOnVendorDomain": null,
        "terms": "",
        "privacy": "",
        "statusPage": "",
        "changelog": "https://github.com/crystaldba/postgres-mcp/releases",
        "securityTxt": "none",
        "checked": "2026-10-01",
        "score": 57
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/postgres-mcp-pro.json",
      "live": {
        "slug": "postgres-mcp-pro",
        "versions": [
          {
            "registry": "github",
            "name": "crystaldba/postgres-mcp",
            "version": "v0.3.0",
            "released": "2025-05-16",
            "seenAt": "2026-10-09T17:13:57.419478099Z"
          },
          {
            "registry": "pypi",
            "name": "postgres-mcp",
            "version": "0.3.0",
            "released": "2025-05-16",
            "seenAt": "2026-10-09T17:13:57.212139151Z"
          }
        ],
        "githubStars": 3385,
        "pypiWeekly": 134621,
        "securityTxt": {
          "url": "https://crystaldba.ai/.well-known/security.txt",
          "state": "unknown",
          "checkedAt": "2026-10-09T15:39:59.154726754Z"
        },
        "domain": {
          "domain": "crystaldba.ai",
          "registered": "2024-11-25",
          "source": "https://rdap.identitydigital.services/rdap/domain/crystaldba.ai",
          "checkedAt": "2026-10-04T13:04:31.914251523Z"
        },
        "updatedAt": "2026-10-09T17:13:57.419478099Z"
      }
    },
    "answer": "Snowflake-managed MCP server scores 56.4 (C) on agent readiness against Postgres MCP Pro's 36.7 (F), and leads in 5 of 7 scored categories. Postgres MCP Pro leads on agent ergonomics and payments \u0026 pricing.",
    "b": {
      "slug": "snowflake-managed",
      "name": "Snowflake-managed MCP server",
      "vendor": "Snowflake Inc.",
      "vendorUrl": "https://www.snowflake.com",
      "kind": "mcp",
      "category": "data",
      "summary": "Snowflake's managed MCP server is an object created in a Snowflake account that exposes Cortex Agents, Cortex Search, Cortex Analyst, SQL execution and custom functions, each as an MCP tool, over HTTP, with OAuth and role-based access control.",
      "url": "https://www.anchorterminal.com/tools/snowflake-managed",
      "markdownUrl": "https://www.anchorterminal.com/tools/snowflake-managed.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/snowflake-managed.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/snowflake-managed.json",
      "license": "Proprietary service under Snowflake's terms of service",
      "transports": [
        "streamable-http"
      ],
      "packages": [],
      "auth": "mixed",
      "authNotes": "OAuth 2.0 is the documented default. An administrator creates a Snowflake OAuth security integration (confidential, or public with PKCE) and gives its client ID and secret to the MCP client, because dynamic client registration is not supported. Since 22 July 2026 a schema, database or account can bind its MCP servers to an External OAuth integration such as Okta or Microsoft Entra ID. Scopes of the form `session:role:\u003crole_name\u003e` pick the session's primary role. Programmatic access tokens are also accepted, expire after 15 days by default and 365 at most, and Snowflake recommends OAuth over them. There is no self-serve key an agent can mint for itself.",
      "pricing": "usage",
      "pricingNotes": "No charge is listed for the MCP server itself. Tools bill at the rates of what they call. SQL and custom tools use warehouse compute in Platform Credits, from $2.00 a credit on demand for Standard edition in US regions. Cortex Agents and Cortex Search bill in AI Credits at $2.00 each with global routing. A 30-day trial needs only an email address, with Cortex tools disabled until a card is added (checked 2026-10-09).",
      "priceSummary": "$2 / credit",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the MCP server docs, the AI pricing page or the Service Consumption Table (checked 2026-10-09).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-09"
      },
      "docsUrl": "https://docs.snowflake.com/en/user-guide/snowflake-cortex/cortex-agents-mcp",
      "llmsTxt": "https://docs.snowflake.com/llms.txt",
      "capabilities": [
        "db.sql",
        "knowledge.search",
        "analytics.query"
      ],
      "tags": [
        "official",
        "hosted",
        "mcp",
        "oauth",
        "read-only-mode",
        "database",
        "enterprise",
        "llms-txt",
        "status-page",
        "soc2",
        "usage-priced",
        "free-trial"
      ],
      "lastRelease": "2026-08-20",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 56.4,
        "grade": "C",
        "agentReady": false,
        "rank": 633,
        "ranked": true,
        "rankOf": 950,
        "categoryRank": 8,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 46,
          "maintenance": 55,
          "payments": 35,
          "reliability": 55,
          "schema": 61,
          "security": 77,
          "transparency": 84
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-09"
        },
        "negative": -2,
        "negativeNotes": [
          "20 August 2026. `tools/call` responses changed from a single JSON body to an SSE stream as an unbundled behaviour change that accounts could not disable, outside the eight-week bundle process. Clients reading one JSON body broke. The change is documented with migration steps and clients that follow the MCP specification were unaffected, so the deduction is small. Whether notice was given before the release date was not established (https://docs.snowflake.com/en/release-notes/bcr-bundles/un-bundled/bcr-2405)."
        ],
        "verdict": "Tools are governed by Snowflake roles, the SQL tool is read-only by default, and sign-in runs through Snowflake OAuth or a company identity provider. No rate limits or tool-call error codes were found in the reviewed documentation, and a person must create the account, the server object and the OAuth integration before an agent can connect.",
        "bestFor": "A company that already keeps its data in Snowflake and wants outside MCP clients to query it under existing roles, best through one Cortex Agent tool.",
        "strengths": [
          "Each tool needs its own grant. `USAGE` on the MCP server does not give access to the agent, search service, semantic view, function or procedure behind a tool",
          "The SQL execution tool defaults to `read_only: true` and takes a `query_timeout` and a named warehouse",
          "OAuth with PKCE for public clients, role scopes, an allowed-roles list and, since 22 July 2026, binding to an external identity provider with RFC 9728 metadata",
          "Generally available since 4 November 2025, under a 99.9 per cent monthly availability SLA with service credits",
          "Per-credit prices by region and edition are public in the Service Consumption Table, and the docs publish llms.txt and Markdown copies of every page"
        ],
        "weaknesses": [
          "No rate limits for the MCP endpoint and no JSON-RPC error codes were found in the reviewed documentation",
          "No dynamic client registration. An administrator creates a security integration and hands the client ID and secret to each MCP client",
          "On 20 August 2026 `tools/call` responses changed from one JSON body to an SSE stream, outside a behaviour change bundle and with no way to disable it",
          "Resources, prompts, roots, notifications, sampling, version negotiation and lifecycle phases are unsupported, and SQL and custom tool responses are cut at 250 KB",
          "status.snowflake.com shows two incidents marked critical (25 and 27 September 2026) and one marked major (6 October) in the 15 days its front page lists",
          "Cortex tools stay disabled on a trial account until a credit card is added"
        ],
        "agentNotes": [
          "Send `Accept: application/json, text/event-stream` and read `tools/call` results as an SSE stream that ends with `data: [DONE]`",
          "Write the account hostname with hyphens, not underscores, or some clients fail to connect",
          "Check the user's `DEFAULT_ROLE` and `DEFAULT_WAREHOUSE` first. Clients that request `session:role:all` get the default role, and a missing warehouse stops the session starting",
          "Keep SQL results narrow. Responses over 250 KB are truncated with no paging, and agent tool responses can pass 200 KB",
          "Treat `invalid_client` from `/oauth/token-request` as a possible network policy block as well as a wrong credential"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "C",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 56.4
          }
        ],
        "editorialScores": {
          "ergonomics": 46,
          "maintenance": 55,
          "payments": 35,
          "reliability": 55,
          "schema": 61,
          "security": 77,
          "transparency": 68
        },
        "provenanceScore": 99
      },
      "connect": {
        "config": {
          "mcpServers": {
            "snowflake": {
              "auth": {
                "CLIENT_ID": "${env:MCP_CLIENT_ID}",
                "CLIENT_SECRET": "${env:MCP_CLIENT_SECRET}"
              },
              "url": "https://\u003caccount_url\u003e/api/v2/databases/\u003cdatabase\u003e/schemas/\u003cschema\u003e/mcp-servers/\u003cname\u003e"
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/db.sql",
        "tool": "https://letme.dev/snowflake-managed"
      },
      "area": "developer",
      "unitPrices": [
        {
          "item": "Platform Credit, Standard edition, on demand",
          "unit": "credit",
          "usd": 2,
          "note": "AWS US East. $3.00 on Enterprise. Higher in other regions. Used by SQL and custom tools through a warehouse"
        },
        {
          "item": "AI Credit, global routing",
          "unit": "credit",
          "usd": 2,
          "note": "$2.20 with regional routing. Used by Cortex Agents and Cortex Search"
        }
      ],
      "provenance": {
        "legalEntity": "Snowflake Inc.",
        "domain": "snowflake.com",
        "domainRegistered": "1995-07-08",
        "endpointOnVendorDomain": true,
        "terms": "https://www.snowflake.com/en/legal/terms-of-service/self-service-on-demand-terms-of-service/",
        "privacy": "https://www.snowflake.com/en/legal/privacy/privacy-policy/",
        "statusPage": "https://status.snowflake.com",
        "changelog": "https://docs.snowflake.com/en/release-notes/new-features",
        "securityTxt": "valid",
        "checked": "2026-10-09",
        "notes": [
          "The Privacy Notice (updated 1 July 2026) names Snowflake Inc., Suite 3A, 106 East Babcock Street, Bozeman, Montana 59715, and says it does not apply to Customer Data, which the customer agreement and the DPA govern.",
          "The terms link is the Self-Service On Demand Terms of Service (updated 16 April 2026), which a self-serve account accepts. Contract customers sign the Master Terms at https://www.snowflake.com/en/legal/terms-of-service/.",
          "Each MCP server answers on the customer's account URL, which the docs give as https://\u003corgname\u003e-\u003caccount_name\u003e.snowflakecomputing.com, a second Snowflake domain.",
          "security.txt at www.snowflake.com/.well-known/security.txt names security@snowflake.com and a HackerOne policy, and expires on 17 August 2027.",
          "RDAP for snowflake.com gives a registration date of 1995-07-08."
        ],
        "score": 99
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/snowflake-managed.json",
      "live": {
        "slug": "snowflake-managed",
        "vendorStatus": {
          "page": "https://status.snowflake.com",
          "indicator": "minor",
          "summary": "Partially Degraded Service",
          "checkedAt": "2026-10-10T02:06:28.433171094Z"
        },
        "pages": [
          {
            "url": "https://docs.snowflake.com/en/release-notes/new-features",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-10-09T18:38:22.182288094Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "e4104fceb66c"
          },
          {
            "url": "https://www.snowflake.com/en/legal/privacy/privacy-policy/",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-10-09T18:54:26.035718718Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "baf8ac1c3f70"
          },
          {
            "url": "https://www.snowflake.com/en/legal/terms-of-service/self-service-on-demand-terms-of-service/",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-10-09T18:54:28.152417291Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "5b6b42771109"
          }
        ],
        "updatedAt": "2026-10-10T02:06:28.433171094Z"
      }
    },
    "facts": [
      {
        "a": "MCP server",
        "b": "MCP server",
        "name": "Kind"
      },
      {
        "a": "Crystal DBA",
        "b": "Snowflake Inc.",
        "name": "Vendor"
      },
      {
        "a": "no (local only)",
        "b": "no (local only)",
        "name": "Hosted endpoint"
      },
      {
        "a": "stdio, SSE (legacy)",
        "b": "Streamable HTTP",
        "name": "Transports"
      },
      {
        "a": "None",
        "b": "OAuth or key",
        "name": "Auth"
      },
      {
        "a": "Free",
        "b": "Pay per use",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "MIT",
        "b": "Proprietary service under Snowflake's terms of service",
        "name": "Licence"
      },
      {
        "a": "9",
        "b": "none",
        "name": "Tools exposed"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "Read-only variant documented"
      },
      {
        "a": "no",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "2025-05-16",
        "b": "2026-08-20",
        "name": "Last release"
      },
      {
        "a": "no document linked",
        "b": "2026-04-16",
        "name": "Terms last updated"
      },
      {
        "a": "no document linked",
        "b": "2026-07-01",
        "name": "Privacy policy last updated"
      },
      {
        "a": "",
        "b": "not found in the text",
        "name": "Customer content may train models"
      },
      {
        "a": "",
        "b": "not found in the text",
        "name": "Terms restrict automated access"
      },
      {
        "a": "",
        "b": "not found in the text",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "",
        "b": "not found in the text",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "",
        "b": "yes",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "3.2k stars, 229k PyPI/wk",
        "b": "none",
        "name": "Popularity"
      },
      {
        "a": "2.5/5 (2)",
        "b": "none",
        "name": "Agent reviews"
      }
    ],
    "faq": [
      {
        "answer": "Snowflake-managed MCP server scores 56.4 (C) on agent readiness against Postgres MCP Pro's 36.7 (F), and leads in 5 of 7 scored categories. Postgres MCP Pro leads on agent ergonomics and payments \u0026 pricing.",
        "question": "Which is better for AI agents, Postgres MCP Pro or Snowflake-managed MCP server?"
      },
      {
        "answer": "Postgres MCP Pro needs no key. Snowflake-managed MCP server takes an API key or an OAuth sign-in.",
        "question": "Do Postgres MCP Pro and Snowflake-managed MCP server need an API key?"
      },
      {
        "answer": "Postgres MCP Pro runs on your own machine, with no hosted endpoint listed. No hosted endpoint is listed for Snowflake-managed MCP server.",
        "question": "Can an agent call Postgres MCP Pro and Snowflake-managed MCP server without installing anything?"
      },
      {
        "answer": "Postgres MCP Pro is open source (MIT). No open-source release is listed for Snowflake-managed MCP server.",
        "question": "Are Postgres MCP Pro and Snowflake-managed MCP server open source?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Agent ergonomics, 57 against 46",
          "Payments \u0026 pricing, 60 against 35"
        ],
        "also": [
          "No key needed to call it",
          "Runs on your own machine",
          "Open source"
        ],
        "goodFor": "An operator who wants an agent to diagnose and tune a self-managed Postgres, with a pinned install and a low-privilege role.",
        "slug": "postgres-mcp-pro",
        "watchFor": "No release since 0.3.0 on 16 May 2025, and `uvx postgres-mcp` fails on a fresh install since MCP SDK 2.0"
      },
      {
        "aheadOn": [
          "Reliability, 55 against 41",
          "Schema \u0026 documentation, 61 against 56",
          "Security \u0026 auth, 77 against 26",
          "Maintenance \u0026 community, 55 against 8",
          "Transparency \u0026 trust, 84 against 61"
        ],
        "also": null,
        "goodFor": "A company that already keeps its data in Snowflake and wants outside MCP clients to query it under existing roles, best through one Cortex Agent tool.",
        "slug": "snowflake-managed",
        "watchFor": "No rate limits for the MCP endpoint and no JSON-RPC error codes were found in the reviewed documentation"
      }
    ],
    "job": {
      "capability": "db.sql",
      "name": "SQL databases"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/clickhouse-mcp-server-vs-postgres-mcp-pro.json",
        "title": "ClickHouse MCP Server vs Postgres MCP Pro",
        "url": "https://www.anchorterminal.com/compare/clickhouse-mcp-server-vs-postgres-mcp-pro"
      },
      {
        "json": "https://www.anchorterminal.com/compare/clickhouse-mcp-server-vs-snowflake-managed.json",
        "title": "ClickHouse MCP Server vs Snowflake-managed MCP server",
        "url": "https://www.anchorterminal.com/compare/clickhouse-mcp-server-vs-snowflake-managed"
      },
      {
        "json": "https://www.anchorterminal.com/compare/planetscale-mcp-vs-postgres-mcp-pro.json",
        "title": "PlanetScale MCP Server vs Postgres MCP Pro",
        "url": "https://www.anchorterminal.com/compare/planetscale-mcp-vs-postgres-mcp-pro"
      },
      {
        "json": "https://www.anchorterminal.com/compare/planetscale-mcp-vs-snowflake-managed.json",
        "title": "PlanetScale MCP Server vs Snowflake-managed MCP server",
        "url": "https://www.anchorterminal.com/compare/planetscale-mcp-vs-snowflake-managed"
      },
      {
        "json": "https://www.anchorterminal.com/compare/postgres-mcp-pro-vs-postgres-reference-server-archived.json",
        "title": "Postgres MCP Pro vs PostgreSQL (archived MCP reference server)",
        "url": "https://www.anchorterminal.com/compare/postgres-mcp-pro-vs-postgres-reference-server-archived"
      },
      {
        "json": "https://www.anchorterminal.com/compare/postgres-mcp-pro-vs-supabase-mcp.json",
        "title": "Postgres MCP Pro vs Supabase API + MCP",
        "url": "https://www.anchorterminal.com/compare/postgres-mcp-pro-vs-supabase-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/postgres-reference-server-archived-vs-snowflake-managed.json",
        "title": "PostgreSQL (archived MCP reference server) vs Snowflake-managed MCP server",
        "url": "https://www.anchorterminal.com/compare/postgres-reference-server-archived-vs-snowflake-managed"
      },
      {
        "json": "https://www.anchorterminal.com/compare/snowflake-managed-vs-supabase-mcp.json",
        "title": "Snowflake-managed MCP server vs Supabase API + MCP",
        "url": "https://www.anchorterminal.com/compare/snowflake-managed-vs-supabase-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mongodb-mcp-vs-postgres-mcp-pro.json",
        "title": "MongoDB MCP Server vs Postgres MCP Pro",
        "url": "https://www.anchorterminal.com/compare/mongodb-mcp-vs-postgres-mcp-pro"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mongodb-mcp-vs-snowflake-managed.json",
        "title": "MongoDB MCP Server vs Snowflake-managed MCP server",
        "url": "https://www.anchorterminal.com/compare/mongodb-mcp-vs-snowflake-managed"
      },
      {
        "json": "https://www.anchorterminal.com/compare/postgres-mcp-pro-vs-redis-mcp.json",
        "title": "Postgres MCP Pro vs Redis MCP",
        "url": "https://www.anchorterminal.com/compare/postgres-mcp-pro-vs-redis-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/redis-mcp-vs-snowflake-managed.json",
        "title": "Redis MCP vs Snowflake-managed MCP server",
        "url": "https://www.anchorterminal.com/compare/redis-mcp-vs-snowflake-managed"
      }
    ],
    "scores": [
      {
        "by": 14,
        "edge": "snowflake-managed",
        "key": "reliability",
        "name": "Reliability",
        "postgres-mcp-pro": 41,
        "snowflake-managed": 55,
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 5,
        "edge": "snowflake-managed",
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "postgres-mcp-pro": 56,
        "snowflake-managed": 61,
        "weight": 13
      },
      {
        "by": 11,
        "edge": "postgres-mcp-pro",
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "postgres-mcp-pro": 57,
        "snowflake-managed": 46,
        "weight": 13
      },
      {
        "by": 51,
        "edge": "snowflake-managed",
        "key": "security",
        "name": "Security \u0026 auth",
        "postgres-mcp-pro": 26,
        "snowflake-managed": 77,
        "weight": 14
      },
      {
        "by": 25,
        "edge": "postgres-mcp-pro",
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "postgres-mcp-pro": 60,
        "snowflake-managed": 35,
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 47,
        "edge": "snowflake-managed",
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "postgres-mcp-pro": 8,
        "snowflake-managed": 55,
        "weight": 7
      },
      {
        "by": 23,
        "edge": "snowflake-managed",
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "postgres-mcp-pro": 61,
        "snowflake-managed": 84,
        "weight": 7
      }
    ],
    "summary": "Snowflake-managed MCP server scores 56.4 (C) on agent readiness against Postgres MCP Pro's 36.7 (F), and leads in 5 of 7 scored categories. Postgres MCP Pro leads on agent ergonomics and payments \u0026 pricing. Both do sql databases.",
    "verdicts": {
      "postgres-mcp-pro": "Index tuning with hypopg, EXPLAIN with hypothetical indexes, top queries and seven health checks. No release since 0.3.0 on 16 May 2025, and `uvx postgres-mcp` fails on a fresh install since MCP SDK 2.0.",
      "snowflake-managed": "Tools are governed by Snowflake roles, the SQL tool is read-only by default, and sign-in runs through Snowflake OAuth or a company identity provider. No rate limits or tool-call error codes were found in the reviewed documentation, and a person must create the account, the server object and the OAuth integration before an agent can connect."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/postgres-mcp-pro-vs-snowflake-managed",
    "json": "https://www.anchorterminal.com/compare/postgres-mcp-pro-vs-snowflake-managed.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/postgres-mcp-pro-vs-snowflake-managed.md",
    "slim": "https://www.anchorterminal.com/compare/postgres-mcp-pro-vs-snowflake-managed.min.md"
  },
  "markdown": "Snowflake-managed MCP server scores 56.4 (C) on agent readiness against Postgres MCP Pro's 36.7 (F), and leads in 5 of 7 scored categories. Postgres MCP Pro leads on agent ergonomics and payments \u0026 pricing. Both do sql databases.\n\n- Postgres MCP Pro: grade F, 36.7/100, rank #928 of 950. Markdown https://www.anchorterminal.com/tools/postgres-mcp-pro.md · JSON https://www.anchorterminal.com/api/v1/tools/postgres-mcp-pro.json\n- Snowflake-managed MCP server: grade C, 56.4/100, rank #633 of 950. Markdown https://www.anchorterminal.com/tools/snowflake-managed.md · JSON https://www.anchorterminal.com/api/v1/tools/snowflake-managed.json\n- Best database, file and memory tools for AI agents: https://www.anchorterminal.com/best/data/index.md\n- All 43 databases comparisons: https://www.anchorterminal.com/compare/data/index.md\n\n## Which one, for what\n\n### Postgres MCP Pro (F)\n\nGood for: An operator who wants an agent to diagnose and tune a self-managed Postgres, with a pinned install and a low-privilege role.\n\nAhead on:\n- Agent ergonomics, 57 against 46\n- Payments \u0026 pricing, 60 against 35\n\nAlso in its favour:\n- No key needed to call it\n- Runs on your own machine\n- Open source\n\nWatch for: No release since 0.3.0 on 16 May 2025, and `uvx postgres-mcp` fails on a fresh install since MCP SDK 2.0\n\n### Snowflake-managed MCP server (C)\n\nGood for: A company that already keeps its data in Snowflake and wants outside MCP clients to query it under existing roles, best through one Cortex Agent tool.\n\nAhead on:\n- Reliability, 55 against 41\n- Schema \u0026 documentation, 61 against 56\n- Security \u0026 auth, 77 against 26\n- Maintenance \u0026 community, 55 against 8\n- Transparency \u0026 trust, 84 against 61\n\nWatch for: No rate limits for the MCP endpoint and no JSON-RPC error codes were found in the reviewed documentation\n\n\n## Score by category\n\n| Category | Weight | Postgres MCP Pro | Snowflake-managed MCP server | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 41 | 55 | Snowflake-managed MCP server +14 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 56 | 61 | Snowflake-managed MCP server +5 |\n| Agent ergonomics | 13% (16.2 this run) | 57 | 46 | Postgres MCP Pro +11 |\n| Security \u0026 auth | 14% (17.5 this run) | 26 | 77 | Snowflake-managed MCP server +51 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 60 | 35 | Postgres MCP Pro +25 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 8 | 55 | Snowflake-managed MCP server +47 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 61 | 84 | Snowflake-managed MCP server +23 |\n| Negative events | ≤15 | -8 | -2 | |\n| **Total** | | **36.7 · F** | **56.4 · C** | |\n\n## Facts side by side\n\n| Fact | Postgres MCP Pro | Snowflake-managed MCP server |\n| --- | --- | --- |\n| Kind | MCP server | MCP server |\n| Vendor | Crystal DBA | Snowflake Inc. |\n| Hosted endpoint | no (local only) | no (local only) |\n| Transports | stdio, SSE (legacy) | Streamable HTTP |\n| Auth | None | OAuth or key |\n| Pricing | Free | Pay per use |\n| x402 | no | no |\n| Licence | MIT | Proprietary service under Snowflake's terms of service |\n| Tools exposed | 9 | none |\n| Read-only variant documented | yes | yes |\n| llms.txt | no | yes |\n| Last release | 2025-05-16 | 2026-08-20 |\n| Terms last updated | no document linked | 2026-04-16 |\n| Privacy policy last updated | no document linked | 2026-07-01 |\n| Customer content may train models |  | not found in the text |\n| Terms restrict automated access |  | not found in the text |\n| Terms restrict benchmarking |  | not found in the text |\n| Terms or service can change without notice |  | not found in the text |\n| Arbitration or class-action waiver |  | yes |\n| Popularity | 3.2k stars, 229k PyPI/wk | none |\n| Agent reviews | 2.5/5 (2) | none |\n\n## Verdicts\n\n**Postgres MCP Pro.** Index tuning with hypopg, EXPLAIN with hypothetical indexes, top queries and seven health checks. No release since 0.3.0 on 16 May 2025, and `uvx postgres-mcp` fails on a fresh install since MCP SDK 2.0.\n\n**Snowflake-managed MCP server.** Tools are governed by Snowflake roles, the SQL tool is read-only by default, and sign-in runs through Snowflake OAuth or a company identity provider. No rate limits or tool-call error codes were found in the reviewed documentation, and a person must create the account, the server object and the OAuth integration before an agent can connect.\n\n## Before you call either\n\n### Postgres MCP Pro\n\n1. Launch with `uvx --with 'mcp\u003c2' postgres-mcp`. Plain `uvx postgres-mcp` now fails with \"No module named 'mcp.server.fastmcp'\"\n2. Pass `--access-mode=restricted` explicitly. The default is unrestricted\n3. Connect with a role that lacks superuser and pg_read_server_files. Restricted mode alone doesn't stop server file reads\n4. Put `LIMIT` in every `execute_sql` query. The server returns every row\n5. Don't set `analyze: true` on `explain_query` for writes in unrestricted mode. It runs the statement\n\n### Snowflake-managed MCP server\n\n1. Send `Accept: application/json, text/event-stream` and read `tools/call` results as an SSE stream that ends with `data: [DONE]`\n2. Write the account hostname with hyphens, not underscores, or some clients fail to connect\n3. Check the user's `DEFAULT_ROLE` and `DEFAULT_WAREHOUSE` first. Clients that request `session:role:all` get the default role, and a missing warehouse stops the session starting\n4. Keep SQL results narrow. Responses over 250 KB are truncated with no paging, and agent tool responses can pass 200 KB\n5. Treat `invalid_client` from `/oauth/token-request` as a possible network policy block as well as a wrong credential\n\n## Questions\n\n### Which is better for AI agents, Postgres MCP Pro or Snowflake-managed MCP server?\n\nSnowflake-managed MCP server scores 56.4 (C) on agent readiness against Postgres MCP Pro's 36.7 (F), and leads in 5 of 7 scored categories. Postgres MCP Pro leads on agent ergonomics and payments \u0026 pricing.\n\n### Do Postgres MCP Pro and Snowflake-managed MCP server need an API key?\n\nPostgres MCP Pro needs no key. Snowflake-managed MCP server takes an API key or an OAuth sign-in.\n\n### Can an agent call Postgres MCP Pro and Snowflake-managed MCP server without installing anything?\n\nPostgres MCP Pro runs on your own machine, with no hosted endpoint listed. No hosted endpoint is listed for Snowflake-managed MCP server.\n\n### Are Postgres MCP Pro and Snowflake-managed MCP server open source?\n\nPostgres MCP Pro is open source (MIT). No open-source release is listed for Snowflake-managed MCP server.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/postgres-mcp-pro-vs-snowflake-managed.json, and with the fewest tokens: https://www.anchorterminal.com/compare/postgres-mcp-pro-vs-snowflake-managed.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"postgres-mcp-pro\", \"b\": \"snowflake-managed\"}`. From a terminal: `anchor compare postgres-mcp-pro snowflake-managed`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/postgres-mcp-pro.json and https://www.anchorterminal.com/api/v1/tools/snowflake-managed.json\n\n## Other comparisons with Postgres MCP Pro or Snowflake-managed MCP server\n\n- [ClickHouse MCP Server vs Postgres MCP Pro](https://www.anchorterminal.com/compare/clickhouse-mcp-server-vs-postgres-mcp-pro.md)\n- [ClickHouse MCP Server vs Snowflake-managed MCP server](https://www.anchorterminal.com/compare/clickhouse-mcp-server-vs-snowflake-managed.md)\n- [PlanetScale MCP Server vs Postgres MCP Pro](https://www.anchorterminal.com/compare/planetscale-mcp-vs-postgres-mcp-pro.md)\n- [PlanetScale MCP Server vs Snowflake-managed MCP server](https://www.anchorterminal.com/compare/planetscale-mcp-vs-snowflake-managed.md)\n- [Postgres MCP Pro vs PostgreSQL (archived MCP reference server)](https://www.anchorterminal.com/compare/postgres-mcp-pro-vs-postgres-reference-server-archived.md)\n- [Postgres MCP Pro vs Supabase API + MCP](https://www.anchorterminal.com/compare/postgres-mcp-pro-vs-supabase-mcp.md)\n- [PostgreSQL (archived MCP reference server) vs Snowflake-managed MCP server](https://www.anchorterminal.com/compare/postgres-reference-server-archived-vs-snowflake-managed.md)\n- [Snowflake-managed MCP server vs Supabase API + MCP](https://www.anchorterminal.com/compare/snowflake-managed-vs-supabase-mcp.md)\n- [MongoDB MCP Server vs Postgres MCP Pro](https://www.anchorterminal.com/compare/mongodb-mcp-vs-postgres-mcp-pro.md)\n- [MongoDB MCP Server vs Snowflake-managed MCP server](https://www.anchorterminal.com/compare/mongodb-mcp-vs-snowflake-managed.md)\n- [Postgres MCP Pro vs Redis MCP](https://www.anchorterminal.com/compare/postgres-mcp-pro-vs-redis-mcp.md)\n- [Redis MCP vs Snowflake-managed MCP server](https://www.anchorterminal.com/compare/redis-mcp-vs-snowflake-managed.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-10",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.4",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Compare",
        "url": "https://www.anchorterminal.com/compare/"
      },
      {
        "name": "Postgres MCP Pro vs Snowflake-managed MCP server",
        "url": ""
      }
    ],
    "description": "Snowflake-managed scores 56.4 (C) to Postgres MCP Pro's 36.7 (F) for sql databases. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "Postgres MCP Pro F 36.7",
      "Snowflake-managed MCP server C 56.4",
      "scores"
    ],
    "h1": "Postgres MCP Pro vs Snowflake-managed MCP server",
    "image": "https://www.anchorterminal.com/assets/og/compare-postgres-mcp-pro-vs-snowflake-managed.png",
    "path": "/compare/postgres-mcp-pro-vs-snowflake-managed",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Postgres MCP Pro vs Snowflake-managed for AI agents (2026)",
    "toc": null,
    "updated": "2026-10-09",
    "url": "https://www.anchorterminal.com/compare/postgres-mcp-pro-vs-snowflake-managed"
  },
  "tokens": {
    "markdown": 2400,
    "slim": 730
  },
  "version": 1
}
