Skip to content

Supabase

Supabase

Supabase is an open-source backend-as-a-service providing a Postgres database, authentication, storage, and real-time subscription APIs for building modern applications. With the Supabase integration in SquadOS, your agents can create and manage projects, execute SQL queries, deploy edge functions, control secrets, and track migration history — all programmatically.

This tool uses OAuth 2.0 (OAUTH2) or API key (API_KEY) to connect.

You will need the following fields (for OAuth 2.0 with custom credentials):

FieldRequiredDescription
client_idYesClient ID of the OAuth application registered in your Supabase organization settings.
client_secretYesClient Secret of the OAuth application registered in your Supabase organization settings.
  1. Go to your organization dashboard on supabase.com and navigate to Organization Settings.
  2. Click Add Application, provide a name, your website URL, and Composio’s callback URL as the authorization redirect.
  3. Configure the required permissions. It is recommended to grant only the minimum necessary scopes, avoiding full read and write access for security reasons.
  4. After creation, copy the Client ID and Client Secret shown on the organization settings page.
  5. In the Composio dashboard, click Create Auth Config, select Supabase, and toggle Use your own developer credentials.
  6. Paste the Client ID and Client Secret into the respective fields and click Create Supabase Auth Config.
  7. Click Connect Account, provide the Supabase Base API URL (use the default if applicable), and authorize access.
  8. Copy the generated auth config ID (starts with ac_) for use in your application code.
  1. Go to Tools in the side menu (/admin/tools).
  2. Open the Available tab and search for Supabase.
  3. Click the card to open the details modal and hit Connect.
  4. You’re taken to the secure connection page hosted by Composio, where you authorize access (OAuth) or enter the credentials obtained above.
  5. Once done, you’re sent back to SquadOS with the account connected and the tool available for your agents. (Connection-flow details in Organization Tools.)

SUPABASE_LIST_ALL_PROJECTS

Retrieves a list of all Supabase projects for the authenticated user, including ID, name, region, and status of each project.

NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

SUPABASE_GET_PROJECT

Retrieves detailed information about a specific Supabase project, including status, database configuration, and metadata.

NameTypeRequiredDescription
refstringYesUnique reference identifier of the project (20 lowercase letters).
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

SUPABASE_CREATE_A_PROJECT

Creates a new Supabase project. Creation is asynchronous and requires a unique name within the organization (no dots).

NameTypeRequiredDescription
namestringYesName for the new project; must be unique within the organization and cannot contain dots.
regionstringYesGeographical region for the project’s server and database (e.g., us-east-1, eu-west-1).
db_passstringYesPassword for the new database. Store it securely as it cannot be retrieved via API later.
organization_idstringYesReal organization ID or slug from your Supabase account. Use the “List all organizations” action to get the correct value.
planstringNoSubscription plan (free or pro).
desired_instance_sizestringNoCompute instance size (micro, small, medium, large, xlarge, etc.).
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

SUPABASE_UPDATE_PROJECT

Updates the settings of an existing Supabase project identified by its unique reference ID.

NameTypeRequiredDescription
refstringYesUnique reference identifier of the Supabase project.
namestringNoNew name for the project.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

SUPABASE_DELETE_PROJECT

Permanently and irreversibly deletes a Supabase project. Results in complete data loss.

NameTypeRequiredDescription
refstringYesUnique reference identifier of the Supabase project to delete.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

SUPABASE_BETA_RUN_SQL_QUERY

Executes a given SQL query against the project’s database. Use for advanced data operations or when standard API endpoints are insufficient. Ensure queries are valid PostgreSQL and sanitized.

NameTypeRequiredDescription
refstringYesUnique reference ID of the Supabase project (exactly 20 lowercase letters).
querystringYesThe SQL query to execute against the project’s database. Single quotes within string content must be escaped by doubling them: ''. For PostgreSQL arrays, use ARRAY['item1', 'item2'] or '{"item1", "item2"}' syntax — do not use JSON array syntax ["item1"].
read_onlybooleanNoIf true, executes the query in a read-only transaction. Incompatible with INSERT, UPDATE, and DELETE statements.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

SUPABASE_RUN_READ_ONLY_QUERY

[Beta] Run a SQL query as supabase_read_only_user. Use when you need to safely execute SELECT queries without risk of modifying data. Only read operations are allowed.

NameTypeRequiredDescription
refstringYesUnique reference ID of the Supabase project (exactly 20 lowercase letters).
querystringYesThe SQL query to execute. Only SELECT and other read-only operations are allowed. Write operations (INSERT, UPDATE, DELETE, CREATE, etc.) will be rejected.
parametersarrayNoOptional array of parameters for parameterized queries. Use $1, $2, etc. in the query to reference parameters.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

SUPABASE_SELECT_FROM_TABLE

Selects rows from a Supabase/PostgREST table or view, with support for filtering, ordering, and pagination.

