About
Full Supabase project access — query tables, inspect auth users, manage storage. Perfect companion for indie-hacker apps.
README
Connect your Supabase projects to Cursor, Claude, Windsurf, and other AI assistants.
The Model Context Protocol (MCP) standardizes how Large Language Models (LLMs) talk to external services like Supabase. It connects AI assistants directly with your Supabase project and allows them to perform tasks like managing tables, fetching config, and querying data. See the full list of tools.
Setup
1. Follow our security best practices
Before setting up the MCP server, we recommend you read our security best practices to understand the risks of connecting an LLM to your Supabase projects and how to mitigate them.
2. Configure your MCP client
To configure the Supabase MCP server on your client, visit our setup documentation. You can also generate a custom MCP URL for your project by visiting the MCP connection tab in the Supabase dashboard.
Your MCP client will automatically prompt you to log in to Supabase during setup. Be sure to choose the organization that contains the project you wish to work with.
Most MCP clients require the following information:
{
"mcpServers": {
"supabase": {
"type": "http",
"url": "https://mcp.supabase.com/mcp"
}
}
}
If you don't see your MCP client listed in our documentation, check your client's MCP documentation and copy the above MCP information into their expected format (json, yaml, etc).
CLI
If you're running Supabase locally with Supabase CLI, you can access the MCP server at http://localhost:54321/mcp. Currently, the MCP Server in CLI environments offers a limited subset of tools and no OAuth 2.1.
Self-hosted
For self-hosted Supabase, check the Enabling MCP server page. Currently, the MCP Server in self-hosted environments offers a limited subset of tools and no OAuth 2.1.
Configuration options and tools
See the Supabase MCP Server docs for the full list of available tools and configuration options.
The docs also feature an interactive URL builder to populate configuration options for you.
Usage with AI SDK's MCP Client
The @supabase/mcp-server-supabase package exports createToolSchemas() to populate input and output schemas for Vercel AI SDK's MCP client. This allows Supabase MCP tools to be treated as static tools with client-side validation and inferred TypeScript types for their inputs and outputs.
import { createToolSchemas } from '@supabase/mcp-server-supabase';
import { createMCPClient } from '@ai-sdk/mcp';
import { streamText } from 'ai';
const mcpClient = await createMCPClient({
transport: {
type: 'http',
url: 'https://mcp.supabase.com/mcp',
},
});
const tools = await mcpClient.tools({
schemas: createToolSchemas(),
});
const result = streamText({ model, tools, prompt: '...' });
for (const step of await result.steps) {
for (const toolResult of step.staticToolResults) {
if (toolResult.toolName === 'get_project_url') {
toolResult.input; // { project_id: string }
toolResult.output; // { url: string }
}
}
}
createToolSchemas() accepts similar filtering options as the MCP server's URL parameters:
features: Restrict to specific feature groups (e.g.['database', 'docs']). Defaults to all default feature groups.projectScoped: Whentrue, omitsproject_idfrom tool input schemas and excludes account-level tools — use when connecting to a server configured withproject_ref. Defaults tofalse.readOnly: Whentrue, excludes mutating tools — use when connecting to a server configured withread_only=true. Defaults tofalse.
const mcpClient = await createMCPClient({
transport: {
type: 'http',
url: 'https://mcp.supabase.com/mcp?project_ref=<project-ref>&read_only=true&features=database,docs',
},
});
const tools = await mcpClient.tools({
schemas: createToolSchemas({
features: ['database', 'docs'],
projectScoped: true,
readOnly: true,
}),
});
[!NOTE] This server does not send
structuredContentin MCP tool results. AI SDK falls back to parsing JSON fromcontenttext.
For more information, see Schema Definition and Typed Tool Outputs in the AI SDK docs.
Other MCP servers
@supabase/mcp-server-postgrest
The PostgREST MCP server allows you to connect your own users to your app via REST API. See more details on its project README.
Resources
- Model Context Protocol: Learn more about MCP and its capabilities.
- From development to production: Learn how to safely promote changes to production environments.
For developers
See CONTRIBUTING for details on how to contribute to this project.
License
This project is licensed under Apache 2.0. See the LICENSE file for details.
Install Supabase in Claude Desktop, Claude Code & Cursor
unyly install supabaseInstalls into Claude Desktop, Claude Code, Cursor & VS Code — handles npx, uvx and build-from-source repos for you.
First time? Get the CLI: curl -fsSL https://unyly.org/install | sh
Or configure manually
Run in your terminal:
claude mcp add supabase --env SUPABASE_URL="<url>" --env SUPABASE_SERVICE_KEY="<key>" -- npx -y @supabase/mcp-server-supabaseStep-by-step: how to install Supabase
Tools exposed
These are the functions Claude can call when this MCP is active.
querylist_userslist_bucketsinvoke_functionFAQ
Is Supabase MCP free?
Yes, Supabase MCP is free — one-click install via Unyly at no cost.
Does Supabase need an API key?
Yes, it requires environment variables: SUPABASE_URL, SUPABASE_SERVICE_KEY. Unyly injects them into the config during install.
Is Supabase hosted or self-hosted?
Self-hosted: the server runs locally on your machine via the install command above.
How do I install Supabase in Claude Desktop, Claude Code or Cursor?
Open Supabase on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.
Related MCPs
GitHub
PRs, issues, code search, CI status
by GitHubFilesystem
Secure file operations with configurable access controls.
Memory
Knowledge graph-based persistent memory system.
Template MCP Server
A CLI tool to create a new Model Context Protocol server project with TypeScript support, dual transport options, and an extensible structure
by mcpdotdirectCompare Supabase with
Not sure what to pick?
Find your stack in 60 seconds
Author?
Embed badge for your README
Browse similar
All development MCPs
