# PlanetScale MCP connector

Connect PlanetScale to Elaichi and Claude, ChatGPT, Cursor, and the Elaichi Agent can list your databases and branches, read schemas, run queries, review insights and error patterns, and check invoices, each person inside their own PlanetScale access.

Source: https://elaichi.ai/connectors/planetscale/

## Facts

| | |
| --- | --- |
| Application | PlanetScale |
| Category | Database |
| AI tools | 25 |
| Authentication | Connects over OAuth |
| Bring your own OAuth app | No |
| Native MCP | Yes. PlanetScale builds and runs this MCP server. Elaichi adds sign-in, access controls and an audit log on top |
| Support for its tools | support.planetscale.com/hc/en-us |
| MCP endpoint | https://api.elaichi.ai/mcp |
| Works with | Claude, ChatGPT, Cursor, any MCP client, and the Elaichi Agent |
| Tools advertised by name | No. Connected tools are never listed one by one, however few there are. The endpoint advertises `search_tools` and `execute_tool` instead |

## What you can ask once PlanetScale is connected

- Show me the schema for the main branch of the orders database
- Which queries failed most often this week and why?
- Pull last month's PlanetScale invoice line items by database

## Connect PlanetScale in Elaichi

This happens once for the organization, before any client is involved.

1. Open Connections, choose Add connection, and pick PlanetScale.
2. Optionally set Share with, then press Connect.
3. Approve it in PlanetScale. PlanetScale's own window opens. Whoever approves it decides what this connection can reach.

Credentials are vaulted and nobody, including the AI, reads them back. The connection becomes a toolbox immediately, so you can curate which PlanetScale tools are exposed, rename them, or freeze arguments before anyone points a client at it.

## PlanetScale MCP connector for Claude

Endpoint: https://api.elaichi.ai/mcp

1. Open Customize, then Connectors.
2. Press Add.
3. Name it, paste the MCP server URL, then Continue.
4. Sign in and approve.

On Team and Enterprise, an Owner adds it once. Everyone else turns it on for themselves.

## PlanetScale MCP connector for ChatGPT

Endpoint: https://api.elaichi.ai/mcp

1. Open Plugins, then press the + button.
2. Name it and paste the endpoint into Server URL.
3. Leave Authentication on OAuth, then tick the risk acknowledgement.
4. Press Create, then sign in and approve.

Works on the web today. The plugin directory lives at chatgpt.com/plugins.

## PlanetScale MCP connector for Cursor

Endpoint: https://api.elaichi.ai/mcp

1. Open `~/.cursor/mcp.json`.
2. Add the endpoint under `mcpServers`.
3. Reload Cursor, then sign in and approve.

Set up per machine, so repeat it on each computer you work from.

## Connect PlanetScale to any MCP client

Endpoint: https://api.elaichi.ai/mcp

1. Add the endpoint as a remote MCP server.
2. Sign in and approve.

The Elaichi Agent already has these tools, with nothing to set up.

## What the consent screen decides

Only Read is granted by default, which is not enough to call a PlanetScale tool. Over MCP there is no trusted place to confirm a write in the moment, so the consent screen is the standing approval rather than a formality. Grant Read and Run tools. Think hard before granting Delete, which reaches into connected apps and cannot be undone.

## What teams do with PlanetScale through Elaichi

### Check a branch schema before merging

Engineering. Ask for the schema on a PlanetScale branch, compare it with the main branch, and pull the open schema recommendations before a deploy request goes out.

### Answer a question straight from the database

Data. Ask how many orders shipped last week or which accounts went quiet, and get the answer from a read query against the PlanetScale database you already have access to.

### Find out why queries keep failing

Engineering. Pull the query error patterns, see the individual executions behind them, and read the Postgres logs for the same window without leaving the conversation.

### Size the next cluster with real numbers

Platform. Review query insights for a database, then list the regions and cluster sizes available to the organization before deciding what to change.

### Reconcile the PlanetScale invoice

Finance. List last month's invoices, break each one down into line items by database, and confirm the payment method on file is still the right card.

### Look up a customer record on a ticket

Support. Run a read query for the customer's account while the ticket is open, with access limited to the databases the support agent can already see in PlanetScale.

