KitScout

Categories › Data & Databases › SQL databases

Scribase

MCP serverVerified domain · scribase.comRemote● LiveAPI key needed

Supabase-compatible Postgres for agents: projects, branches, SQL, auth, storage, email.

Install

Remote server: your requests and data go to api.scribase.com. Claude Code: claude mcp add --transport http scribase https://api.scribase.com/mcp · Claude app: Settings → Connectors → Add custom connector.

What it can do (first 40)

The tools this server listed when we connected to it, in its own words.

  • projects.list — List your projects with their branches and status. Start here to find project ids. Scope: projects:read.
  • projects.create — Create a new backend (Postgres, Auth, Storage, Realtime, Functions) and wait until it is live. Everything is optional: the name, region and
  • keys.get — The project URL and publishable (anon) key for supabase-js, as .env lines. The secret (server-only) key is included only with include_secret
  • projects.start — Bootstrap a real backend (Postgres, Auth, Storage, Realtime, Functions) with no account and no bearer token: call this before `initialize` e
  • sql.execute — Run SQL on a branch as the project's database role (never a superuser). Read-only by default. For writes pass read_only: false (database:wri
  • migrations.list — Migrations already applied to a branch, oldest first. Scope: database:read.
  • migrations.apply — Record and apply one migration (name + SQL) in a single transaction, then reload the REST API's schema cache. It is linted first: a table wi
  • tables.list — Tables on a branch with row counts, and whether row level security is on. Scope: database:read.
  • tables.describe — Columns, primary key, foreign keys, indexes, row level security and policies of one table. Scope: database:read.
  • types.generate — The supabase-js `Database` TypeScript type for a branch's schema. Save it as database.types.ts and use createClient<Database>(url, key). Sco
  • functions.list — Edge functions deployed to a branch. Scope: functions:read.
  • functions.deploy — Create or replace an edge function (Deno, TypeScript). Pass `source` for a single file, or `files` (path -> source) with an `entrypoint`. It
  • functions.logs — Recent log lines of one edge function. Scope: logs:read.
  • storage.buckets.list — Storage buckets on a branch. Scope: storage:read.
  • storage.buckets.create — Create a storage bucket. Private by default; public: true makes objects readable by URL. Scope: storage:write.
  • auth.config.get — Auth settings (site URL, redirect allow list, JWT expiry, sign-up rules) and providers. Scope: auth:read.
  • auth.config.set — Change auth settings (`settings`, a partial object: site_url, uri_allow_list, jwt_exp, ...) and/or one provider (`provider` such as google,
  • capabilities.status — Which one-command add-ons (email, errors, ...) a branch has and whether each is live, with a proof record {kind, id, at}. Pass `slot` for on
  • capabilities.add — Turn on a capability slot such as email for a branch. When it needs the person's own credential, the answer holds a connect_url to hand to t
  • extensions.list — Postgres extensions this branch can enable (vector, pgmq, pg_jsonschema, index_advisor, ...) and which are on. Pass `category` to filter. Sc
  • extensions.enable — Enable an allowlisted Postgres extension on a branch. With name vector and search_table: true it also creates a semantic search table and ma
  • schedule.list — The branch's scheduled jobs (pg_cron): name, schedule, target, whether active, and the last run. Scope: database:read.
  • schedule.create — Run SQL or a function on a timer. `schedule` is five cron fields in UTC ("0 3 * * *") or "N seconds" (1 to 59). Give exactly one of `sql` or
  • schedule.update — Change a job: `active` false pauses it, true resumes it; `schedule` sets a new timer. Scope: database:write.
  • schedule.delete — Delete a job and stop its runs. Show the user which job goes, then call with confirm: true. Scope: database:write.
  • schedule.run — Run a job once now, outside its timer. The run is logged like any other. Scope: database:write.
  • schedule.runs — Recent runs of one job: when, how long, succeeded or failed, and the message. Scope: database:read.
  • errors.list — Errors from the app on this branch, grouped into issues, with usage and the DSN to put in the Sentry SDK. Turn the slot on with capabilities
  • errors.get — One issue with its latest event and stack trace. `issue_id` is the numeric id from errors.list. Scope: logs:read.
  • push.status — Whether push is set up on this branch and how many devices and users it reaches. Set it up with capabilities.add slot push. Scope: logs:read
  • push.send_test — Sends one push to every device of one app user (by `user_id` or `email`) through the Expo push service. Answers devices, sent, failed and pr
  • ota.status — Whether over-the-air updates are set up on this branch, the update URL the app reads, and the newest release per platform and channel. Set i
  • ota.releases — Published releases, newest first: id, platform, channel, target app version, whether it is on, the share of devices that get it, and its mes
  • ota.rollback — Turns off the newest release that is on for a platform and channel; devices on it go back to the release before it (or the bundle built into
  • links.list — The branch's link host, what still stops links from opening the app, the short links with their in-app paths and clicks, and last week's cli
  • links.create — A short link that opens the app on `path` (and after install, on first launch); a computer goes to the web fallback with the same path. Answ
  • logs.get — Recent log lines for a branch, newest first: auth, rest, storage, realtime, functions or gateway. Scope: logs:read.
  • branches.list — Branches of a project with kind, status, parent and expiry. Production is protected. Scope: branches:read.
  • branches.create — Fork a branch from production (or `from`) for one task, agent or pull request: a copy-on-write database with its own URL and keys. Expires a
  • branches.merge — Merge a branch's schema changes into its parent (default production). Without apply it is a dry run that shows the plan and conflicts; apply

KitScout test notes

Not tested by KitScout yet. When our harness runs it, pros, cons and the tasks we tried appear here, with the date and evidence.

Similar tools