Supabase MCP server for AI agents and assistants

Securely connect your AI agents and chatbots (Claude, ChatGPT, Cursor, etc) with Supabase MCP or direct API to manage projects, query and modify databases, deploy Edge Functions, and manage storage and logs through natural language.

Supabase MCP logoSupabase MCP
Dcr Oauth

Supabase MCP is Supabase's hosted MCP server for managing projects, databases, edge functions, storage, and workflows. Use it to manage Supabase resources and development workflows from a single hosted control plane.

32 Tools

Try Supabase MCP now

Type what you want done — sign in and watch it run live in the Tool Router playground.

TOOL ROUTER PLAYGROUND
Supabase MCP
Try asking
TOOLS

Supported Tools

Every Supabase MCP action and event your agent gets out of the box.

Apply migration

Applies a migration to the database.

Confirm cost

Ask the user to confirm their understanding of the cost of creating a new project or branch.

Create branch

Creates a development branch on a Supabase project.

Create project

Creates a new Supabase project.

Delete branch

Deletes a development branch.

Deploy edge function

Deploys an Edge Function to a Supabase project.

Execute sql

Executes raw SQL in the Postgres database.

Generate typescript types

Generates TypeScript types for a project.

Get advisors

Gets a list of advisory notices for the Supabase project.

Get cost

Gets the cost of creating a new project or branch.

Get edge function

Retrieves file contents for an Edge Function in a Supabase project.

Get organization

Gets details for an organization.

Get project

Gets details for a Supabase project.

Get project url

Gets the API URL for a project.

Get publishable keys

