| name | supabase |
| description | Supabase is an open-source backend-as-a-service platform that provides a real-time database, authentication, storage, and serverless functions built on PostgreSQL. Read and write Supabase data through One: database, projects, domains, edgefunctions, auth, environments and more, 77 actions with real parameter documentation. Use whenever the user asks to look something up in Supabase, create or update a record there, or build code against the Supabase API. |
Supabase through One
Supabase is an open-source backend-as-a-service platform that provides a real-time database, authentication, storage, and serverless functions built on PostgreSQL.
One exposes Supabase through four MCP tools. The table below carries real action ids from One's knowledge base, so for a common operation you can skip search and go straight to reading the action's parameters.
How to run an action
- Find the action in the table below, or call
search_one_platform_actions with platform supabase if it is not listed.
- Call
get_one_action_knowledge with the action id. Do this every time, including for actions in this table. The table gives you the id, not the parameters.
- Call
execute_one_action with parameters copied from that knowledge.
Never guess a parameter name, a body field, or an enum value. The knowledge has the real schema, and a guessed field is either a 400 or a silent write of the wrong thing.
Before you start
Call list_one_integrations once and confirm Supabase is connected. If it is missing, the user has not connected it: say so and point them at https://app.withone.ai rather than reaching for raw HTTP.
Each connection carries an access field. If it reports {"policy": "methods", "methods": ["GET"]} the agent is read-only here, so plan a read-only answer instead of attempting a write that will be refused.
Before a write
Creates, updates, deletes and sends land on a real Supabase account and cannot be recalled. State the action and the specific target in one line before the first write in a task, and let the user stop you. Reads need no confirmation.
Actions
Database
| Action | Method | Path | Action id |
|---|
| Generate TypeScript Types | GET | /v1/projects/{{ref}}/types/typescript | conn_mod_def::GC40R8lUrh0::_BuxJ564QjuKnlee7jfudg |
| Get Project SSL Enforcement Configuration | GET | /projects/{{ref}}/ssl-enforcement | conn_mod_def::GC40SPkxm8w::r59joKAxS9a3BLWguLfZPQ |
| Get Project's Pgbouncer Config | GET | /projects/{{ref}}/config/database/pgbouncer | conn_mod_def::GC40SCO68Tw::5q0HqGQ9S9-JAnyFetxiLw |
| Get Project's Postgres Config | GET | /projects/{{ref}}/config/database/postgres | conn_mod_def::GC40SMT31a4::u8XcvKnmShOce_TkuLS0gQ |
| Get Project's Readonly Mode Status | GET | /projects/{{ref}}/readonly | conn_mod_def::GC40SFwb-08::u3ixU9WiSYmYk3URNPVTvw |
| Get Project's Supavisor Config | GET | /projects/{{ref}}/config/database/pooler | conn_mod_def::GC40SszDDAE::bp-Li7FiT7Sop5ZN3g5V6w |
| Get SQL Snippet | GET | /snippets/{{id}} | conn_mod_def::GC40R-FcSOU::j-QatNcTTJ2ytXFZgwdMZQ |
| List All Backups | GET | /projects/{{ref}}/database/backups | conn_mod_def::GC40SVaj4Yw::kOHsC9xQTiCmv0g7WqgDIQ |
| List SQL Snippets | GET | /v1/snippets | conn_mod_def::GC40SSqjgKI::vys6h_oeS6OSLMbQ4kszcg |
| Disable Project's Readonly Mode Temporarily | POST | /projects/{{ref}}/readonly/temporary-disable | conn_mod_def::GC40Rk71X1E::w5RLcH2YTtm6R6saaQcg8A |
| Enable Database Webhooks | POST | /projects/{{ref}}/database/webhooks/enable | conn_mod_def::GC40RyVkdqI::5ujcAD__SBCg_P77neEr5g |
| Remove a Read Replica |
6 more Database actions are available through search.
Projects
| Action | Method | Path | Action id |
|---|
| Check Project's Eligibility for Upgrades | GET | /projects/{{ref}}/upgrade/eligibility | conn_mod_def::GC40UsOBCos::FPBBwCDSTPGpnF2KxpBFxQ |
| Get Project Upgrade Status | GET | /projects/{{ref}}/upgrade/status | conn_mod_def::GC40UuAXnCo::YKFbWCjfS5-A9L1IanmzIg |
| Get Project's Network Restrictions | GET | /projects/{{ref}}/network-restrictions | conn_mod_def::GC40Uo6S-bQ::VpggjSG2TH-_dchISvBzPw |
| Get Project's Service Health Status | GET | /projects/{{ref}}/health | conn_mod_def::GC40UzKOniM::6S6n8JvxSmeTBP15a8iNGQ |
| Get Specific Project | GET | /projects/{{ref}} | conn_mod_def::GC40UsaJ0ao::GR6yGwJzQsKBP0vcayJ0lQ |
| List All Projects | GET | /projects | conn_mod_def::GC40U5B8xKY::_N0C5lBNSoWseIxyeQs1KQ |
| List Available Restore Versions for Project | GET | /v1/projects/{{ref}}/restore | conn_mod_def::GC40U7VJj60::VpisBTNkQPOmmz-Zp1TEOQ |
| Cancel Project Restoration | POST | /projects/{{ref}}/restore/cancel | conn_mod_def::GC40UP0_mf4::pweSXuy1T0qMqwCoI5dzVQ |
| Create Project | POST | /projects | conn_mod_def::GC40UrUylhA::tg4BqV7zSTiH0ERCUwFUDg |
| Delete Project | DELETE | /projects/{{ref}} | conn_mod_def::GC40UWO1p7o::G9WvmhChT06-j6FJmPy6rQ |
| Get Project's Network Bans | POST | /projects/{{ref}}/network-bans/retrieve | conn_mod_def::GC40Uys90pw::QUrTWfF0TdWFZvFjBulowg |
| Pause Project | POST | /v1/projects/{{ref}}/pause |
4 more Projects actions are available through search.
Domains
| Action | Method | Path | Action id |
|---|
| Get Current Vanity Subdomain Config | GET | /projects/{{ref}}/vanity-subdomain | conn_mod_def::GC40S4zXg6Q::XGFHIIYbSqW_oWSI0n1Xnw |
| Get Project's Custom Hostname Config | GET | /projects/{{ref}}/custom-hostname | conn_mod_def::GC40S4xqDbM::xmyFU997RdqGHbhhikIkCg |
| Activate Custom Hostname for Project | POST | /projects/{{ref}}/custom-hostname/activate | conn_mod_def::GC40S9fnrC0::PeMZm4R7RlGUEoVO_kEVnw |
| Activate Vanity Subdomain | POST | /projects/{{ref}}/vanity-subdomain/activate | conn_mod_def::GC40S3CUZWQ::XMvki81sQI2FmSZc3PQmmw |
| Check Vanity Subdomain Availability | POST | /projects/{{ref}}/vanity-subdomain/check-availability | conn_mod_def::GC40S0Z2Azc::yUGxEFDPQwapOK9XD5M6Dw |
| Delete Project's Vanity Subdomain Configuration | DELETE | /v1/projects/{{ref}}/vanity-subdomain | conn_mod_def::GC40S-ggISc::5i8aeMT5Q0uwLBEPCPDhQQ |
| Reverify DNS Configuration for Custom Hostname | POST | /projects/{{ref}}/custom-hostname/reverify | conn_mod_def::GC40TJADTLw::HwScG4gIRB2MweEgEUTpew |
| Update Project's Custom Hostname Configuration | POST | /projects/{{ref}}/custom-hostname/initialize | conn_mod_def::GC40TQxzFzY::FSr8zStaSRS0FhNa89yLyw |
EdgeFunctions
| Action | Method | Path | Action id |
|---|
| List All Functions | GET | /projects/{{ref}}/functions | conn_mod_def::GC40TgyDb-c::Lo77b6bQR3WQjoFyLFm3mA |
| Retrieve a Function | GET | /projects/{{ref}}/functions/{{function_slug}} | conn_mod_def::GC40Tdn193o::UtfaruQITDm4rYfTqhnn4A |
| Retrieve Function Body | GET | /projects/{{ref}}/functions/{{function_slug}}/body | conn_mod_def::GC40TjVUP-Q::cJj72ogNTcyftmhGrcXgsA |
| Bulk Update Functions | PUT | /projects/{{ref}}/functions | conn_mod_def::GC40T122bII::TtmRCeyYR9m09kXh9RPnhA |
| Create Function (Deprecated) | POST | /projects/{{ref}}/functions | conn_mod_def::GC40Tm-3C4w::szcQYC6oQAmyWOdMHvSF7g |
| Delete Function | DELETE | /projects/{{ref}}/functions/{{function_slug}} | conn_mod_def::GC40TQjV0Os::gDfqikIXSJGV1DnrzM5TNQ |
| Deploy Function | POST | /projects/{{ref}}/functions/deploy | conn_mod_def::GC40T84CyNM::ee8XBvT6TRua_1upUL_H5Q |
| Update a Function | PATCH | /projects/{{ref}}/functions/{{function_slug}} | conn_mod_def::GC40T9G4D2s::JTpF0ZTqR22d8DcPOiAyfw |
Auth
| Action | Method | Path | Action id |
|---|
| Get Project's Auth Config | GET | /projects/{{ref}}/config/auth | conn_mod_def::GC40TM5gJ7A::_NENqM6aTkOuGqUV-fHWbg |
| Get SSO Provider by UUID | GET | /projects/{{ref}}/config/auth/sso/providers/{{provider_id}} | conn_mod_def::GC40RhaMIgk::E1Bm6qZFQSGs5XTAJjRWRQ |
| List All SSO Providers | GET | /projects/{{ref}}/config/auth/sso/providers | conn_mod_def::GC40R-0Pao0::dNWrpZPqSDm6eC453iK9ew |
| Create SSO Provider | POST | /projects/{{ref}}/config/auth/sso/providers | conn_mod_def::GC40R9SDxX4::RCAo6QLIRp-Fda_LSNJxMQ |
| Remove SSO Provider | DELETE | /projects/{{ref}}/config/auth/sso/providers/{{provider_id}} | conn_mod_def::GC40RksAUZo::s58b0yruRPmhjO114tZzVg |
| Update Project's Auth Config | PATCH | /projects/{{ref}}/config/auth | conn_mod_def::GC43ZRsFwpU::1bl7idCRTmm-sL79xQMM5Q |
| Update SSO Provider | PUT | /v1/projects/{{ref}}/config/auth/sso/providers/{{provider_id}} | conn_mod_def::GC40SF9lEjw::IQgu7597SWextSt95VYT3w |
Environments
| Action | Method | Path | Action id |
|---|
| Get Database Branch Config | GET | /v1/branches/{{branch_id}} | conn_mod_def::GC40T9qO_mA::srkPpgjqQ1mZHhn6zMYB-A |
| List All Database Branches | GET | /projects/{{ref}}/branches | conn_mod_def::GC40UC1Z_gw::uLsMhfdDQSmxNdFx4JLrZQ |
| Delete Database Branch | DELETE | /branches/{{branch_id}} | conn_mod_def::GC40TiDueDQ::O3EQsdyfQ7q9bxsEoudohA |
| Disable Preview Branching | DELETE | /projects/{{ref}}/branches | conn_mod_def::GC40T3DZqfw::AF-bwdEdQsaiUURd_q8U6w |
| Push Database Branch | POST | /branches/{{branch_id}}/push | conn_mod_def::GC40UHrVixc::xYqD-9brR_a2Pl_pj_0xFQ |
| Reset Database Branch | POST | /branches/{{branch_id}}/reset | conn_mod_def::GC40T5kF56Q::SXvZZIe5QD6ka2c73MIACQ |
| Update Database Branch Config | PATCH | /branches/{{branch_id}} | conn_mod_def::GC40UK47fY0::0a-NnlBnQvSj2heAX2NZfw |
Secrets
| Action | Method | Path | Action id |
|---|
| Get Project API Keys | GET | /v1/projects/{{ref}}/api-keys | conn_mod_def::GC40Vgkr-As::vZSHdjjWT6yYgNHR0LdiIw |
| Get Project's pgsodium Config | GET | /projects/{{ref}}/pgsodium | conn_mod_def::GC40VWbKNXA::TwgrYpdKSyuRjoRbFOAbbQ |
| List All Secrets | GET | /projects/{{ref}}/secrets | conn_mod_def::GC40VblRspw::AEWBxCtoRfmRwHqtiRozkQ |
| Bulk Create Secrets | POST | /projects/{{ref}}/secrets | conn_mod_def::GC40VRKWzwQ::U1WZrM1xRlqzW0r6eOEITg |
| Bulk Delete Secrets | DELETE | /projects/{{ref}}/secrets | conn_mod_def::GC40VamprpU::V8dLGUf4S9O1XxHGOj17qA |
| Update Project's Pgsodium Config | PUT | /projects/{{ref}}/pgsodium | conn_mod_def::GC40Vj6NHV8::QvsG_DGZRq-Qso0eUaCpsg |
Oauth
| Action | Method | Path | Action id |
|---|
| Authorize User Through Oauth | GET | /oauth/authorize | conn_mod_def::GC40UNCCy40::InD2wblFRaiRdaOCBwbVZQ |
| Exchange Auth Code for User's Access and Refresh Token | POST | /v1/oauth/token | conn_mod_def::GC40UNZVgcY::cBtwTQijQYKWPIG3WYJWAg |
| Revoke OAuth App Authorization | POST | /oauth/revoke | conn_mod_def::GC40UA7ACjw::rF8yUOgeSb67OWub4l8D2A |
Rest
| Action | Method | Path | Action id |
|---|
| Get Project's Postgrest Config | GET | /projects/{{ref}}/postgrest | conn_mod_def::GC40VSYs1xc::D0eLTVxaRpC-z9qotuMiQQ |
| Update Project's Postgrest Config | PATCH | /v1/projects/{{ref}}/postgrest | conn_mod_def::GC40VJOvuGc::jxSSXxSnSrax1MnK6ID4Ag |
Organizations
| Action | Method | Path | Action id |
|---|
| List All Organizations | GET | /organizations | conn_mod_def::GC40UF2XalU::2cBlMddjST2mgH3oOZVJ0w |
Storage
| Action | Method | Path | Action id |
|---|
| List All Buckets | GET | /projects/{{ref}}/storage/buckets | conn_mod_def::GC40Vqn3jwA::XzZUOU0vQ-eJc-q--4CV6A |
This lists 67 of 77 actions. For anything not here, call search_one_platform_actions with platform supabase. The full catalog is at https://www.withone.ai/knowledge/supabase.
When a call fails
The error comes from Supabase, not from One. A 400 or 422 means your parameters do not match the schema, so re-read the knowledge and fix the field. A 401 or 403 means the connection needs re-authorizing, which no retry will fix. A 404 means the id is not on this account. A 429 means slow down. Never retry a write more than once: the first attempt may have landed.
Full catalog: https://www.withone.ai/knowledge/supabase
Integration knowledge by One (withone.ai), licensed under One-Knowledge-1.0. Attribution must be preserved in derivative works.