mcpField
A
appbase

appbase

Local
github.com/CloudCorpRecordsDatabases0Updated 2w ago

About appbase

appbase is an MCP server and CLI for managing Supabase organizations, projects, databases, storage, Edge Functions, and preview branches. It gives MCP clients and terminal users a shared set of operations, authenticated with a Supabase personal access token.

Key features

  1. 01Manage organizations and projects
  2. 02Inspect tables, migrations, logs, and advisors
  3. 03Run SQL and apply tracked migrations
  4. 04Manage Edge Functions and storage buckets
  5. 05Create and manage preview branches

Use cases

  1. 01Inspect a project's schema and database status
  2. 02Run SQL or apply a tracked migration
  3. 03Deploy an Edge Function or create a storage bucket
  4. 04Create, rebase, or merge a preview branch

MCP support

Exposes Supabase account and project management tools to MCP clients through a stdio MCP server. The same operations are also available as CLI subcommands.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

mcp.json · Universal config
{
"mcpServers": {
"cloudcorprecords-appbase": {
"command": "npx",
"args": [
"-y",
"@reneturcios/appbase"
]
}
}
}
Run commandnpx -y @reneturcios/appbase

Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.

Packages
npm@reneturcios/appbase0.1.0
ocighcr.io/cloudcorprecords/appbase:0.1.0

Tools

28

Saved tool list · updated 2w ago

ParameterTypeRequiredDescription
schemasarrayNoThe database schemas to list tables from, defaulting to public when omitted.
project_idstringYesThe reference ID of the Supabase project whose tables are listed.

Details

From the project README

appbase

appbase puts a Supabase account within reach of an MCP client or a terminal. Projects and organizations can be listed, inspected, created, paused, and restored. Inside a project you can look at the schema (tables, extensions, migrations), run SQL or apply a tracked migration, read logs and security/performance advisors, fetch the project URL and publishable keys, generate TypeScript types from the live schema, list and deploy Edge Functions, manage storage buckets, and work with preview branches — create, merge, reset, rebase, and delete them.

A Supabase personal access token is required. Put it in the SUPABASE_ACCESS_TOKEN environment variable; it is sent to the Supabase Management API as a Bearer token and never appears in output. When the variable is missing, every call fails with an error that names it.

Install

npx @reneturcios/appbase list_projects

Or run the container image:

docker run -i -e SUPABASE_ACCESS_TOKEN ghcr.io/cloudcorprecords/appbase

The container defaults to the MCP server (see below). Pass CLI arguments to use it as a CLI instead.

CLI

Every MCP tool is also a CLI subcommand. Tool arguments are passed as one JSON object with --json; project-scoped tools take the project reference as project_id:

export SUPABASE_ACCESS_TOKEN=<your Supabase personal access token>

appbase list_projects
appbase list_tables --json '{"project_id": "abcdefghijklmnopqrst"}'
appbase execute_sql --json '{"project_id": "abcdefghijklmnopqrst", "query": "select 1"}'
appbase get_advisors --json '{"project_id": "abcdefghijklmnopqrst", "type": "security"}'
appbase create_branch --json '{"project_id": "abcdefghijklmnopqrst", "name": "feat-x"}'

appbase --version

Results print as JSON. Exit codes: 0 on success, 1 when an API call fails (including a missing SUPABASE_ACCESS_TOKEN), 2 for usage errors.

MCP server

One bin serves both faces. The mcp subcommand starts a stdio MCP server:

npx -y @reneturcios/appbase mcp

MCP client configuration:

{
  "mcpServers": {
    "appbase": {
      "command": "npx",
      "args": ["-y", "@reneturcios/appbase", "mcp"],
      "env": { "SUPABASE_ACCESS_TOKEN": "your Supabase personal access token" }
    }
  }
}
Tools
ToolInput (required in bold)What it does
list_tablesproject_id, schemasLists tables in the given schemas (default public).
list_extensionsproject_idLists installed database extensions.
list_migrationsproject_idLists applied migrations.
execute_sqlproject_id, queryRuns raw SQL in the project's database.
apply_migrationproject_id, name, queryApplies SQL as a tracked migration (for DDL).
get_logsproject_id, serviceRecent logs for one service.
get_advisorsproject_id, typeSecurity or performance advisors.
get_project_urlproject_idThe project's https://<ref>.supabase.co API URL.
get_publishable_keysproject_idPublishable / anon API keys for the project.
generate_typescript_typesproject_id, included_schemasTypeScript types generated from the schema.
list_edge_functionsproject_idLists Edge Functions.
get_edge_functionproject_id, function_slugOne Edge Function's details.
deploy_edge_functionproject_id, name, files, entrypoint_path, import_map_pathDeploys an Edge Function from inline files.
list_storage_bucketsproject_idLists storage buckets.
create_storage_bucketproject_id, name, public, file_size_limit, allowed_mime_typesCreates a storage bucket.
list_branchesproject_idLists preview branches.
create_branchproject_id, name, confirm_cost_idCreates a preview branch.
delete_branchproject_id, branch_idDeletes a preview branch.
merge_branchproject_id, branch_idMerges a branch's migrations and functions into production.
reset_branchproject_id, branch_id, migration_versionResets a branch to its parent state.
rebase_branchproject_id, branch_idRebases a branch onto its parent.
list_projects—Lists all projects for the user.
get_projectidOne project's details.
create_projectname, organization_id, region, confirm_cost_idCreates a project.
pause_projectproject_idPauses a project.
restore_projectproject_idRestores a paused project.
list_organizations—Lists the user's organizations.
get_organizationidOne organization's details.

All calls go to https://api.supabase.com/v1. SQL tools POST to the project's database/query endpoint; list_tables and list_extensions are catalog queries through that same endpoint, and all other SQL passes through exactly as given.

Development

npm install
npm run build   # tsc -> dist/
npm test        # node test runner over test/*.test.ts, no network (fake fetch fixtures)
npm run dev     # run the CLI from source via tsx

License

MIT — see LICENSE.

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.