Gets all publishable API keys for a project, including legacy anon keys (JWT-based) and modern publishable keys (format: sb_publishable_.

Get storage config

Get the storage config for a Supabase project.

List branches

Lists all development branches of a Supabase project.

List edge functions

Lists all Edge Functions in a Supabase project.

List extensions

Lists all extensions in the database.

List migrations

Lists all migrations in the database.

List organizations

Lists all organizations that the user is a member of.

List projects

Lists all Supabase projects for the user.

List storage buckets

Lists all storage buckets in a Supabase project.

List tables

Lists all tables in one or more schemas.

Merge branch

Merges migrations and edge functions from a development branch to production.

Pause project

Pauses a Supabase project.

Query logs

Runs a custom read-only ClickHouse SQL query against a Supabase project's unified logs stream, for filtering, aggregating, or joining across log fields more precisely than a simple per-service log dump.

Rebase branch

Rebases a development branch on production.

Reset branch

Resets migrations of a development branch.

Restore project

Restores a Supabase project.

Search docs

Search the Supabase documentation using GraphQL.

Update storage config

Update the storage config for a Supabase project.

SETUP GUIDE

Connect Supabase MCP Tool with your Agent

1

Install Composio

typescript
npm install @composio/core ai @ai-sdk/mcp @ai-sdk/openai
Install the Composio SDK and your agent framework
2

Create a session with MCP enabled

typescript
import { Composio } from "@composio/core";

const composio = new Composio();
const { mcp } = await composio.create("your-user-id", {
  toolkits: ["supabase_mcp"],
  mcp: true,
});
Create a session scoped to Supabase MCP and read its MCP URL and headers
3

Connect your agent to the MCP server

typescript
import { createMCPClient } from "@ai-sdk/mcp";
import { openai } from "@ai-sdk/openai";
import { generateText, stepCountIs } from "ai";

const client = await createMCPClient({
  transport: { type: "http", url: mcp.url, headers: mcp.headers },
});

const { text } = await generateText({
  model: openai("gpt-5.6-sol"),
  tools: await client.tools(),
  prompt: "List all Supabase projects and for project 'my-project' list databases, branches, and recent Edge Function deployments",
  stopWhen: stepCountIs(10),
});

console.log(text);
await client.close();
Pass the session's MCP URL and headers to your agent and run a Supabase MCP request
SETUP GUIDE

Connect Supabase MCP API Tool with your Agent

1

Install Composio

typescript
npm install @composio/core @composio/openai openai
Install the Composio SDK, the OpenAI provider, and the OpenAI SDK
2

Create a Composio session

typescript
import OpenAI from "openai";
import { Composio } from "@composio/core";
import { OpenAIResponsesProvider } from "@composio/openai";

const composio = new Composio({ provider: new OpenAIResponsesProvider() });
const client = new OpenAI();

const session = await composio.create("your-user-id", { toolkits: ["supabase_mcp"] });
const tools = await session.tools();
Initialize Composio with the OpenAI Responses provider and create a session scoped to Supabase MCP
3

Run Supabase MCP tools with your agent

typescript
let response = await client.responses.create({
  model: "gpt-5.6-sol",
  tools,
  input: [{ role: "user", content: "List all Supabase projects and for project 'my-project' list databases, branches, and recent Edge Function deployments" }],
});

while (response.output.some((o) => o.type === "function_call")) {
  const outputs = await composio.provider.handleToolCalls(session, response.output);
  response = await client.responses.create({
    model: "gpt-5.6-sol",
    tools,
    previous_response_id: response.id,
    input: outputs,
  });
}

console.log(response.output_text);
Send a request, execute the Supabase MCP tool calls through the session, and print the final answer

Why Use Composio?

AI Native Supabase MCP Integration

  • Supports both Supabase MCP and direct API based integrations
  • Structured, LLM-friendly schemas for reliable tool execution
  • Rich coverage for reading, writing, and querying your Supabase MCP data

Managed Auth

  • Built-in OAuth handling with automatic token refresh and rotation
  • Central place to manage, scope, and revoke Supabase MCP access
  • Per user and per environment credentials instead of hard-coded keys

Agent Optimized Design

  • Tools are tuned using real error and success rates to improve reliability over time
  • Comprehensive execution logs so you always know what ran, when, and on whose behalf

Enterprise Grade Security

  • Fine-grained RBAC so you control which agents and users can access Supabase MCP
  • Scoped, least privilege access to Supabase MCP resources
  • Full audit trail of agent actions to support review and compliance
FRAMEWORKS

Use Supabase MCP with any AI Agent Framework

Choose a Framework you want to connect Supabase MCP with

Rolling this out across your team?

Give your team centralized access control across every framework with Composio’s MCP Gateway.

EXPLORE MCP GATEWAY
FAQ

Frequently asked questions

Yes, Supabase MCP requires you to configure your own Dcr Oauth credentials. Once set up, Composio handles secure credential storage and management for you.

Yes! Composio's Tool Router enables agents to use multiple toolkits. Learn more.

Yes. Composio is SOC 2 Type II compliant and is built to keep your Supabase connection and credentials secure. OAuth tokens and API keys are encrypted, and sensitive customer data is protected at rest and in transit.

Composio also undergoes independent security testing and continuously monitors its systems for security threats. You can review the latest reports and policies in the Composio Trust Center.

Composio maintains and updates all toolkit integrations automatically, so your agents always work with the latest API versions.

When you connect a Supabase account through Composio, every action runs under that account, so anything the agent creates, sends, or changes shows up in Supabase as done by you. Keep an approval step in your prompt for actions with side effects, such as sending or deleting, and have the agent draft first.

Whatever the credentials you connect allow inside Supabase. If Supabase lets you scope a key to specific permissions, create a scoped one so the agent can only do what you intend. You can revoke the key inside Supabase at any time.

Yes. Composio supports multiple connected accounts for the same app, and that works in Claude, ChatGPT, or any other assistant you connect through Composio. Give each Supabase connection a name such as work or personal, and the assistant uses the one you mention in the request. Each account keeps its own credentials and nothing is merged.

Composio's free Hobby plan includes 100,000 tool calls per month with no credit card, which covers most personal Supabase use. Paid plans add higher limits and team features. Your Supabase plan and its API limits still apply as usual.

Built-in connectors usually give one AI access to a limited set of apps. Many people use Composio because it lets their AI connect to more apps than it normally supports, or connect to multiple accounts for the same app (e.g. connect Claude to multiple Supabase accounts).

With Composio, you connect Supabase once and then use it across different AI assistants without setting it up separately in each one. Connect your apps to Composio once, then connect Composio to whichever AI you use, whether that's Claude, ChatGPT, Hermes, or your own custom assistant.

Start with Supabase MCP.It takes 30 seconds.

Managed auth, hosted MCP servers, and every Supabase MCP tool your agent needs.Free to start.

Start building