Menu

AI

Supabase MCP Server: Tools, Setup and Security

What the official Supabase MCP server can do, how to connect it over OAuth, its read-only and project-scoped modes, and the risks Supabase warns about.

By: Irina ShvayaOctober 28, 2026

Supabase MCP Server: Tools, Setup and Security

This profile is part of our MCP server directory, within The MCP Guide. Profiles are checked against each vendor's own documentation. Need a server built? See MCP development.

The Supabase MCP server lets an AI app such as Claude, Cursor or ChatGPT work with your Supabase projects. It can list tables, run SQL, apply migrations, read logs and deploy Edge Functions. Supabase publishes and hosts it, and the code is open source.

Checked against: Supabase MCP docs on 28 October 2026. eSEOspace did not install or test this server.

Key Takeaways

  • Supabase runs a hosted server at https://mcp.supabase.com/mcp, and your client signs in with Supabase OAuth.
  • The default tool set can write: execute_sql, apply_migration and deploy_edge_function are all on by default.
  • Three URL options cut the risk: read_only=true, project_ref=<id> and a short features= list.
  • Supabase calls prompt injection the main risk and says to keep manual approval on for interactive work.
  • Supabase says not to give the server to customers or end users, because it runs with your developer permissions.

At a glance

ItemDetail
PublisherSupabase
Official?Yes
HostingBoth: remote URL, plus a local endpoint in the Supabase CLI and self-hosted Supabase
TransportStreamable HTTP
Sign-inOAuth (Supabase account)
Read or writeRead and write by default; read-only mode available
PriceNo separate MCP price listed; branching tools need a paid plan
Source codesupabase/mcp (Apache 2.0)
StatusNot stated; branching tools are labeled experimental

What it can do

Supabase groups its tools into feature groups. The Supabase MCP tool reference lists these:

GroupToolsOn by default?
Databaselist_tables, list_extensions, list_migrations, apply_migration, execute_sqlYes
Debuggingquery_logs, get_advisorsYes
Developmentget_project_url, get_publishable_keys, generate_typescript_typesYes
Edge Functionslist_edge_functions, get_edge_function, deploy_edge_function, create_edge_function_secretYes
Account managementlist_projects, get_project, create_project, pause_project, restore_project, list_organizations, get_organization, get_cost, confirm_costYes, but off in project-scoped mode
Docssearch_docsYes
Branching (experimental)create_branch, list_branches, delete_branch, merge_branch, reset_branch, rebase_branchYes; needs a paid plan
Storagelist_storage_buckets, get_storage_config, update_storage_configNo

Creating a project or a branch can show a cost confirmation first. Supabase says declining it creates nothing.

How to connect it

Most clients only need the server URL. Supabase's GitHub README gives this config:

{
  "mcpServers": {
    "supabase": {
      "type": "http",
      "url": "https://mcp.supabase.com/mcp"
    }
  }
}

Your client then opens a browser so you can sign in to Supabase. Pick the organization that holds the project you want. Supabase says no personal access token is needed for normal use.

The setup page has steps for Claude Code, Codex, Gemini CLI, GitHub Copilot, Cursor, VS Code, Goose, Warp and others. In Claude.ai and ChatGPT you add Supabase from the connector directory. You can also build a custom URL in the Supabase dashboard's MCP connection tab.

A safer URL for production questions looks like this example from the README:

https://mcp.supabase.com/mcp?project_ref=<project-ref>&read_only=true&features=database,docs

If you run Supabase locally, the CLI serves the server at http://localhost:54321/mcp. Supabase notes that the CLI and self-hosted versions offer fewer tools and no OAuth 2.1.

Security notes

Supabase is direct about the risks. Its docs call prompt injection "the primary attack vector unique to LLMs." Text hidden in your own data, such as a support ticket, could try to make the AI run a harmful query. Supabase wraps SQL results with instructions to resist this, but it says that is not foolproof. Read prompt injection through MCP tool results for how this works.

What Supabase recommends:

  • Connect to production "only when the task requires production evidence."
  • Use read_only=true, which runs every query as a read-only Postgres user.
  • Use project_ref to scope the server to one project and remove account tools.
  • Turn on only the feature groups you need with features=.
  • Keep manual approval on for interactive work, and review each tool call.
  • For unattended routines, pre-approve only read-only, project-scoped tools, and have them report rather than write.
  • Enter Edge Function secret values in the Supabase Dashboard, never in chat.

Supabase also says its confirmation prompts are "a guardrail, not a guarantee of human review." Destructive SQL checks may not catch every destructive statement. That is a good reason to start in read-only mode. See excessive permissions in MCP servers and the wider MCP security hub.

Alternatives

  • Neon MCP Server: a hosted Postgres server with OAuth read and write scopes and a pinned Postgres role option.
  • PlanetScale MCP Server: separate read and write query tools, with org-level query controls.
  • Prisma MCP Server: manages Prisma Postgres databases and Prisma Compute apps.

Browse more in the MCP server directory.

Next step

Before you connect any database server, decide which projects it may see and whether it may write. Our MCP readiness audit maps those choices for your team. You can also use the checklist in how to choose MCP servers.

Frequently asked questions

Is the Supabase MCP server free?

Supabase does not list a separate price for the MCP server. Normal Supabase plan costs still apply. The branching tools need a paid plan, and creating a project or branch can trigger a cost confirmation.

Can the Supabase MCP server change my database?

Yes, by default. execute_sql and apply_migration can change data and schema. Add read_only=true to the URL to run all queries as a read-only Postgres user.

Should I connect it to my production project?

Supabase says to connect to production only when a task needs production evidence. If you do, scope it to one project, turn on read-only mode and limit the feature groups.

Can I let my app's users talk to the Supabase MCP server?

No. Supabase says not to give the server to customers or end users, because it runs with your developer permissions. Supabase has a separate PostgREST MCP server for connecting your own users through your REST API.

You Might Also like to Read

Get a FREE Website Audit

Enter your website and get a 20–30 page SEO, GEO, AEO & CRO audit within 24 hours. Completely free.

Don't have a site yet? Get in touch →

Ready to speak with a marketing expert?
Give us a call! (916) 866-7893

Websites Launched
1407
Websites Launched
Marketing Experts
29
Marketing Experts
Hours of Dedicated Work
204533
Hours of Dedicated Work
Irina S.Benjamin G.Jeanette M.David G.