Supabase Management Server
FreeNot checkedMCP tools for managing your self-hosted Supabase instance. Combines Edge Function CRUD, migration management, log monitoring, and Studio MCP proxy into a single
About
MCP tools for managing your self-hosted Supabase instance. Combines Edge Function CRUD, migration management, log monitoring, and Studio MCP proxy into a single endpoint.
README
Supabase MCP Server — MCP (Model Context Protocol) tools for managing your self-hosted Supabase instance.
Combines Edge Function CRUD, migration management, log monitoring, and Studio MCP proxy into a single endpoint. Vibe Coded.
🚀 Features
| Category | Tool Count | Description |
|---|---|---|
| Edge Functions | 6 | CRUD + deploy (list, view, create, update, delete, restart) |
| Migrations | 4 | SQL migration management (list, view, apply, raw SQL execute) |
| Logs | 2 | Docker container logs (edge runtime + any container) |
| Studio Proxy | ~11 | Proxies Supabase Studio's built-in MCP tools |
Total: 12 management + ~11 Studio = ~23 tools on a single MCP endpoint!
📦 Quick Start
1. Clone & Build
git clone https://github.com/ubeydtalha/supabase-mgmt-mcp.git
cd supabase-mgmt-mcp
cp .env.example .env
# Fill in your Supabase credentials in .env
npm install
npm run build
2. Run
# Directly with Node.js
npm start
# With Docker
docker compose up -d
3. Connect to VS Code
Add to ~/.vscode/mcp.json in VS Code:
{
"servers": {
"supabase-mgmt": {
"type": "url",
"url": "http://localhost:3200/mcp",
"headers": {
"apikey": "supabase_mgmt_api_key_here",
"MCP-Protocol-Version": "2025-06-18"
}
}
}
}
🛠️ Tool Reference
Edge Functions
| Tool | Description |
|---|---|
supabase_mgmt_list_functions |
List all edge functions |
supabase_mgmt_get_function |
Show function source code and details |
supabase_mgmt_create_function |
Create a new edge function |
supabase_mgmt_update_function |
Update function source code / JWT settings |
supabase_mgmt_delete_function |
Delete a function (confirm: true required) |
supabase_mgmt_deploy |
Restart edge runtime (activate changes) |
Migrations & SQL
| Tool | Description |
|---|---|
supabase_mgmt_list_migrations |
List migration files |
supabase_mgmt_get_migration |
View migration SQL content |
supabase_mgmt_apply_migration |
Apply a migration file |
supabase_mgmt_run_sql |
Execute raw SQL |
Logs
| Tool | Description |
|---|---|
supabase_mgmt_get_logs |
Fetch edge runtime logs |
supabase_mgmt_get_container_logs |
Fetch logs from any Docker container |
Studio Proxy (optional, enabled when STUDIO_MCP_URL is set)
| Tool | Description |
|---|---|
list_tables |
List database tables |
list_extensions |
List extensions |
execute_sql |
Execute SQL queries |
apply_migration |
Apply a migration |
get_logs |
Get Supabase service logs |
search_docs |
Search Supabase documentation |
get_advisors |
Get performance/security advice |
get_project_url |
Show project URL |
get_publishable_keys |
Show API keys |
generate_typescript_types |
Generate TypeScript type definitions |
list_migrations |
List migrations |
🔧 Environment Variables
| Variable | Required | Default | Description |
|---|---|---|---|
PORT |
No | 3200 |
Server port |
SUPABASE_URL |
Yes | — | Supabase project URL (e.g. https://supabase.example.com) |
SUPABASE_SERVICE_ROLE_KEY |
Yes | — | Service role key (for admin operations) |
SUPABASE_MGMT_API_KEY |
Yes | — | API key to connect to the MCP server |
SUPABASE_MGMT_API_KEYS |
No | — | Additional API keys (comma-separated) |
FUNCTIONS_PATH |
No | /functions |
Path to edge function files |
MIGRATIONS_PATH |
No | /migrations |
Path to migration SQL files |
EDGE_CONTAINER_NAME |
No | supabase-functions |
Edge runtime Docker container name |
STUDIO_MCP_URL |
No | — | Enables Studio MCP proxy |
🐳 Docker Deployment
Integration with Self-hosted Supabase
# docker-compose.yml (add to your stack)
services:
supabase-mgmt-mcp:
image: ghcr.io/ubeydtalha/supabase-mgmt-mcp:latest
container_name: supabase-mgmt-mcp
restart: unless-stopped
ports:
- "3200:3200"
env_file: .env
volumes:
- /path/to/functions:/functions
- /path/to/migrations:/migrations
- /var/run/docker.sock:/var/run/docker.sock:ro
networks:
- supabase
With Kong API Gateway
# Add to Kong declarative config
services:
- name: supabase-mgmt-mcp
url: http://supabase-mgmt-mcp:3200/mcp
routes:
- name: mcp
strip_path: false
paths:
- /mcp
⚠️ Important Notes
Session Management: MCP StreamableHTTP transport expects a new session for each
tools/call. VS Code Copilot handles this automatically.exec_sql Prerequisite: The
exec_sqlfunction must exist in PostgreSQL forapply_migrationandrun_sqltools:CREATE OR REPLACE FUNCTION public.exec_sql(sql_text text) RETURNS void LANGUAGE plpgsql SECURITY DEFINER SET search_path = public AS $$ BEGIN EXECUTE sql_text; END; $$; GRANT EXECUTE ON FUNCTION public.exec_sql(text) TO anon, authenticated, service_role;Docker Socket:
/var/run/docker.sockmust be mounted for container logs and edge runtime restart.Activating Changes: After creating/updating/deleting functions, run
supabase_mgmt_deployto apply changes.
📚 Documentation
- Setup Guide — Detailed setup instructions
- Architecture — System architecture and design decisions
- Usage Examples — Copilot Chat usage scenarios
📄 License
MIT License — see LICENSE.
🤝 Contributing
PRs and issues are welcome. Please open an issue first for major changes.
from github.com/ubeydtalha/supabase-edge-function-upgraded-mcp
Installing Supabase Management Server
This server has no published package — it is built from source. Open the repository and follow its README.
▸ github.com/ubeydtalha/supabase-edge-function-upgraded-mcpFAQ
Is Supabase Management Server MCP free?
Yes, Supabase Management Server MCP is free — one-click install via Unyly at no cost.
Does Supabase Management Server need an API key?
No, Supabase Management Server runs without API keys or environment variables.
Is Supabase Management Server hosted or self-hosted?
Self-hosted: the server runs locally on your machine via the install command above.
How do I install Supabase Management Server in Claude Desktop, Claude Code or Cursor?
Open Supabase Management Server on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.
Related MCPs
GitHub
PRs, issues, code search, CI status
by GitHubFilesystem
Secure file operations with configurable access controls.
Memory
Knowledge graph-based persistent memory system.
Template MCP Server
A CLI tool to create a new Model Context Protocol server project with TypeScript support, dual transport options, and an extensible structure
by mcpdotdirectAmap Maps Mcp Server
MCP server for using the AMap Maps API
by duxiaohuiSupabase
Database, auth and storage
by SupabaseEverything
Reference / test server with prompts, resources, and tools.
Git
Tools to read, search, and manipulate Git repositories.
Sequential Thinking
Dynamic and reflective problem-solving through thought sequences.
Time
Time and timezone conversion capabilities.
Compare Supabase Management Server with
Not sure what to pick?
Find your stack in 60 seconds
Author?
Embed badge for your README
Browse similar
All development MCPs
