# Supabase (verified)

Search the Supabase docs for up-to-date guidance and troubleshoot errors quickly. Manage organizations, projects, databases, and Edge Functions, including migrations, SQL, logs, advisors, keys, and t…

## Quick Start

```bash
# Connect this server (installs CLI if needed)
npx -y @smithery/cli@latest mcp add Supabase

# Browse available tools
npx -y @smithery/cli@latest tool list Supabase

# Get full schema for a tool
npx -y @smithery/cli@latest tool get Supabase search_docs

# Call a tool
npx -y @smithery/cli@latest tool call Supabase search_docs '{}'
```

## Direct MCP Connection

Endpoint: `https://supabase.run.tools`

## Tools (29)

- `search_docs` — Search the Supabase documentation using GraphQL. Must be a valid GraphQL query.
- `list_organizations` — Lists all organizations that the user is a member of.
- `get_organization` — Gets details for an organization. Includes subscription plan.
- `list_projects` — Lists all Supabase projects for the user. Use this to help discover the project ID of the project that the user is work…
- `get_project` — Gets details for a Supabase project.
- `get_cost` — Gets the cost of creating a new project or branch. Never assume organization as costs can be different for each.
- `confirm_cost` — Ask the user to confirm their understanding of the cost of creating a new project or branch. Call `get_cost` first. Ret…
- `create_project` — Creates a new Supabase project. Always ask the user which organization to create the project in. The project can take a…
- `pause_project` — Pauses a Supabase project.
- `restore_project` — Restores a Supabase project.
- `list_tables` — Lists all tables in one or more schemas.
- `list_extensions` — Lists all extensions in the database.
- `list_migrations` — Lists all migrations in the database.
- `apply_migration` — Applies a migration to the database. Use this when executing DDL operations. Do not hardcode references to generated ID…
- `execute_sql` — Executes raw SQL in the Postgres database. Use `apply_migration` instead for DDL operations. This may return untrusted …
- `get_logs` — Gets logs for a Supabase project by service type. Use this to help debug problems with your app. This will return logs …
- `get_advisors` — Gets a list of advisory notices for the Supabase project. Use this to check for security vulnerabilities or performance…
- `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…
- `generate_typescript_types` — Generates TypeScript types for a project.
- `list_edge_functions` — Lists all Edge Functions in a Supabase project.
- `get_edge_function` — Retrieves file contents for an Edge Function in a Supabase project.
- `deploy_edge_function` — Deploys an Edge Function to a Supabase project. If the function already exists, this will create a new version. Example:
- `create_branch` — Creates a development branch on a Supabase project. This will apply all migrations from the main project to a fresh bra…
- `list_branches` — Lists all development branches of a Supabase project. This will return branch details including status which you can us…
- `delete_branch` — Deletes a development branch.
- `merge_branch` — Merges migrations and edge functions from a development branch to production.
- `reset_branch` — Resets migrations of a development branch. Any untracked data or schema changes will be lost.
- `rebase_branch` — Rebases a development branch on production. This will effectively run any newer migrations from production onto this br…

```bash
# Get full input/output schema for a tool
npx -y @smithery/cli@latest tool get Supabase <tool-name>
```
