LabscoMCP early access ↗
dj-pearsonMCP SERVER

Supabase Coolify MCP Server

Deploy migrations, ship edge functions and manage a self-hosted Supabase on Coolify — all from your assistant.

by dj-pearson ↗PaaS Deployment & App HostingCommunity

LABSCO SUMMARY

Full deploy powers, plus a diagnostic that says what broke.

This holds a service role key and a Coolify token with wide permissions, which is what makes it able to deploy migrations and edge functions in one step — and what makes it worth pointing at an environment you are willing to have changed. The part that earns its place is verify_setup and the matching offline diagnostic script: connection, authentication, database reachability and CLI availability are checked in one pass, so a misconfiguration reports itself instead of surfacing as a failed deploy.

What it is

An MCP server for running self-hosted Supabase on Coolify. It covers both halves: the Supabase side (migrations, edge functions, storage, auth, health) and the Coolify side (applications, services, environment variables, logs, deploys), plus one-shot deployment of a whole Supabase instance onto Coolify.

What you get

  • Database migrations end to end — list_migrations, deploy_migration with the SQL and a name, get_migration_status for one version, and execute_sql for a raw query, with rollback supported through down SQL
  • Edge functions: list_edge_functions, deploy_edge_function with the code and a verify_jwt flag, invoke_edge_function, get_edge_function_logs and delete_edge_function
  • Storage buckets via list_storage_buckets, create_storage_bucket with visibility and a file size limit, and delete_storage_bucket
  • Auth and platform state — get_auth_config, update_auth_config, check_supabase_health, get_supabase_version
  • verify_setup, a single diagnostic that checks the Coolify connection and authentication, the Supabase connection and authentication, database accessibility, CLI availability and response times, and returns a health report with recommendations
  • Coolify application control — list_coolify_applications, get_coolify_application, update_coolify_application_env, deploy_coolify_application, start_coolify_application, stop_coolify_application, restart_coolify_application and get_coolify_logs
  • Whole-instance deployment: deploy_supabase_to_coolify takes a name and a config (Postgres version, which services to enable, a custom domain, extra environment variables), with update_supabase_deployment and get_deployment_status after that
  • Read-only resources for the same state, addressed as supabase://migrations, supabase://edge-functions, supabase://storage-buckets, supabase://auth-config, supabase://health, coolify://applications, coolify://services and coolify://databases

Requirements

A Coolify instance with an API token, and a self-hosted Supabase instance (or the intent to deploy one). Four required environment variables: COOLIFY_API_URL, COOLIFY_API_TOKEN, SUPABASE_URL and SUPABASE_SERVICE_ROLE_KEY — the service role key, not the anon key, which is the mistake the diagnostics call out by name. COOLIFY_TEAM_ID, SUPABASE_ANON_KEY, SUPABASE_PROJECT_ID, SUPABASE_FUNCTIONS_URL and the SUPABASE_DB_* set are optional. Node.js 18.0.0 or newer; install with npm install -g supabase-coolify-mcp-server or run through npx -y supabase-coolify-mcp-server, and Claude Code takes it in one line. Putting the variables in the MCP config's env block is the path the author recommends. MIT licensed.

Setup effort

One command plus a key — npm install -g supabase-coolify-mcp-server, then supply credentials