Connectors · Developer & infrastructure
PlanetScale MCP server for AI agents.
actionlake is an MCP gateway: one remote MCP server that connects Claude and other MCP clients to PlanetScale and the rest of your systems. It gives your agent 268 PlanetScale actions (136 reads, 93 writes and 39 that wait for a confirmation) and holds the PlanetScale credential itself, so the agent never does. It paces PlanetScale's limits and records every call.
100,000 free calls a month. No card, no email, no password: press Start a free sandbox on the next screen and keep the key it shows you.
claude mcp add --transport http actionlake https://connect.actionlake.com/mcpdo { action: "planetscale.organizations.list", intent: "check which PlanetScale account is connected"}# List organizations · read · 1 upstream call- 268actionsin one signed file
- 136readlook, never change
- 93writecreate and update
- 39wait for a yesdestructive, confirmed first
Set up
Connect PlanetScale in three steps.
- 01
Add actionlake to Claude.
Run the command once in Claude Code; its consent page can create a free sandbox: 100,000 calls a month, no card. In the Claude app, add a custom connector with the URL below and paste your key on the consent page. Creating a new sandbox from the Claude app is not yet tested by us.
https://connect.actionlake.com/mcp - 02
Connect PlanetScale.
API key. No consent screen: your agent can connect it for you, but the key then passes through your chat. To keep it out of the model's context, paste it in the console instead. actionlake stores what you paste write-only, sealed under your tenant's key.
service_token_idPlanetScale service token IDservice_tokenPlanetScale service token secret (shown once when the token is created)
account { op: "connections.requirements", service: "planetscale" } # free: exactly what to paste, and what is found for you - 03
Make the first call. Check before a write.
Ask in plain words; Claude picks the action. Before anything changes,
checkvalidates the call and prices it, for free.do { action: "planetscale.organizations.list" }# list organizations · read · 1 upstream callcheck { action: "planetscale.teams.create", input: { … } }# free: inputs, permissions, cost and confirmations, nothing sent
PlanetScale at a glance
- Sign-in
- API key. No consent screen: your agent can connect it for you, but the key then passes through your chat. To keep it out of the model's context, paste it in the console instead.
- You provide
service_token_idservice_token- Limits we pace to
- 600 calls a minute, per connection
- API covered
- PlanetScale API v1 (Swagger 2.0, 282 operations)
api.planetscale.com/v1 - Built from
- PlanetScale's documentation, read 23 October 2026api.planetscale.complanetscale.complanetscale.com
- Service file
- Version 1.0.0, signed (Ed25519)
- Cached reads
- 124 of 136 reads, for up to 5 minutes; a write clears what it affects
- Shared entities
- 6, so ask can line PlanetScale up with your other systems
- Data
- Processed and stored in Sydney, Australia. No US region yet
Capabilities
What an AI agent can do in PlanetScale.
268 actions in 78 areas. Every one carries its effect, so a key can allow the reads and hold the rest.
- 136readlook, never change
- 93writecreate and update
- 39destructivewait for a confirmation
Deploy requests
185 read · 11 write · 2 destructive
Create a deploy request · List deploy requests · Complete a gated deploy request · Check deploy request storage
Branches
114 read · 6 write · 1 destructive
Create a branch · Lint a branch schema · List branches · Demote a branch
Move tables workflows
103 read · 5 write · 2 destructive
Create a MoveTables workflow · List MoveTables workflows · Complete a MoveTables workflow · Show MoveTables workflow details
Roles
103 read · 6 write · 1 destructive
Create role credentials · List roles · Get a role · Delete role credentials
Configuration profiles
92 read · 6 write · 1 destructive
Create a configuration profile for a Neki branch · Duplicate a configuration profile for a Neki branch · List configuration profiles for a Neki branch · Get a configuration profile for a Neki branch
Configuration profile shards
82 read · 4 write · 2 destructive
Add shards to a Neki configuration profile · Add a shard to a Neki configuration profile · List shards for a Neki configuration profile · Assign shards to a Neki configuration profile
Keyspaces
84 read · 3 write · 1 destructive
Create a keyspace · Get keyspaces · Get a keyspace · Get keyspace rollout status
Metrics
88 read · 0 write · 0 destructive
Get time-series metrics · Get current metric values · Get table storage metrics by keyspace · Get time-series metrics for SQL queries
70 more areas · 186 actions
- Databases 7
- Passwords 6
- Webhooks 6
- Backup policies 5
- Backups 5
- Branch config changes 5
- Cidrs 5
- Dedicated read replicas 5
- Insights queries 5
- Routers 5
- Teams 5
- Traffic budgets 5
- Bouncers 4
- Branch resizes 4
- Keyspace config changes 4
- Keyspace resizes 4
- Members 4
- Oauth application tokens 4
- Query patterns 4
- Service tokens 4
- SSO 4
- SSO domains 4
- Team members 4
- Bouncer resizes 3
- Branch changes 3
- Insights tags 3
- Invitations 3
- Neki changes 3
- Organizations 3
- Safe migrations 3
- Schema recommendations 3
- Switchovers 3
- Admin 2
- Branch shards 2
- Data topology 2
- Deploy request reviews 2
- Insights anomalies 2
- Insights errors 2
- Invoices 2
- Maintenance schedules 2
- Oauth applications 2
- Payment method 2
- Payment method setups 2
- SSO directory 2
- Traffic rules 2
- Admin parameters 1
- Admin size skus 1
- Audit log 1
- Branch bouncer resizes 1
- Branch extensions 1
- Branch parameters 1
- Cluster size skus 1
- Configuration profile extensions 1
- Configuration profile parameters 1
- Current user 1
- Database regions 1
- Dedicated read replica changes 1
- Deploy queue 1
- Deploy request operations 1
- Invoice line items 1
- Log signatures 1
- Maintenance schedule windows 1
- Organization regions 1
- Postgres versions 1
- Public regions 1
- Read only regions 1
- Router parameters 1
- Router size skus 1
- Vitess parameters 1
- Vtctld operations 1
Top actions
The PlanetScale API, shaped for agents.
The ids your agent types, what each does, and the one name it shares with other systems. 46 of PlanetScale's 46 action names are shared with at least one other connector, so an agent learns them once.
| Action | What it does | Effect | Same name in |
|---|---|---|---|
planetscale.teams.listList teams in an organization | List teams in an organization. | read | identity.group.list262 connectors |
planetscale.current_user.getGet current user | Get current user. | read | identity.current_user.get307 connectors |
planetscale.members.listList organization members | List organization members. | read | identity.group_member.list103 connectors |
planetscale.teams.createCreate an organization team | Create an organization team. | write | identity.group.create205 connectors |
planetscale.team_members.listList team members | List team members. | read | identity.group_member.list103 connectors |
planetscale.service_tokens.listList service tokens | List service tokens. | read | identity.api_key.list96 connectors |
planetscale.teams.deleteDelete an organization team | Delete an organization team. | destructive | identity.group.delete181 connectors |
planetscale.service_tokens.createCreate a service token | Create a service token. | write | identity.api_key.create100 connectors |
planetscale.audit_log.listList audit logs | List audit logs. | read | identity.audit_event.list51 connectors |
planetscale.invitations.createSend an invitation | Send an invitation. | write | identity.invitation.create41 connectors |
planetscale.invitations.listList pending invitations | List pending invitations. | read | identity.invitation.list33 connectors |
planetscale.databases.listList databases | List databases. | read | infra.database.list7 connectors |
Try it
Prompts to paste into Claude.
Each one names the PlanetScale actions it will call, so you know what it reads and what it changes before you send it.
- Readread
List the PlanetScale groups and how many members each one has.
calls
planetscale.teams.list - Writewrite
Create an organization team in PlanetScale. Show me exactly what you will send before you save it.
calls
planetscale.teams.create
Governance for PlanetScale
Destructive actions wait for a yes.
39 PlanetScale actions are destructive. The first 10:
- Delete an organization team
planetscale.teams.delete - Remove a member from an organization
planetscale.members.remove - Remove a member from a team
planetscale.team_members.remove - Delete a service token
planetscale.service_tokens.delete - Delete a webhook
planetscale.webhooks.delete - Delete role credentials
planetscale.roles.delete - Delete a database
planetscale.databases.delete - Delete a backup policy
planetscale.backup_policies.delete - Disable organization SSO
planetscale.sso.disable - Delete an IP restriction entry
planetscale.cidrs.delete
A destructive action runs only with confirm: true. Under the human policy the agent cannot confirm for itself: the run stops until a named person approves, in the console or from a signed link in an email. The cap on a key is refused before the call is sent, never after.
Delete an organization team?
intent: the user asked me to delete an organization team
account { op: "keys.create", name: "planetscale-agent", allowed_actions: ["planetscale.*"], cap_calls: 2000, confirm_policy: "human_for_writes", approval_rules: [ { match: "planetscale.teams.delete", approver: "[email protected]" }, { match: "planetscale.members.remove", approver: "[email protected]" }, { match: "planetscale.team_members.remove", approver: "[email protected]" } ]}Cost
What PlanetScale costs on actionlake.
Every PlanetScale action is one upstream call, the only thing actionlake bills. Searching, check, cost, account and any call PlanetScale refused with 401, 403, 429 or a 5xx are free. Paid plans start at US$49 a month for 250,000 calls, with overage from US$0.30 down to US$0.18 per 1,000.
- 1upstream call per actionall 268 PlanetScale actions
- 268actions pageeach page of a long list is one call
- 124reads can be cacheda cache hit costs nothing
- 100,000calls a month, freepaid plans from US$49 a month for 250,000
Action index
Every PlanetScale action.
268 actions by area: the id your agent calls, what it does, and its effect.
Deploy requests18
planetscale.deploy_requests.apply_gated_deployComplete a gated deploy requestwriteplanetscale.deploy_requests.cancelCancel a queued deploy requestdestructiveplanetscale.deploy_requests.check_storageCheck deploy request storagereadplanetscale.deploy_requests.closeClose a deploy requestdestructiveplanetscale.deploy_requests.complete_errored_deployComplete an errored deploywriteplanetscale.deploy_requests.createCreate a deploy requestwriteplanetscale.deploy_requests.force_cutoverEnable force cutover for a deploy requestwriteplanetscale.deploy_requests.getGet a deploy requestreadplanetscale.deploy_requests.get_deploymentGet a deploymentreadplanetscale.deploy_requests.get_throttlerGet deploy request throttler configurationsreadplanetscale.deploy_requests.listList deploy requestsreadplanetscale.deploy_requests.queue_deployQueue a deploy requestwriteplanetscale.deploy_requests.revertComplete a revertwriteplanetscale.deploy_requests.skip_revert_periodSkip revert periodwriteplanetscale.deploy_requests.update_aggressive_cutoverUpdate aggressive cutover for a deploy requestwriteplanetscale.deploy_requests.update_auto_applyUpdate auto-apply for deploy requestwriteplanetscale.deploy_requests.update_auto_delete_branchUpdate auto-delete branch for deploy requestwriteplanetscale.deploy_requests.update_throttlerUpdate deploy request throttler configurationswrite
Branches11
planetscale.branches.createCreate a branchwriteplanetscale.branches.deleteDelete a branchdestructiveplanetscale.branches.demoteDemote a branchwriteplanetscale.branches.getGet a branchreadplanetscale.branches.get_schemaGet a branch schemareadplanetscale.branches.lint_schemaLint a branch schemareadplanetscale.branches.listList branchesreadplanetscale.branches.promotePromote a branchwriteplanetscale.branches.run_maintenanceRun maintenance for a Postgres branchwriteplanetscale.branches.updateUpdate a branchwriteplanetscale.branches.update_clusterChange a branch cluster configurationwrite
Move tables workflows10
planetscale.move_tables_workflows.cancelCancel a MoveTables workflowdestructiveplanetscale.move_tables_workflows.completeComplete a MoveTables workflowwriteplanetscale.move_tables_workflows.createCreate a MoveTables workflowwriteplanetscale.move_tables_workflows.getShow MoveTables workflow detailsreadplanetscale.move_tables_workflows.get_statusShow MoveTables workflow statusreadplanetscale.move_tables_workflows.listList MoveTables workflowsreadplanetscale.move_tables_workflows.reverse_trafficReverse traffic back to the source keyspacewriteplanetscale.move_tables_workflows.startStart a MoveTables workflowwriteplanetscale.move_tables_workflows.stopStop a MoveTables workflowdestructiveplanetscale.move_tables_workflows.switch_trafficSwitch traffic to the target keyspacewrite
Roles10
planetscale.roles.createCreate role credentialswriteplanetscale.roles.deleteDelete role credentialsdestructiveplanetscale.roles.getGet a rolereadplanetscale.roles.get_defaultGet the default postgres rolereadplanetscale.roles.listList rolesreadplanetscale.roles.reassign_objectsReassign objects owned by one role to another rolewriteplanetscale.roles.renewRenew role expirationwriteplanetscale.roles.resetReset a role's passwordwriteplanetscale.roles.reset_defaultReset default credentialswriteplanetscale.roles.updateUpdate role namewrite
Configuration profiles9
planetscale.configuration_profiles.createCreate a configuration profile for a Neki branchwriteplanetscale.configuration_profiles.deleteDelete a configuration profile for a Neki branchdestructiveplanetscale.configuration_profiles.duplicateDuplicate a configuration profile for a Neki branchwriteplanetscale.configuration_profiles.getGet a configuration profile for a Neki branchreadplanetscale.configuration_profiles.listList configuration profiles for a Neki branchreadplanetscale.configuration_profiles.run_maintenanceRun maintenance for a Neki configuration profilewriteplanetscale.configuration_profiles.run_maintenance_allRun maintenance for selected Neki configuration profileswriteplanetscale.configuration_profiles.set_defaultSet the default configuration profile for a Neki branchwriteplanetscale.configuration_profiles.updateUpdate a configuration profile for a Neki branchwrite
Configuration profile shards8
planetscale.configuration_profile_shards.assignAssign shards to a Neki configuration profilewriteplanetscale.configuration_profile_shards.bulk_createAdd shards to a Neki configuration profilewriteplanetscale.configuration_profile_shards.createAdd a shard to a Neki configuration profilewriteplanetscale.configuration_profile_shards.deleteRemove a shard from a Neki configuration profiledestructiveplanetscale.configuration_profile_shards.delete_manyRemove shards from a Neki configuration profiledestructiveplanetscale.configuration_profile_shards.getGet a shard in a Neki configuration profilereadplanetscale.configuration_profile_shards.listList shards for a Neki configuration profilereadplanetscale.configuration_profile_shards.updateUpdate a shard in a Neki configuration profilewrite
Keyspaces8
planetscale.keyspaces.createCreate a keyspacewriteplanetscale.keyspaces.deleteDelete a keyspacedestructiveplanetscale.keyspaces.getGet a keyspacereadplanetscale.keyspaces.get_rollout_statusGet keyspace rollout statusreadplanetscale.keyspaces.get_vschemaGet the VSchema for the keyspacereadplanetscale.keyspaces.listGet keyspacesreadplanetscale.keyspaces.updateConfigure keyspace settingswriteplanetscale.keyspaces.update_vschemaUpdate the VSchema for the keyspacewrite
Metrics8
planetscale.metrics.get_branchGet time-series metricsreadplanetscale.metrics.get_branch_instantGet current metric valuesreadplanetscale.metrics.get_keyspace_tablesGet table storage metrics by keyspacereadplanetscale.metrics.get_queryGet time-series metrics for SQL queriesreadplanetscale.metrics.get_tablesGet table storage metricsreadplanetscale.metrics.get_tabletsGet time-series tablet metricsreadplanetscale.metrics.get_tablets_instantGet current tablet metricsreadplanetscale.metrics.get_tagGet time-series metrics grouped by query tagsread
Databases7
planetscale.databases.createCreate a databasewriteplanetscale.databases.deleteDelete a databasedestructiveplanetscale.databases.getGet a databasereadplanetscale.databases.get_throttlerGet database throttler configurationsreadplanetscale.databases.listList databasesreadplanetscale.databases.updateUpdate database settingswriteplanetscale.databases.update_throttlerUpdate database throttler configurationswrite
Passwords6
planetscale.passwords.createCreate a passwordwriteplanetscale.passwords.deleteDelete a passworddestructiveplanetscale.passwords.getGet a passwordreadplanetscale.passwords.listList passwordsreadplanetscale.passwords.renewRenew a passwordwriteplanetscale.passwords.updateUpdate a passwordwrite
Webhooks6
planetscale.webhooks.createCreate a webhookwriteplanetscale.webhooks.deleteDelete a webhookdestructiveplanetscale.webhooks.getGet a webhookreadplanetscale.webhooks.listList webhooksreadplanetscale.webhooks.testTest a webhookwriteplanetscale.webhooks.updateUpdate a webhookwrite
Backup policies5
planetscale.backup_policies.createCreate a backup policywriteplanetscale.backup_policies.deleteDelete a backup policydestructiveplanetscale.backup_policies.getGet a backup policyreadplanetscale.backup_policies.listList backup policiesreadplanetscale.backup_policies.updateUpdate a backup policywrite
Backups5
planetscale.backups.createCreate a backupwriteplanetscale.backups.deleteDelete a backupdestructiveplanetscale.backups.getGet a backupreadplanetscale.backups.listList backupsreadplanetscale.backups.updateUpdate a backupwrite
Branch config changes5
planetscale.branch_config_changes.cancelCancel a draft or pending branch config change requestdestructiveplanetscale.branch_config_changes.createCreate a branch config change requestwriteplanetscale.branch_config_changes.getGet a branch config change requestreadplanetscale.branch_config_changes.listList branch config change requestsreadplanetscale.branch_config_changes.submitSubmit draft config change requestswrite
Cidrs5
planetscale.cidrs.createCreate an IP restriction entrywriteplanetscale.cidrs.deleteDelete an IP restriction entrydestructiveplanetscale.cidrs.getGet an IP restriction entryreadplanetscale.cidrs.listList IP restriction entriesreadplanetscale.cidrs.updateUpdate an IP restriction entrywrite
Dedicated read replicas5
planetscale.dedicated_read_replicas.createCreate a dedicated read replicawriteplanetscale.dedicated_read_replicas.deleteDelete a dedicated read replicadestructiveplanetscale.dedicated_read_replicas.getGet a dedicated read replicareadplanetscale.dedicated_read_replicas.listList dedicated read replicasreadplanetscale.dedicated_read_replicas.updateUpdate a dedicated read replicawrite
Insights queries5
planetscale.insights_queries.getRetrieve a branch queryreadplanetscale.insights_queries.get_statisticsRetrieve query statisticsreadplanetscale.insights_queries.get_summaryRetrieve a summary of query statisticsreadplanetscale.insights_queries.listList branch queriesreadplanetscale.insights_queries.list_traffic_budgetsList traffic budgets affecting a query fingerprintread
Routers5
planetscale.routers.createCreate a router for a Neki branchwriteplanetscale.routers.deleteDelete a router from a Neki branchdestructiveplanetscale.routers.getGet a router for a Neki branchreadplanetscale.routers.listList routers for a Neki branchreadplanetscale.routers.updateUpdate a router for a Neki branchwrite
Teams5
planetscale.teams.createCreate an organization teamwriteplanetscale.teams.deleteDelete an organization teamdestructiveplanetscale.teams.getGet an organization teamreadplanetscale.teams.listList teams in an organizationreadplanetscale.teams.updateUpdate an organization teamwrite
Traffic budgets5
planetscale.traffic_budgets.createCreate a traffic budgetwriteplanetscale.traffic_budgets.deleteDelete a traffic budgetdestructiveplanetscale.traffic_budgets.getGet a traffic budgetreadplanetscale.traffic_budgets.listList traffic budgetsreadplanetscale.traffic_budgets.updateUpdate a traffic budgetwrite
Bouncers4
planetscale.bouncers.createCreate a bouncerwriteplanetscale.bouncers.deleteDelete a bouncerdestructiveplanetscale.bouncers.getGet a bouncerreadplanetscale.bouncers.listList bouncersread
Branch resizes4
planetscale.branch_resizes.cancelCancel a change requestdestructiveplanetscale.branch_resizes.getGet a branch resize requestreadplanetscale.branch_resizes.listGet branch resize requestsreadplanetscale.branch_resizes.updateUpsert a resize requestwrite
Keyspace config changes4
planetscale.keyspace_config_changes.cancelCancel a draft or pending keyspace config change requestdestructiveplanetscale.keyspace_config_changes.createCreate a keyspace config change requestwriteplanetscale.keyspace_config_changes.getGet a keyspace config change requestreadplanetscale.keyspace_config_changes.listList keyspace config change requestsread
Keyspace resizes4
planetscale.keyspace_resizes.cancelCancel a resize requestdestructiveplanetscale.keyspace_resizes.getGet a keyspace resize requestreadplanetscale.keyspace_resizes.listGet keyspace resize requestsreadplanetscale.keyspace_resizes.updateUpsert a resize requestwrite
Members4
planetscale.members.getGet an organization memberreadplanetscale.members.listList organization membersreadplanetscale.members.removeRemove a member from an organizationdestructiveplanetscale.members.updateUpdate organization member rolewrite
Oauth application tokens4
planetscale.oauth_application_tokens.createCreate or renew an OAuth tokenwriteplanetscale.oauth_application_tokens.deleteDelete an OAuth tokendestructiveplanetscale.oauth_application_tokens.getGet an OAuth tokenreadplanetscale.oauth_application_tokens.listList OAuth tokensread
Query patterns4
planetscale.query_patterns.createCreate a new query patterns reportwriteplanetscale.query_patterns.deleteDelete a query patterns reportdestructiveplanetscale.query_patterns.getShow the status of a query patterns reportreadplanetscale.query_patterns.listList generated query patterns reportsread
Service tokens4
planetscale.service_tokens.createCreate a service tokenwriteplanetscale.service_tokens.deleteDelete a service tokendestructiveplanetscale.service_tokens.getGet a service tokenreadplanetscale.service_tokens.listList service tokensread
SSO4
planetscale.sso.configureOpen the SSO configuration portalwriteplanetscale.sso.disableDisable organization SSOdestructiveplanetscale.sso.enableEnable organization SSOwriteplanetscale.sso.getGet organization SSO statusread
SSO domains4
planetscale.sso_domains.createStart SSO domain verificationwriteplanetscale.sso_domains.deleteDelete an SSO domaindestructiveplanetscale.sso_domains.getGet an SSO domainreadplanetscale.sso_domains.listList organization SSO domainsread
Team members4
planetscale.team_members.addAdd a member to a teamwriteplanetscale.team_members.getGet a team memberreadplanetscale.team_members.listList team membersreadplanetscale.team_members.removeRemove a member from a teamdestructive
Bouncer resizes3
planetscale.bouncer_resizes.cancelCancel a resize requestdestructiveplanetscale.bouncer_resizes.listGet bouncer resize requestsreadplanetscale.bouncer_resizes.updateUpsert a bouncer resize requestwrite
Branch changes3
planetscale.branch_changes.getGet a branch change requestreadplanetscale.branch_changes.listGet branch change requestsreadplanetscale.branch_changes.updateUpsert a change request for cluster size, replicas, storage, or parameterswrite
Insights tags3
planetscale.insights_tags.getRetrieve a query tagreadplanetscale.insights_tags.listList query tagsreadplanetscale.insights_tags.list_summariesList query statistics grouped by tagread
Invitations3
planetscale.invitations.cancelCancel an invitationdestructiveplanetscale.invitations.createSend an invitationwriteplanetscale.invitations.listList pending invitationsread
Neki changes3
planetscale.neki_changes.cancelCancel a change request for a Neki branchdestructiveplanetscale.neki_changes.getGet a change request for a Neki branchreadplanetscale.neki_changes.listList change requests for a Neki branchread
Organizations3
planetscale.organizations.getGet an organizationreadplanetscale.organizations.listList organizationsreadplanetscale.organizations.updateUpdate an organizationwrite
Safe migrations3
planetscale.safe_migrations.disableDisable safe migrations for a branchdestructiveplanetscale.safe_migrations.enableEnable safe migrations for a branchwriteplanetscale.safe_migrations.updateUpdate safe migrations for a branchwrite
Schema recommendations3
planetscale.schema_recommendations.dismissDismiss a schema recommendationwriteplanetscale.schema_recommendations.getGet a schema recommendationreadplanetscale.schema_recommendations.listList schema recommendationsread
Switchovers3
planetscale.switchovers.createCreate a switchoverwriteplanetscale.switchovers.getGet a switchoverreadplanetscale.switchovers.listList switchoversread
Admin2
planetscale.admin.getGet the admin for a Neki branchreadplanetscale.admin.updateUpdate the admin for a Neki branchwrite
Branch shards2
planetscale.branch_shards.getGet a shard for a Neki branchreadplanetscale.branch_shards.listList shards for a Neki branchread
Data topology2
planetscale.data_topology.getGet the data topology for a Neki branchreadplanetscale.data_topology.updateSet the data topology for a Neki branchwrite
Deploy request reviews2
planetscale.deploy_request_reviews.createReview a deploy requestwriteplanetscale.deploy_request_reviews.listList deploy request reviewsread
Insights anomalies2
planetscale.insights_anomalies.getRetrieve a branch anomalyreadplanetscale.insights_anomalies.listList branch anomaliesread
Insights errors2
planetscale.insights_errors.getList queries for an error fingerprintreadplanetscale.insights_errors.listList branch query errorsread
Invoices2
planetscale.invoices.getGet an invoicereadplanetscale.invoices.listGet invoicesread
Maintenance schedules2
planetscale.maintenance_schedules.getGet a maintenance schedulereadplanetscale.maintenance_schedules.listList maintenance schedulesread
Oauth applications2
planetscale.oauth_applications.getGet an OAuth applicationreadplanetscale.oauth_applications.listList OAuth applicationsread
Payment method2
planetscale.payment_method.deleteDelete the current billing payment methoddestructiveplanetscale.payment_method.getGet the current billing payment methodread
Payment method setups2
planetscale.payment_method_setups.createCreate a billing payment method setupwriteplanetscale.payment_method_setups.getGet a billing payment method setupread
SSO directory2
planetscale.sso_directory.disableDisable directory syncdestructiveplanetscale.sso_directory.enableOpen the directory sync portalwrite
Traffic rules2
planetscale.traffic_rules.createCreate a traffic rulewriteplanetscale.traffic_rules.deleteDelete a traffic ruledestructive
Admin parameters1
planetscale.admin_parameters.listList parameters for a Neki adminread
Admin size skus1
planetscale.admin_size_skus.listList admin size SKUs for a Neki branchread
Audit log1
planetscale.audit_log.listList audit logsread
Branch bouncer resizes1
planetscale.branch_bouncer_resizes.listGet bouncer resize requestsread
Branch extensions1
planetscale.branch_extensions.listList cluster extensionsread
Branch parameters1
planetscale.branch_parameters.listList cluster parametersread
Cluster size skus1
planetscale.cluster_size_skus.listList available cluster sizesread
Configuration profile extensions1
planetscale.configuration_profile_extensions.listList extensions for a Neki configuration profileread
Configuration profile parameters1
planetscale.configuration_profile_parameters.listList parameters for a Neki configuration profileread
Current user1
planetscale.current_user.getGet current userread
Database regions1
planetscale.database_regions.listList database regionsread
Dedicated read replica changes1
planetscale.dedicated_read_replica_changes.listGet dedicated read replica change requestsread
Deploy queue1
planetscale.deploy_queue.listGet the deploy queueread
Deploy request operations1
planetscale.deploy_request_operations.listList deploy operationsread
Invoice line items1
planetscale.invoice_line_items.listGet invoice line itemsread
Log signatures1
planetscale.log_signatures.createCreate a log signaturewrite
Maintenance schedule windows1
planetscale.maintenance_schedule_windows.listList maintenance windowsread
Organization regions1
planetscale.organization_regions.listList regions for an organizationread
Postgres versions1
planetscale.postgres_versions.listList available Postgres versionsread
Public regions1
planetscale.public_regions.listList public regionsread
Read only regions1
planetscale.read_only_regions.listList read-only regionsread
Router parameters1
planetscale.router_parameters.listList parameters for a Neki routerread
Router size skus1
planetscale.router_size_skus.listList router size SKUs for a Neki branchread
Vitess parameters1
planetscale.vitess_parameters.listList Vitess parametersread
Vtctld operations1
planetscale.vtctld_operations.getGet a vtctld operationread
Questions
The PlanetScale MCP server, answered.
Is there a PlanetScale MCP server for Claude?
Yes. actionlake is an MCP gateway: a remote MCP server that gives Claude, or another MCP client, 268 PlanetScale actions across deploy requests, branches, move tables workflows and roles, through the same eight tools it uses for every other connector. actionlake is independent; it is not made or endorsed by PlanetScale.
What do I need to connect PlanetScale?
PlanetScale service token ID and PlanetScale service token secret (shown once when the token is created). The free call account { op: "connections.requirements", service: "planetscale" } lists exactly what to paste.
Can an AI agent delete or change things in PlanetScale?
Only if its key allows it, and only with an explicit confirmation. 39 PlanetScale actions are destructive, including delete an organization team, remove a member from an organization and remove a member from a team. Each runs only with confirm: true. Under the human confirm policy, or an approval rule on the key, the run waits until a named person approves it.
Will an AI agent use up my PlanetScale API limit?
actionlake paces every call to the limits in the PlanetScale service file: 600 calls a minute per connection. Repeated reads are answered from cache (124 PlanetScale actions can be), which never reaches PlanetScale.
What does a PlanetScale action cost?
One upstream call, the only unit actionlake bills. A list that pages bills one call per page (268 PlanetScale actions page). Cache hits, searches, dry runs and calls PlanetScale refused with 401, 403, 429 or a 5xx are free. The Free plan includes 100,000 calls a month with no card. Paid plans start at US$49 a month for 250,000 calls, with overage from US$0.30 down to US$0.18 per 1,000.
Which PlanetScale API does it cover?
The PlanetScale API v1 (Swagger 2.0, 282 operations) at api.planetscale.com/v1. It is built from PlanetScale's documentation as read on 23 October 2026. 268 actions in 78 areas, each one in the signed service file (version 1.0.0).
Does actionlake keep my PlanetScale data, and where?
actionlake processes and stores data in Sydney, Australia; there is no US region yet. Reads may be cached for up to 5 minutes, and a write clears the reads it affects. Each run's request and response is kept, sealed, for your plan's trace window: 1 day on Free, 3 days on Starter, 7 days on Pro, 14 days on Team, 30 days on Business and 30 days on Enterprise. Your PlanetScale credential is sealed under your tenant's key, never logged and never returned. Your traffic is not used to train models.
Which AI clients can use it?
Claude Code, tested by us end to end, and the Claude app as a custom connector, tested by us with an existing key. Other MCP clients that support remote servers over Streamable HTTP (MCP revisions 2025-06-18 and 2025-11-25) and OAuth dynamic client registration, or a bearer header, should connect the same way; we have not tested them. Or plain REST, under the same action names.
Give your agent PlanetScale today.
Start free - 100,000 calls/month, no card. No signup. Hard caps on every key. Cached answers are free.