NameTypeRequiredDescription
project_refstringYesUnique reference identifier of the Supabase project.
tablestringYesTable or view name to select from.
selectstringYesComma-separated list of columns to return. Supports nested/related selections and JSON path selectors.
filtersarrayNoOptional list of filters. Each filter must have column, operator (eq, neq, gt, gte, lt, lte, like, ilike, is, in, etc.) and value.
orderstringNoOrdering expression in the form column.asc or column.desc.
limitintegerNoMaximum number of rows to return.
offsetintegerNoNumber of rows to skip before returning results.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

SUPABASE_APPLY_A_MIGRATION

Applies database migrations to a Supabase project. Use when you need to execute SQL schema changes, create tables, alter columns, or run other DDL/DML operations as part of a tracked migration.

NameTypeRequiredDescription
refstringYesUnique reference ID of the Supabase project (found in Project Settings > General > Reference ID).
querystringYesThe SQL migration query to execute against the project’s database.
namestringNoA unique name for the migration to track it in the migration history.
rollbackstringNoOptional SQL query to rollback/undo this migration if needed.
idempotency_keystringNoA unique key to ensure the same migration is tracked only once.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

SUPABASE_LIST_MIGRATION_HISTORY

Retrieves the list of applied database migration versions for a Supabase project. Use this to track which migrations have been applied to the project’s database.

NameTypeRequiredDescription
refstringYesUnique reference identifier of the Supabase project.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

SUPABASE_LIST_TABLES

Lists all tables and views in specified database schemas, providing a quick overview of database structure to help identify available tables before fetching detailed schemas.

NameTypeRequiredDescription
project_refstringYesUnique reference identifier of the Supabase project (exactly 20 lowercase letters).
schemasarrayNoList of schemas to search for tables (maximum 10). If not provided, lists tables from all non-system schemas.
include_viewsbooleanNoWhether to include views along with tables in the results.
include_metadatabooleanNoWhether to include basic metadata like estimated row count and table size.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

SUPABASE_GET_TABLE_SCHEMAS

Retrieves column details, types, and constraints for multiple database tables to help debug schema issues and write accurate SQL queries. Use the “List database tables” action first to discover available tables.

NameTypeRequiredDescription
project_refstringYesUnique reference identifier of the Supabase project.
table_namesarrayYesList of table names to retrieve schemas for. Minimum 1 table; maximum 20 per request. Can include schema prefix (e.g., public.users). Without schema prefix, public is assumed.
include_indexesbooleanNoWhether to include index information in the response.
include_relationshipsbooleanNoWhether to include foreign key relationships in the response.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

SUPABASE_GET_DATABASE_METADATA

Gets database metadata for the given project. Returns information about databases, schemas, and table structure.

NameTypeRequiredDescription
refstringYesUnique reference identifier of the Supabase project.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

SUPABASE_GENERATE_TYPESCRIPT_TYPES

Generates and retrieves TypeScript types from a Supabase project’s database. Any schemas specified in included_schemas must exist in the project.

NameTypeRequiredDescription
refstringYesUnique reference identifier of the Supabase project.
included_schemasstringNoComma-separated database schema names to include in the generated TypeScript types.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

SUPABASE_CREATE_FUNCTION

Creates a new serverless Edge Function for a Supabase project, requiring valid JavaScript/TypeScript source code and a project-unique slug identifier.

NameTypeRequiredDescription
refstringYesProject’s unique identifier.
namestringYesHuman-readable name for the function.
slugstringYesURL-friendly identifier for the function’s route prefix. Must be unique within the project.
bodystringYesJavaScript or TypeScript source code for the Edge Function.
verify_jwtbooleanNoIf true, verify JWT in Authorization header before invoking the function. Set to false for public endpoints like webhooks.
import_mapbooleanNoIf true, enable import map for ES module resolution.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

SUPABASE_LIST_FUNCTIONS

Lists metadata for all Edge Functions in a Supabase project, excluding function code or logs.

NameTypeRequiredDescription
refstringYesUnique identifier of the Supabase project.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

SUPABASE_GET_FUNCTION

Retrieves detailed information, metadata, configuration, and status for a specific Edge Function using its project reference ID and function slug.

NameTypeRequiredDescription
refstringYesUnique reference ID of the Supabase project (exactly 20 lowercase alphanumeric characters).
function_slugstringYesThe unique identifier (slug) for the Edge Function.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

SUPABASE_DEPLOY_FUNCTION

Deploys Edge Functions to a Supabase project using multipart upload.

NameTypeRequiredDescription
refstringYesSupabase project reference ID.
slugstringNoSlug of the function to deploy.
file_contentstringNoRaw TypeScript/JavaScript source code as a string. Ideal for simple functions or dynamically generated code. Provide ONLY ONE of file_content, file_url, or file.
file_urlstringNoPublic URL to download the function code from. Supports GitHub raw URLs and other publicly accessible file URLs. Provide ONLY ONE of file_content, file_url, or file.
bundleOnlybooleanNoIf true, only bundle the function without publishing it.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

