DatabaseFreeactiveReviewed by MCPIndex

Supabase MCP

Supabase MCP for project-aware Postgres, Auth, Storage, and Edge Functions operations with explicit access-mode controls.

Looking for more MCP servers? Browse the full MCP tools directory or explore more tools in Database.

Reviewed by MCPIndex

MCPIndex assessment

Supabase MCP is the highest-leverage backend server for Supabase teams because it exposes the policy layer that ordinary SQL assistants cannot see. Its defining risk is service-role overreach: RLS is a database boundary, not a prompt preference. Deploy project-aware, read-only by default, verify environment identity first, and keep production mutations in reviewed migrations.

Quick overview

Supabase MCP is a control plane for an entire application backend, not merely a Postgres connector. Database schemas, Row Level Security policies, Auth users, Storage buckets, Edge Functions, and project settings interact as one system; an agent that can inspect only SQL will miss the policy or storage boundary that explains the bug. The architectural power is project-aware context: the agent can inspect a table, trace its RLS policy, verify the authenticated role, and connect the result to application behavior without requiring a human to paste dashboard output. The architectural danger is equally concentrated: a service-role credential bypasses RLS by design, so handing it to an agent converts every database policy into a suggestion. Use a dedicated project, read-only or restricted access mode, and separate migration approval from exploratory queries. The edge case that creates the most convincing wrong answers is environment drift — the agent connects to a valid Supabase project with a valid key, but it is staging while the developer is looking at production. Always establish project ref, database host, role, and current migration before interpreting data.

Best for

The teams and workflows that benefit most from this tool.

Schema and RLS debugging

Supabase project configuration audits

Auth, Storage, and database context assembly

Drafting migrations and Edge Function changes

What this MCP server is best for

  • Querying tables, inspecting schemas, and exploring Supabase project data through Supabase MCP.
  • Debugging record anomalies, validating migrations, and reviewing RLS policies from an AI assistant.
  • Useful for backend developers who need fast database insight without context switching.

When to choose it

Choose Supabase MCP when your workflow depends on inspecting or querying structured data directly from an MCP-compatible AI assistant.

Good fit

supabasepostgresauthstorageedge-functionsrls

Limitations

Things to watch before choosing this tool.

Service-role credentials bypass RLS

Environment drift produces plausible empty results

Production migrations need external review and CI

Auth and Storage mutations have separate high-impact risks

Supabase MCP Configuration

Use the following configuration as a starting point for Claude Desktop or any compatible MCP client, then replace placeholder credentials with your own values.

claude_desktop_config.json
{
  "mcpServers": {
    "supabase": {
      "command": "npx",
      "args": ["-y", "@supabase/mcp-server-supabase@latest", "--access-token", "YOUR_SUPABASE_TOKEN"]
    }
  }
}

How to set up Supabase MCP

These setup steps cover the typical installation flow for this MCP server.

  1. 1

    Create a dedicated Supabase access token or project-scoped credential; never place a service-role key in a general-purpose agent config.

  2. 2

    Configure the server with the project and access mode required, starting with read-only inspection of schema, policies, logs, and storage metadata.

  3. 3

    Pro-Tip: The fatal flaw 90% of developers commit is treating the service-role key as a convenient database password. It bypasses Row Level Security entirely, so one prompt-injected migration or SQL request can read every user's data and mutate every table. Use read-only credentials for exploration, keep migrations in reviewed files, and make production writes impossible from the default agent identity.

  4. 4

    At session start, require the agent to report the Supabase project ref, database host, current role, access mode, and environment label before any query.

  5. 5

    For Storage and Auth work, scope buckets and administrative operations separately; database access does not imply that user-management operations are safe.

  6. 6

    Verify with a harmless schema query and an RLS test using an unprivileged role. Confirm that a deliberately unauthorized row remains inaccessible.

Compatibility

Supported environments for Supabase MCP.

Claude Desktop

Yes

Cursor

Yes

VS Code

Yes

Official Supabase server. Start with read-only or restricted access and verify project ref, role, and environment before queries.

Frequently asked questions

Common questions for Supabase MCP.

The agent reports that a table is empty or a user cannot be found, but the dashboard shows data — no error appeared. Why?

The silent failure is environment or role drift. The credential authenticated successfully against a different project, database, schema, or role, or RLS filtered the result for the current identity. Supabase returns a valid empty result in all of these cases. The engineering fix is to print project ref, database host, schema, current role, and RLS context before queries, then compare with the dashboard environment. Never treat an empty result as proof of absent data until identity and policy context are verified.

Can Supabase MCP run migrations?

It may be capable of executing SQL depending on the configured access mode, but production migrations should remain version-controlled, reviewed, and applied through CI. Use the agent to draft and explain migrations, not to bypass your deployment pipeline.

Why is a service-role key unsafe even when the prompt says read-only?

The service role bypasses RLS at the credential layer. Prompt instructions are not authorization; any tool call or injected instruction that reaches the database can operate beyond user policies. Enforce read-only and scope at the credential and database layers.

Can it manage Auth and Storage as well as Postgres?

Yes, depending on the server version and enabled tools. Treat user deletion, password changes, bucket policies, and object deletion as separate high-impact capabilities requiring separate approval.

Supabase MCP vs Competitors

FeatureSupabase MCPCompetitor
Backend context Postgres, RLS, Auth, Storage, and Functions in one project graph Standalone SQL server without application policy context
Policy visibility Can inspect Row Level Security and project configuration Generic database tools cannot explain application auth boundaries
Production safety Requires explicit access mode and credential discipline Read-only database service can provide a narrower default
Application operations Auth, Storage, and Edge Functions alongside data Database-only integration

Related Guides