{
  "data": {
    "a": {
      "slug": "planetscale-mcp",
      "name": "PlanetScale MCP Server",
      "vendor": "PlanetScale",
      "vendorUrl": "https://planetscale.com",
      "kind": "mcp",
      "category": "data",
      "summary": "PlanetScale's hosted MCP server connects agents to PlanetScale Postgres, Vitess and Neki databases. Its 25 tools cover organisations, branches, schema, read and write SQL, Insights data, Postgres logs, invoices and documentation search, with OAuth or a service token.",
      "url": "https://www.anchorterminal.com/tools/planetscale-mcp",
      "markdownUrl": "https://www.anchorterminal.com/tools/planetscale-mcp.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/planetscale-mcp.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/planetscale-mcp.json",
      "repo": "https://github.com/planetscale/mcp-server",
      "license": "Proprietary hosted service under PlanetScale's Terms of Service. The 13 tools in planetscale/mcp-server are Apache-2.0",
      "transports": [
        "streamable-http"
      ],
      "remoteUrl": "https://mcp.pscale.dev/mcp/planetscale",
      "packages": [],
      "auth": "mixed",
      "authNotes": "OAuth by default. Each MCP client registers as an OAuth application and the person signs in and chooses no, read-only or full access per organisation or per database, with payment-method access set separately. For CI and headless clients a service token secret (`pscale_tkn_`) goes in an `Authorization: Bearer` header, with permissions granted on the token in organisation settings. Claude.ai, Claude for desktop, Claude Managed Agents and Notion accept OAuth only. Access is self-serve after a person signs up.",
      "pricing": "paid",
      "pricingNotes": "No charge for the MCP server was found beyond the database plan, and a PlanetScale database is needed for most tools. No free tier or trial was found, and all plans need a payment method on file. Clusters are priced by month, from $5 for a single-node Postgres PS-5 in AWS us-east-1, with storage, backups and egress billed separately (https://planetscale.com/pricing.md, checked 2026-10-09).",
      "priceSummary": "$5 / mo",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the MCP docs, the pricing page or the tool source (checked 2026-10-09).",
        "endpoints": []
      },
      "toolCount": 25,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-09"
      },
      "docsUrl": "https://planetscale.com/docs/mcp-server",
      "llmsTxt": "https://planetscale.com/docs/llms.txt",
      "openapi": "https://planetscale.com/docs/openapi.yaml",
      "registryName": "io.github.planetscale/mcp-server",
      "capabilities": [
        "db.sql",
        "db.admin"
      ],
      "tags": [
        "official",
        "hosted",
        "mcp",
        "oauth",
        "read-only-mode",
        "paid",
        "postgres",
        "mysql",
        "llms-txt",
        "openapi",
        "status-page",
        "soc2",
        "database"
      ],
      "lastRelease": "2026-10-08",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 66.4,
        "grade": "B",
        "agentReady": false,
        "rank": 292,
        "ranked": true,
        "rankOf": 950,
        "categoryRank": 5,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 74,
          "maintenance": 80,
          "payments": 15,
          "reliability": 63,
          "schema": 82,
          "security": 77,
          "transparency": 70
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-09"
        },
        "negative": 0,
        "verdict": "OAuth scopes set no, read-only or full database access per organisation or database, each query runs on a credential created and deleted for that call, and an insights-only endpoint drops both SQL tools. Destructive statements are gated by a flag the model sets itself, no rate limit was found, and every plan needs a card.",
        "bestFor": "Agents that inspect and tune an existing PlanetScale database, using Insights, schema recommendations, error patterns and logs, with SQL when granted.",
        "strengths": [
          "OAuth scopes grant no, read-only or full access per organisation or per database, and administrators can cap query access for all members since 8 October 2026",
          "Each query uses a database credential created for that call and deleted afterwards, and read queries run under a reader role",
          "An insights-only endpoint omits `planetscale_execute_read_query` and `planetscale_execute_write_query`",
          "The 13 tools published as source carry `readOnlyHint` and `destructiveHint`, checked by a test in the repository",
          "Published SLA of 99.99 per cent for single-region and 99.999 per cent for multi-region clusters, with service credits"
        ],
        "weaknesses": [
          "DELETE and DDL confirmation is a `confirm_destructive` flag the model sets, not a prompt the client shows the person",
          "The write-query check matches the start of the statement by regular expression, so a statement behind a leading comment or a type it does not list is not matched, per the source",
          "No rate limit for the MCP server or the API was found. The OpenAPI file lists 429 with no figures",
          "No free tier. The billing docs say every plan needs a payment method on file",
          "The hosted server and 12 of its 25 tools are closed. The repository has no tags, changelog or CI workflow",
          "PlanetScale's website terms forbid robots and other automatic retrieval of the site. Recorded as a fact, and it matters before any probe is run"
        ],
        "agentNotes": [
          "Use `https://mcp.pscale.dev/mcp/planetscale-insights-only` when the task needs no SQL. It omits both query tools",
          "Pass `organization`, `database` and `branch` on every query call. Record them in `AGENTS.md` to skip the listing calls",
          "Show the person the exact DELETE or DDL statement and get approval before setting `confirm_destructive: true`",
          "Keep queries under 50 seconds and add your own `LIMIT`. The query tools cancel at 50 seconds and return every row",
          "For a service token send `Authorization: Bearer pscale_tkn_...` with the secret only. The `id:secret` form is rejected"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "B",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 66.4
          }
        ],
        "editorialScores": {
          "ergonomics": 74,
          "maintenance": 80,
          "payments": 15,
          "reliability": 63,
          "schema": 82,
          "security": 77,
          "transparency": 66
        },
        "provenanceScore": 73
      },
      "connect": {
        "claudeCode": "claude mcp add --transport http \"planetscale\" https://mcp.pscale.dev/mcp/planetscale",
        "config": {
          "mcpServers": {
            "planetscale": {
              "url": "https://mcp.pscale.dev/mcp/planetscale"
            }
          }
        },
        "headless": {
          "mcpServers": {
            "planetscale": {
              "headers": {
                "Authorization": "Bearer ${env:PLANETSCALE_API_TOKEN}"
              },
              "url": "https://mcp.pscale.dev/mcp/planetscale"
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/db.sql",
        "tool": "https://letme.dev/planetscale-mcp"
      },
      "area": "developer",
      "unitPrices": [
        {
          "item": "Postgres PS-5, single node",
          "unit": "month",
          "usd": 5,
          "note": "AWS us-east-1, storage, backups and egress extra"
        },
        {
          "item": "Postgres PS-5, primary and two replicas",
          "unit": "month",
          "usd": 15,
          "note": "AWS us-east-1, storage, backups and egress extra"
        },
        {
          "item": "Vitess PS-10, primary and two replicas",
          "unit": "month",
          "usd": 39,
          "note": "AWS us-east-1, storage extra"
        }
      ],
      "provenance": {
        "legalEntity": "PlanetScale, Inc.",
        "domain": "planetscale.com",
        "domainRegistered": "2011-10-06",
        "endpointOnVendorDomain": false,
        "terms": "https://planetscale.com/legal/agreement",
        "privacy": "https://planetscale.com/legal/privacy",
        "statusPage": "https://www.planetscalestatus.com",
        "changelog": "https://planetscale.com/changelog",
        "securityTxt": "none",
        "checked": "2026-10-09",
        "notes": [
          "The MCP server answers at mcp.pscale.dev, a second domain. PlanetScale's own docs name the host, and its response headers name Gram, Speakeasy's hosting platform.",
          "`terms` is the Terms of Service (last updated 25 August 2026), which the Website Terms of Service name as governing the product. The website terms at /legal/siteterms are a separate document.",
          "The Privacy Policy (last updated 23 July 2026) names PlanetScale Inc. and says data processed for a customer as a processor is governed by the DPA, which was not read.",
          "planetscale.com/.well-known/security.txt returns 404. The docs publish a vulnerability disclosure policy with security@planetscale.com.",
          "The site footer and the terms name PlanetScale, Inc., 535 Mission Street, San Francisco.",
          "RDAP for planetscale.com gives a registration date of 2011-10-06 and Squarespace Domains II LLC as registrar.",
          "robots.txt on planetscale.com allows every path with `Content-Signal: ai-input=yes`. robots.txt on mcp.pscale.dev, www.planetscalestatus.com and registry.modelcontextprotocol.io answered 404, and on rdap.verisign.com 400."
        ],
        "score": 73
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/planetscale-mcp.json",
      "live": {
        "slug": "planetscale-mcp",
        "probe": {
          "target": "https://mcp.pscale.dev/mcp/planetscale",
          "method": "mcp-initialize",
          "lastAt": "2026-10-10T02:07:20.717498127Z",
          "lastOk": true,
          "lastStatus": 401,
          "lastMs": 491,
          "lastNote": "asks for credentials",
          "authRequired": true,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 478,
          "p95ms24h": 565,
          "samples24h": 107,
          "samples30d": 107,
          "days": [
            {
              "date": "2026-10-09",
              "probes": 85,
              "ok": 85
            },
            {
              "date": "2026-10-10",
              "probes": 22,
              "ok": 22
            }
          ]
        },
        "vendorStatus": {
          "page": "https://www.planetscalestatus.com",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-10-10T02:06:24.093500184Z"
        },
        "githubStars": 5,
        "pages": [
          {
            "url": "https://planetscale.com/changelog",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-10-09T18:43:26.437312947Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "20717b5a337c"
          },
          {
            "url": "https://planetscale.com/pricing.md",
            "kind": "pricing",
            "status": 200,
            "checkedAt": "2026-10-09T18:43:32.591327194Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "11e88e07e991"
          },
          {
            "url": "https://planetscale.com/legal/privacy",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-10-09T18:43:30.563115979Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "cfed82900758"
          },
          {
            "url": "https://planetscale.com/legal/agreement",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-10-09T18:43:28.549006312Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "e5e3ad1fe941"
          }
        ],
        "mcpTools": {
          "url": "https://mcp.pscale.dev/mcp/planetscale",
          "checkedAt": "2026-10-09T21:40:47.427881901Z",
          "status": "auth",
          "note": "asks for credentials before listing its tools",
          "changedAt": "2026-10-09T21:40:47.427881901Z"
        },
        "updatedAt": "2026-10-10T02:07:20.717498127Z"
      }
    },
    "answer": "PlanetScale MCP Server scores 66.4 (B) on agent readiness against Snowflake-managed MCP server's 56.4 (C), and leads in 4 of 7 scored categories. Snowflake-managed MCP server leads on payments \u0026 pricing and transparency \u0026 trust.",
    "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": "PlanetScale",
        "b": "Snowflake Inc.",
        "name": "Vendor"
      },
      {
        "a": "https://mcp.pscale.dev/mcp/planetscale",
        "b": "no (local only)",
        "name": "Hosted endpoint"
      },
      {
        "a": "Streamable HTTP",
        "b": "Streamable HTTP",
        "name": "Transports"
      },
      {
        "a": "OAuth or key",
        "b": "OAuth or key",
        "name": "Auth"
      },
      {
        "a": "Paid",
        "b": "Pay per use",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "Proprietary hosted service under PlanetScale's Terms of Service. The 13 tools in planetscale/mcp-server are Apache-2.0",
        "b": "Proprietary service under Snowflake's terms of service",
        "name": "Licence"
      },
      {
        "a": "25",
        "b": "none",
        "name": "Tools exposed"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "io.github.planetscale/mcp-server",
        "b": "not listed",
        "name": "MCP registry"
      },
      {
        "a": "2026-10-08",
        "b": "2026-08-20",
        "name": "Last release"
      },
      {
        "a": "no date given",
        "b": "2026-04-16",
        "name": "Terms last updated"
      },
      {
        "a": "no date given",
        "b": "2026-07-01",
        "name": "Privacy policy last updated"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Customer content may train models"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Terms restrict automated access"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "not found in the text",
        "b": "yes",
        "name": "Arbitration or class-action waiver"
      }
    ],
    "faq": [
      {
        "answer": "PlanetScale MCP Server scores 66.4 (B) on agent readiness against Snowflake-managed MCP server's 56.4 (C), and leads in 4 of 7 scored categories. Snowflake-managed MCP server leads on payments \u0026 pricing and transparency \u0026 trust.",
        "question": "Which is better for AI agents, PlanetScale MCP Server or Snowflake-managed MCP server?"
      },
      {
        "answer": "Both take an API key or an OAuth sign-in.",
        "question": "Do PlanetScale MCP Server and Snowflake-managed MCP server need an API key?"
      },
      {
        "answer": "PlanetScale MCP Server has a hosted endpoint at https://mcp.pscale.dev/mcp/planetscale. No hosted endpoint is listed for Snowflake-managed MCP server.",
        "question": "Can an agent call PlanetScale MCP Server and Snowflake-managed MCP server without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Reliability, 63 against 55",
          "Schema \u0026 documentation, 82 against 61",
          "Agent ergonomics, 74 against 46",
          "Maintenance \u0026 community, 80 against 55"
        ],
        "also": [
          "A hosted endpoint, with nothing to install"
        ],
        "goodFor": "Agents that inspect and tune an existing PlanetScale database, using Insights, schema recommendations, error patterns and logs, with SQL when granted.",
        "slug": "planetscale-mcp",
        "watchFor": "DELETE and DDL confirmation is a `confirm_destructive` flag the model sets, not a prompt the client shows the person"
      },
      {
        "aheadOn": [
          "Payments \u0026 pricing, 35 against 15",
          "Transparency \u0026 trust, 84 against 70"
        ],
        "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-planetscale-mcp.json",
        "title": "ClickHouse MCP Server vs PlanetScale MCP Server",
        "url": "https://www.anchorterminal.com/compare/clickhouse-mcp-server-vs-planetscale-mcp"
      },
      {
        "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-postgres-reference-server-archived.json",
        "title": "PlanetScale MCP Server vs PostgreSQL (archived MCP reference server)",
        "url": "https://www.anchorterminal.com/compare/planetscale-mcp-vs-postgres-reference-server-archived"
      },
      {
        "json": "https://www.anchorterminal.com/compare/planetscale-mcp-vs-supabase-mcp.json",
        "title": "PlanetScale MCP Server vs Supabase API + MCP",
        "url": "https://www.anchorterminal.com/compare/planetscale-mcp-vs-supabase-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/postgres-mcp-pro-vs-snowflake-managed.json",
        "title": "Postgres MCP Pro vs Snowflake-managed MCP server",
        "url": "https://www.anchorterminal.com/compare/postgres-mcp-pro-vs-snowflake-managed"
      },
      {
        "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-planetscale-mcp.json",
        "title": "MongoDB MCP Server vs PlanetScale MCP Server",
        "url": "https://www.anchorterminal.com/compare/mongodb-mcp-vs-planetscale-mcp"
      },
      {
        "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/planetscale-mcp-vs-redis-mcp.json",
        "title": "PlanetScale MCP Server vs Redis MCP",
        "url": "https://www.anchorterminal.com/compare/planetscale-mcp-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": 8,
        "edge": "planetscale-mcp",
        "key": "reliability",
        "name": "Reliability",
        "planetscale-mcp": 63,
        "snowflake-managed": 55,
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 21,
        "edge": "planetscale-mcp",
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "planetscale-mcp": 82,
        "snowflake-managed": 61,
        "weight": 13
      },
      {
        "by": 28,
        "edge": "planetscale-mcp",
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "planetscale-mcp": 74,
        "snowflake-managed": 46,
        "weight": 13
      },
      {
        "by": 0,
        "edge": "",
        "key": "security",
        "name": "Security \u0026 auth",
        "planetscale-mcp": 77,
        "snowflake-managed": 77,
        "weight": 14
      },
      {
        "by": 20,
        "edge": "snowflake-managed",
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "planetscale-mcp": 15,
        "snowflake-managed": 35,
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 25,
        "edge": "planetscale-mcp",
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "planetscale-mcp": 80,
        "snowflake-managed": 55,
        "weight": 7
      },
      {
        "by": 14,
        "edge": "snowflake-managed",
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "planetscale-mcp": 70,
        "snowflake-managed": 84,
        "weight": 7
      }
    ],
    "summary": "PlanetScale MCP Server scores 66.4 (B) on agent readiness against Snowflake-managed MCP server's 56.4 (C), and leads in 4 of 7 scored categories. Snowflake-managed MCP server leads on payments \u0026 pricing and transparency \u0026 trust. Both do sql databases.",
    "verdicts": {
      "planetscale-mcp": "OAuth scopes set no, read-only or full database access per organisation or database, each query runs on a credential created and deleted for that call, and an insights-only endpoint drops both SQL tools. Destructive statements are gated by a flag the model sets itself, no rate limit was found, and every plan needs a card.",
      "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/planetscale-mcp-vs-snowflake-managed",
    "json": "https://www.anchorterminal.com/compare/planetscale-mcp-vs-snowflake-managed.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/planetscale-mcp-vs-snowflake-managed.md",
    "slim": "https://www.anchorterminal.com/compare/planetscale-mcp-vs-snowflake-managed.min.md"
  },
  "markdown": "PlanetScale MCP Server scores 66.4 (B) on agent readiness against Snowflake-managed MCP server's 56.4 (C), and leads in 4 of 7 scored categories. Snowflake-managed MCP server leads on payments \u0026 pricing and transparency \u0026 trust. Both do sql databases.\n\n- PlanetScale MCP Server: grade B, 66.4/100, rank #292 of 950. Markdown https://www.anchorterminal.com/tools/planetscale-mcp.md · JSON https://www.anchorterminal.com/api/v1/tools/planetscale-mcp.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### PlanetScale MCP Server (B)\n\nGood for: Agents that inspect and tune an existing PlanetScale database, using Insights, schema recommendations, error patterns and logs, with SQL when granted.\n\nAhead on:\n- Reliability, 63 against 55\n- Schema \u0026 documentation, 82 against 61\n- Agent ergonomics, 74 against 46\n- Maintenance \u0026 community, 80 against 55\n\nAlso in its favour:\n- A hosted endpoint, with nothing to install\n\nWatch for: DELETE and DDL confirmation is a `confirm_destructive` flag the model sets, not a prompt the client shows the person\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- Payments \u0026 pricing, 35 against 15\n- Transparency \u0026 trust, 84 against 70\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 | PlanetScale MCP Server | Snowflake-managed MCP server | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 63 | 55 | PlanetScale MCP Server +8 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 82 | 61 | PlanetScale MCP Server +21 |\n| Agent ergonomics | 13% (16.2 this run) | 74 | 46 | PlanetScale MCP Server +28 |\n| Security \u0026 auth | 14% (17.5 this run) | 77 | 77 | even |\n| Payments \u0026 pricing | 10% (12.5 this run) | 15 | 35 | Snowflake-managed MCP server +20 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 80 | 55 | PlanetScale MCP Server +25 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 70 | 84 | Snowflake-managed MCP server +14 |\n| Negative events | ≤15 | 0 | -2 | |\n| **Total** | | **66.4 · B** | **56.4 · C** | |\n\n## Facts side by side\n\n| Fact | PlanetScale MCP Server | Snowflake-managed MCP server |\n| --- | --- | --- |\n| Kind | MCP server | MCP server |\n| Vendor | PlanetScale | Snowflake Inc. |\n| Hosted endpoint | `https://mcp.pscale.dev/mcp/planetscale` | no (local only) |\n| Transports | Streamable HTTP | Streamable HTTP |\n| Auth | OAuth or key | OAuth or key |\n| Pricing | Paid | Pay per use |\n| x402 | no | no |\n| Licence | Proprietary hosted service under PlanetScale's Terms of Service. The 13 tools in planetscale/mcp-server are Apache-2.0 | Proprietary service under Snowflake's terms of service |\n| Tools exposed | 25 | none |\n| Read-only variant documented | yes | yes |\n| llms.txt | yes | yes |\n| MCP registry | `io.github.planetscale/mcp-server` | not listed |\n| Last release | 2026-10-08 | 2026-08-20 |\n| Terms last updated | no date given | 2026-04-16 |\n| Privacy policy last updated | no date given | 2026-07-01 |\n| Customer content may train models | not found in the text | not found in the text |\n| Terms restrict automated access | not found in the text | not found in the text |\n| Terms restrict benchmarking | not found in the text | not found in the text |\n| Terms or service can change without notice | not found in the text | not found in the text |\n| Arbitration or class-action waiver | not found in the text | yes |\n\n## Verdicts\n\n**PlanetScale MCP Server.** OAuth scopes set no, read-only or full database access per organisation or database, each query runs on a credential created and deleted for that call, and an insights-only endpoint drops both SQL tools. Destructive statements are gated by a flag the model sets itself, no rate limit was found, and every plan needs a card.\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### PlanetScale MCP Server\n\n1. Use `https://mcp.pscale.dev/mcp/planetscale-insights-only` when the task needs no SQL. It omits both query tools\n2. Pass `organization`, `database` and `branch` on every query call. Record them in `AGENTS.md` to skip the listing calls\n3. Show the person the exact DELETE or DDL statement and get approval before setting `confirm_destructive: true`\n4. Keep queries under 50 seconds and add your own `LIMIT`. The query tools cancel at 50 seconds and return every row\n5. For a service token send `Authorization: Bearer pscale_tkn_...` with the secret only. The `id:secret` form is rejected\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, PlanetScale MCP Server or Snowflake-managed MCP server?\n\nPlanetScale MCP Server scores 66.4 (B) on agent readiness against Snowflake-managed MCP server's 56.4 (C), and leads in 4 of 7 scored categories. Snowflake-managed MCP server leads on payments \u0026 pricing and transparency \u0026 trust.\n\n### Do PlanetScale MCP Server and Snowflake-managed MCP server need an API key?\n\nBoth take an API key or an OAuth sign-in.\n\n### Can an agent call PlanetScale MCP Server and Snowflake-managed MCP server without installing anything?\n\nPlanetScale MCP Server has a hosted endpoint at https://mcp.pscale.dev/mcp/planetscale. No hosted endpoint is listed for Snowflake-managed MCP server.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/planetscale-mcp-vs-snowflake-managed.json, and with the fewest tokens: https://www.anchorterminal.com/compare/planetscale-mcp-vs-snowflake-managed.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"planetscale-mcp\", \"b\": \"snowflake-managed\"}`. From a terminal: `anchor compare planetscale-mcp snowflake-managed`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/planetscale-mcp.json and https://www.anchorterminal.com/api/v1/tools/snowflake-managed.json\n\n## Other comparisons with PlanetScale MCP Server or Snowflake-managed MCP server\n\n- [ClickHouse MCP Server vs PlanetScale MCP Server](https://www.anchorterminal.com/compare/clickhouse-mcp-server-vs-planetscale-mcp.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 PostgreSQL (archived MCP reference server)](https://www.anchorterminal.com/compare/planetscale-mcp-vs-postgres-reference-server-archived.md)\n- [PlanetScale MCP Server vs Supabase API + MCP](https://www.anchorterminal.com/compare/planetscale-mcp-vs-supabase-mcp.md)\n- [Postgres MCP Pro vs Snowflake-managed MCP server](https://www.anchorterminal.com/compare/postgres-mcp-pro-vs-snowflake-managed.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 PlanetScale MCP Server](https://www.anchorterminal.com/compare/mongodb-mcp-vs-planetscale-mcp.md)\n- [MongoDB MCP Server vs Snowflake-managed MCP server](https://www.anchorterminal.com/compare/mongodb-mcp-vs-snowflake-managed.md)\n- [PlanetScale MCP Server vs Redis MCP](https://www.anchorterminal.com/compare/planetscale-mcp-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": "PlanetScale MCP Server vs Snowflake-managed MCP server",
        "url": ""
      }
    ],
    "description": "PlanetScale scores 66.4 (B) to Snowflake-managed's 56.4 (C) for sql databases. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "PlanetScale MCP Server B 66.4",
      "Snowflake-managed MCP server C 56.4",
      "scores"
    ],
    "h1": "PlanetScale MCP Server vs Snowflake-managed MCP server",
    "image": "https://www.anchorterminal.com/assets/og/compare-planetscale-mcp-vs-snowflake-managed.png",
    "path": "/compare/planetscale-mcp-vs-snowflake-managed",
    "published": "2026-10-01",
    "section": "tools",
    "title": "PlanetScale vs Snowflake-managed for AI agents (2026)",
    "toc": null,
    "updated": "2026-10-09",
    "url": "https://www.anchorterminal.com/compare/planetscale-mcp-vs-snowflake-managed"
  },
  "tokens": {
    "markdown": 2500,
    "slim": 680
  },
  "version": 1
}
