Supabase Official Remote MCP Server

๐Ÿ›ก๏ธ Officialโœ“ VerifiedStreamable HTTPOAuth 2.15 toolsยทOnline37msยท30d uptime: 100%ยทLast checked 18m ago

The hosted Supabase MCP (mcp.supabase.com/mcp) exposes your organization's projects to MCP clients: list projects, run SQL, apply migrations and fetch project config โ€” protected by OAuth 2.1.

https://mcp.supabase.com/mcp
Provider
Supabase โ†—
Source
https://github.com/supabase-community/supabase-mcp โ†—
Categories
๐Ÿ—„๏ธ Databases & Backend-as-a-Service
ไธญๆ–‡็ฎ€ไป‹

Supabase ๆ‰˜็ฎก MCP ๆœๅŠกๅ™จใ€‚AI ไปฃ็†ๅฏๅœจ OAuth ๆŽˆๆƒ่Œƒๅ›ดๅ†…ๆ‰ง่กŒ SQLใ€ๅบ”็”จ่ฟ็งปๅนถ็”Ÿๆˆ TypeScript ็ฑปๅž‹ใ€‚

Streamable HTTPhttps://mcp.supabase.com/mcp
Install in Cursor โ†’

Or add to ~/.cursor/mcp.json:

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

๐Ÿงฐ Tools exposed by Supabase MCP (5)

ToolSafetyDescriptionParameters
list_projects๐ŸŸข ReadList all Supabase projects in your organizations.โ€”
execute_sql๐ŸŸ  WriteRun arbitrary SQL against a Supabase project database. Can modify or delete data โ€” review statements carefully.project_id*: stringquery*: string
apply_migration๐ŸŸ  WriteApply a database migration to a Supabase project. Potentially destructive โ€” migrations can drop tables and columns.project_id*: stringname*: stringquery*: string
get_project_url๐ŸŸข ReadGet the API URL for a Supabase project.project_id*: string
generate_typescript_types๐ŸŸข ReadGenerate TypeScript types from a project's database schema.project_id*: string

๐Ÿ” OAuth 2.1 & Security

Auth type
OAuth 2.1
Dynamic Client Registration
โœ… Supported
PKCE S256
โœ… Supported
Scopes
all
Protected resource metadata
https://mcp.supabase.com/.well-known/oauth-protected-resource (expected location)
๐Ÿ” Audit OAuth 2.1 Config โ†’

๐Ÿงฉ Recommended Agent Skills

๐Ÿ“– Guide

Supabase MCP โ€” Remote MCP Server

The hosted Supabase MCP server authenticates against your Supabase account and can operate on any project you have access to โ€” running SQL, applying migrations and generating types. That makes it powerful and dangerous in equal measure: Supabase recommends connecting agents to development or branching projects, not production, and the dashboard lets you restrict the server to read-only mode or a subset of projects.

Endpoint & Transport

  • Endpoint URL: https://mcp.supabase.com/mcp
  • Transport: Streamable HTTP

Authentication

Supabase MCP uses OAuth 2.1 โ€” the first request returns a 401 Unauthorized challenge with a WWW-Authenticate header pointing at the authorization metadata. Compliant clients (Cursor, Claude, VS Code, ChatGPT) handle the whole flow โ€” PKCE and Dynamic Client Registration, so no manual client setup is needed โ€” and simply open a browser consent screen.

Available Tools (5)

Tool Safety Description
list_projects read List all Supabase projects in your organizations.
execute_sql write Run arbitrary SQL against a Supabase project database. Can modify or delete data โ€” review statements carefully.
apply_migration write Apply a database migration to a Supabase project. Potentially destructive โ€” migrations can drop tables and columns.
get_project_url read Get the API URL for a Supabase project.
generate_typescript_types read Generate TypeScript types from a project's database schema.

Connect in 30 Seconds

Claude Code โ€” one command:

claude mcp add --transport http supabase https://mcp.supabase.com/mcp