SUPABASE_INVOKE_EDGE_FUNCTION

Invokes a deployed Supabase Edge Function over HTTPS. Use for testing and debugging Edge Functions with configurable method, headers, body, and authentication.

NameTypeRequiredDescription
project_refstringYesUnique reference identifier of the Supabase project.
function_slugstringYesName/slug of the Edge Function to invoke.
methodstringNoHTTP method to use when invoking the function (GET, POST, PUT, PATCH, DELETE).
bodystringNoRequest body to send to the function. Can be a JSON object or a raw string.
headersobjectNoOptional additional headers to send with the request (e.g., Content-Type).
auth_modestringNoAuthorization mode: anon uses the anon key, service_role uses the service role key, custom_bearer requires a custom Authorization header.
response_typestringNoExpected response format: json, text, or auto.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

SUPABASE_CREATE_BULK_SECRETS

Bulk creates secrets for a Supabase project. Each secret name must not start with SUPABASE_.

NameTypeRequiredDescription
refstringYesUnique reference identifier of the Supabase project where secrets will be created.
secretsarrayYesList of secrets to create. Each secret must have a unique name that does not start with SUPABASE_.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

SUPABASE_LIST_SECRETS

Retrieves all secrets for a Supabase project. Secret values in the response may be masked.

NameTypeRequiredDescription
refstringYesUnique reference identifier of the Supabase project whose secrets are to be retrieved.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

SUPABASE_DELETE_SECRETS

Bulk deletes secrets from a Supabase project. Requires the edge_functions_secrets_write scope.

NameTypeRequiredDescription
refstringYesUnique reference identifier of the Supabase project whose secrets should be deleted.
secret_namesarrayYesList of secret names to delete. Each name must match an existing secret in the project.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

SUPABASE_GET_PROJECT_LOGS

Retrieves analytics logs for a Supabase project, including edge function logs, database logs, and API logs for monitoring and debugging.

NameTypeRequiredDescription
refstringYesUnique reference identifier of the Supabase project.
sqlstringNoCustom SQL query to execute on the logs for filtering, aggregation, and transformation.
iso_timestamp_startstringNoStart timestamp for filtering logs in ISO 8601 format (e.g., 2024-01-01T00:00:00Z).
iso_timestamp_endstringNoEnd timestamp for filtering logs in ISO 8601 format (e.g., 2024-01-31T23:59:59Z).
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

SUPABASE_GET_PERFORMANCE_ADVISORS

Retrieves project performance advisors for a Supabase project, returning a list of performance lints that identify potential issues and optimization opportunities.

NameTypeRequiredDescription
refstringYesUnique reference identifier of the Supabase project (20 alphanumeric characters).
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

SUPABASE_GET_SECURITY_ADVISORS

Retrieves security advisor findings and recommendations for a Supabase project. Use when you need to audit project security posture, identify SQL-based security issues, or get remediation guidance.

NameTypeRequiredDescription
refstringYesUnique reference identifier of the Supabase project.
lint_typestringNoType of linting to perform for security advisors (sql).
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

SUPABASE_CREATE_DATABASE_BRANCH

Creates a new, isolated database branch from an existing Supabase project, useful for setting up separate development or testing environments that can be linked to a Git branch.

NameTypeRequiredDescription
refstringYesUnique reference identifier of the parent Supabase project.
branch_namestringYesA unique name for the new database branch.
git_branchstringNoGit branch name to associate with this database branch.
regionstringNoGeographical region for the new database branch.
persistentbooleanNoSpecifies if the branch is persistent (true) or ephemeral (false); ephemeral branches might be auto-deleted.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

SUPABASE_LIST_BACKUPS

Lists all database backups for a Supabase project, providing details on existing backups.

NameTypeRequiredDescription
refstringYesThe unique identifier (reference string) of the Supabase project.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

SUPABASE_LIST_ALL_ORGANIZATIONS

Lists all organizations (ID and name only) associated with the Supabase account, excluding project details.

NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

SUPABASE_GET_PROJECT_API_KEYS

Retrieves all API keys for an existing Supabase project.

NameTypeRequiredDescription
refstringYesUnique reference identifier of the Supabase project.
revealbooleanNoIf true, reveals the full API key values in the response. By default, secret key values are partially redacted.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

SUPABASE_GET_HEALTH

Checks the health status of the Supabase API. Use when you need to verify API availability or troubleshoot connectivity issues.

NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.

SUPABASE_UPDATE_DATABASE_PASSWORD

Updates the database password for a Supabase project. Use when needing to rotate credentials or recover database access.

NameTypeRequiredDescription
refstringYesUnique reference identifier of the Supabase project.
passwordstringYesThe new database password to set. Must be at least 4 characters long.
NameTypeRequiredDescription
datastringYesData from the action execution.
errorstringNoError if any occurred during the execution of the action.
successfulbooleanYesWhether or not the action execution was successful.