## Elaichi vs Zapier MCP vs Composio for PlanetScale

All three can connect PlanetScale to an AI assistant, and all three have admin controls. They differ in where access lives and how you pay.

| What to check | Elaichi | Zapier MCP | Composio |
| --- | --- | --- | --- |
| Where the AI connects | One address for the whole organization. Endpoint: https://api.elaichi.ai/mcp | A server per member, created at sign-in. | An MCP endpoint per team, or an SDK. |
| Control over PlanetScale tools | Allow or restrict single PlanetScale tools, per role or user. | App and action restrictions on the account. | Role permissions, down to the action. |
| Record of calls | One audit entry per PlanetScale call. | A History tab of tool calls. | A log of every tool call. |
| Single sign-on | SAML or OIDC, plus SCIM, on Gold. | SAML on Enterprise. | SAML and OIDC on Enterprise. |
| Price | $15 per user per month. | 2 tasks per successful call. | Billed per tool call. |

Sources: Zapier MCP [docs](https://docs.zapier.com/mcp/get-started/quickstart), [security](https://docs.zapier.com/mcp/manage/security), [usage](https://docs.zapier.com/mcp/features/usage); Composio [docs](https://docs.composio.dev/docs/composio-connect), [gateway](https://composio.dev/mcp-gateway), [enterprise](https://composio.dev/enterprise), [pricing](https://composio.dev/pricing). Checked September 2026.

Longer take: [Zapier MCP alternative](/blog/zapier-mcp-alternative/) and [when you don't need an MCP gateway](/blog/when-you-dont-need-an-mcp-gateway/).

## Frequently asked questions

### How do I connect PlanetScale to Claude?

Connect PlanetScale in Elaichi first: you sign in to PlanetScale over OAuth and authorize access, with no OAuth application to register and no client ID or secret to generate. Then open Claude, go to Customize, then Connectors, then Add, and paste https://api.elaichi.ai/mcp. Claude signs you in to Elaichi, and PlanetScale is available in the conversation from then on.

### Does PlanetScale work with ChatGPT and Cursor as well as Claude?

Yes. Once PlanetScale is connected in Elaichi, the same endpoint, https://api.elaichi.ai/mcp, works in Claude, ChatGPT, Cursor, any other MCP client, and the Elaichi Agent. You connect PlanetScale once and every client picks it up.

### What can an AI agent actually do with my PlanetScale data?

It can list your organizations, databases and branches, read a branch schema, run read and write queries, and pull query insights, error patterns and Postgres logs. It can also list invoices and their line items, check the payment method, review schema recommendations, and search PlanetScale documentation. Short, concrete asks such as "show the schema on the staging branch" work better than long sentences.

### Does connecting PlanetScale give the AI access to every database in my organization?

No. Every call runs as the person who signed in to PlanetScale, so the agent sees only the organizations, databases and branches that person can already open. Elaichi can narrow that further, for example to read queries only, but it can never grant more than PlanetScale itself allows.

### Can my team share one PlanetScale connection?

Yes. One person connects PlanetScale in Elaichi and shares it with a team, and nobody else ever handles a token or password. Each teammate still signs in to Elaichi as themselves, so the audit log records who ran each query, not just which PlanetScale account was used.

### Can I stop an agent from deleting or changing things in PlanetScale?

Yes. Restrictions in Elaichi apply per action, so you can allow read queries against PlanetScale while blocking write queries and payment method changes. A restricted action is never advertised to Claude, ChatGPT or Cursor at all, so no prompt can reach it.

### What happens to a PlanetScale connection when someone leaves?

Offboarding a person in Elaichi ends their access to PlanetScale through every client at once. If they had shared a PlanetScale connection with a team, it keeps working for everyone else. Disconnecting PlanetScale once in Elaichi removes it from Claude, ChatGPT, Cursor and every other client together.

### Does the PlanetScale MCP connector work with Gemini, Codex, Claude Code or other MCP clients?

Yes. PlanetScale is reached over the same MCP endpoint every client uses, so anything that speaks MCP can call it — Gemini, Codex, Claude Code, Windsurf, Cline, Zed and OpenCode among them — alongside Claude, ChatGPT, Cursor, and the Elaichi Agent. The tools on offer and the access behind them are identical whichever client asks. Only the setup screen differs.

### Is Elaichi an alternative to Zapier MCP for PlanetScale?

Yes. Both let Claude, ChatGPT or Cursor use PlanetScale. Zapier MCP fits a team that already automates in Zapier, since each person signs in and acts as themselves in that account. Elaichi fits when IT wants one address for the whole company, per-tool rules by role, and a record of every PlanetScale call.

### How is Elaichi different from Composio for PlanetScale?

Composio gives AI agents tools and sign-in handling across 1,000+ apps, for developers building agents or people using an assistant, billed per tool call. Elaichi gives a company's own people governed access to PlanetScale: one address, restrictions per role or user, and $15 per user per month. Both have role permissions and a log of every call.

## All 25 PlanetScale tools

Every tool below is callable through https://api.elaichi.ai/mcp once PlanetScale is connected, subject to the toolbox it is in and the restrictions on the caller.

- **PlanetScale list organizations** (List). List all PlanetScale organizations you have access to.
- **PlanetScale list databases** (List). List all databases within an organization.
- **PlanetScale list branches** (List). List all branches within a database.
- **PlanetScale get organization** (Get). Get details about a specific organization.
- **PlanetScale get database** (Get). Get details about a specific database.
- **PlanetScale get branch** (Get). Get details about a database branch.
- **PlanetScale get branch schema** (Get). Get the schema for a database branch.
- **PlanetScale execute read query** (Search). Execute a read-only SQL query (SELECT, SHOW, DESCRIBE, EXPLAIN) against a PlanetScale database. Optionally accepts `use_replica` to route to a replica (default) or primary. For Postgres, optionally accepts `postgres_database_name` to target a non-default database. Returns RLS…
- **PlanetScale execute write query** (Search). Execute a write SQL query (INSERT, UPDATE, DELETE, or DDL) against a PlanetScale database. For Postgres, optionally accepts `postgres_database_name` to target a non-default database.
- **PlanetScale get insights** (Get). Get query performance insights for a PlanetScale database branch.
- **PlanetScale list regions for organization** (List). List all available regions for an organization.
- **PlanetScale list cluster size skus** (List). List all available cluster size SKUs.
- **PlanetScale list invoices** (List). List all invoices for an organization.
- **PlanetScale get invoice line items** (Get). Get all line items for an invoice, with prorated costs broken down by database branch.
- **PlanetScale get organization billing payment method** (Get). Show the organization's current payment method.
- **PlanetScale update payment method** (Update). Start Stripe Checkout to add or replace the organization's card. Returns a `checkout_url` and `setup_id`. Requires Payment method full access.
- **PlanetScale get payment method setup** (Get). Check a Checkout setup by `setup_id`. Does not poll; do not start a second update while one is pending.
- **PlanetScale search documentation** (Search). Search the PlanetScale documentation.
- **PlanetScale list schema recommendations** (List). List schema recommendations for a database, including suggestions for adding indexes, removing redundant indexes, and preventing primary key exhaustion.
- **PlanetScale list query error patterns** (Search). List failing queries for a database branch, aggregated by error fingerprint, with the error message, occurrence count, last run, and total and average duration. Optionally search by error text, sort, and filter by tablet type.
- **PlanetScale list query error executions** (Search). List the individual failed executions behind an `error_fingerprint` from `planetscale_list_query_error_patterns`, including the normalized SQL, tables, keyspace, user, row counts, duration, and query tags.
- **PlanetScale get postgres logs** (Get). Fetch server logs for a Postgres database branch, newest first. Filter by log level, time range, server role (primary or replica), and pod name, or pass a raw LogsQL query for advanced filtering. Postgres-only; not available for Vitess databases.
- **PlanetScale list query tags** (Search). List the query tags seen on a database branch's queries, with their values and query counts. Optionally filter by tag name, fingerprint, keyspace, or tablet type.
- **PlanetScale get query tag** (Search). Get a single query tag and its values, using a tag ID from `planetscale_list_query_tags`.
- **PlanetScale list query tag summaries** (Search). Group query statistics by the values of one or more query tags, attributing total time, latency, rows read, and errors to an application, route, job, or user. Takes tag IDs from `planetscale_list_query_tags`.