Cursor โ€” add to ~/.cursor/mcp.json:

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

VS Code โ€” add to .vscode/mcp.json:

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

Claude Desktop & stdio clients โ€” bridge with mcp-remote:

{ "mcpServers": { "supabase": { "command": "npx", "args": ["-y", "mcp-remote", "https://mcp.supabase.com/mcp"] } } }

On first connect your client opens a browser OAuth consent screen โ€” approve it and tools become available immediately.

Troubleshooting

  • 401 Unauthorized on connect โ€” that's expected; the server is OAuth-protected. Let your client complete the browser consent flow, or inspect the endpoint in our OAuth debugger to see the exact WWW-Authenticate challenge.
  • "Session expired" / stale Mcp-Session-Id โ€” just re-send initialize; stateless clients can ignore session headers entirely.
  • execute_sql and apply_migration can modify real data โ€” enable read-only mode in the Supabase dashboard if you only need inspection.
  • OAuth grants are per-organization; you approve scopes during the consent screen.

๐Ÿš€ How to Connect

  1. Copy the Supabase MCP endpoint URL
    The remote endpoint is https://mcp.supabase.com/mcp.
  2. Add it to your MCP client
    Claude Code: claude mcp add --transport http supabase https://mcp.supabase.com/mcp. Cursor: add "supabase": { "url": "https://mcp.supabase.com/mcp" } under mcpServers in ~/.cursor/mcp.json. Other clients work similarly.
  3. Complete the OAuth consent
    On first connection your client opens a Supabase consent screen in the browser. Approve it to grant access; the token is stored by the client and refreshed automatically.
  4. Verify with the online inspector
    Paste https://mcp.supabase.com/mcp into remotemcp.net/inspector, run initialize and tools/list, and confirm Supabase MCP's 5 tools respond.

โ“ FAQ

What is the Supabase MCP remote MCP endpoint?

The primary endpoint is https://mcp.supabase.com/mcp. It is an official first-party server operated by Supabase, speaking the Streamable HTTP transport.

How do I authenticate with Supabase MCP?

Supabase MCP uses OAuth 2.1. When your client first connects it receives a 401 challenge, discovers the authorization server via RFC 9728 metadata, and opens a browser consent screen. Dynamic Client Registration is supported, so compliant clients register themselves automatically.

I'm getting a 401 Unauthorized from Supabase MCP โ€” what's wrong?

A 401 means your client hasn't completed (or has lost) the OAuth authorization. Remove and re-add the server in your client to restart the consent flow, and check that your browser session can reach the provider's login page. If the 401 arrives without a WWW-Authenticate header, run it through our OAuth debugger to see what's missing.

Which MCP clients work with Supabase MCP?

Any client that supports remote MCP servers: Cursor, Claude Code (`claude mcp add --transport http supabase https://mcp.supabase.com/mcp`), VS Code Copilot, ChatGPT connectors, Windsurf, and Claude Desktop via the `mcp-remote` bridge.

What tools does Supabase MCP expose?

5 tools are cataloged in this directory โ€” including `list_projects`, `execute_sql`, `apply_migration` and more. Use our online inspector to fetch the live tool list straight from the endpoint.

๐Ÿ”— Connect Guides

๐Ÿ“› Embed Status Badge in README

Supabase MCP status badge
[![Remote MCP Status](https://remotemcp.net/api/badge/status/supabase.svg)](https://remotemcp.net/servers/supabase)
Supabase MCP inspector badge
[![Test in Inspector](https://remotemcp.net/api/badge/inspect/supabase.svg)](https://remotemcp.net/inspector?url=https%3A%2F%2Fmcp.supabase.com%2Fmcp)

Related Servers

Neon's official remote MCP server for serverless Postgres. Agents can manage projects and branches and run SQL over the SSE transport with OAuth.

https://mcp.neon.tech/sse
๐Ÿ›ก๏ธ Officialโœ“ VerifiedSSEOAuth 2.14 toolsDegraded166ms