{
"mcpServers": {
"selfhosted-supabase-mcp": {
"command": "<see-readme>",
"args": []
}
}
}No install config available. Check the server's README for setup instructions.
Are you the author?
Add this badge to your README to show your security score and help users find safe servers.
An MCP Server for your Self Hosted Supabase
Is it safe?
No package registry to scan.
No authentication — any process on your machine can connect.
License not specified.
Is it maintained?
Last commit 48 days ago. 124 stars.
Will it work with my client?
Transport: stdio. Works with Claude Desktop, Cursor, Claude Code, and most MCP clients.
No automated test available for this server. Check the GitHub README for setup instructions.
No known vulnerabilities.
This server is missing a description. Tools and install config are also missing.If you've used it, help the community.
Add informationHave you used this server?
Share your experience — it helps other developers decide.
Sign in to write a review.
Manage Supabase projects — databases, auth, storage, and edge functions
Query and manage PostgreSQL databases directly from AI assistants
An official Qdrant Model Context Protocol (MCP) server implementation
Context7 Platform -- Up-to-date code documentation for LLMs and AI code editors
MCP Security Weekly
Get CVE alerts and security updates for Selfhosted Supabase Mcp and similar servers.
Start a conversation
Ask a question, share a tip, or report an issue.
Sign in to join the discussion.
This project provides a Model Context Protocol (MCP) server designed specifically for interacting with self-hosted Supabase instances. It bridges the gap between MCP clients (like IDE extensions) and your local or privately hosted Supabase projects, enabling database introspection, management, and interaction directly from your development environment.
This server was built from scratch, drawing lessons from adapting the official Supabase cloud MCP server, to provide a minimal, focused implementation tailored for the self-hosted use case.
The primary goal of this server is to enable developers using self-hosted Supabase installations to leverage MCP-based tools for tasks such as:
It avoids the complexities of the official cloud server related to multi-project management and cloud-specific APIs, offering a streamlined experience for single-project, self-hosted environments.
Tools are categorized by privilege level:
authenticated or service_role role).service_role JWT (HTTP mode) or direct database/service-key access (stdio mode).| Tool | Description | Privilege |
|------|-------------|-----------|
| list_tables | Lists tables in the database schemas | Regular |
| list_extensions | Lists installed PostgreSQL extensions | Regular |
| list_available_extensions | Lists all available (installable) extensions | Regular |
| list_migrations | Lists applied migrations from supabase_migrations.schema_migrations | Regular |
| apply_migration | Applies a SQL migration and records it in supabase_migrations.schema_migrations | Privileged |
| list_table_columns | Lists columns for a specific table | Regular |
| list_indexes | Lists indexes for a specific table | Regular |
| list_constraints | Lists constraints for a specific table | Regular |
| list_foreign_keys | Lists foreign keys for a specific table | Regular |
| list_triggers | Lists triggers for a specific table | Regular |
| list_database_functions | Lists user-defined database functions | Regular |
| get_function_definition | Gets the source definition of a function | Regular |
| get_trigger_definition | Gets the source definition of a trigger | Regular |
| Tool | Description | Privilege |
|------|-------------|-----------|
| execute_sql | Executes an arbitrary SQL query | Privileged |
| explain_query | Runs EXPLAIN ANALYZE on a query | Privileged |
| get_database_connections | Shows active connections (pg_stat_activity) | Regular |
| get_database_stats | Retrieves database statistics (pg_stat_*) | Regular |
| get_index_stats | Shows index usage statistics | Regular |
| get_vector_index_stats | Shows pgvector index statistics | Regular |
| Tool | Description | Privilege |
|------|-------------|-----------|
| list_rls_policies | Lists Row-Level Security policies for a table | Regular |
| get_rls_status | Shows RLS enabled/disabled status for tables | Regular |
| get_advisors | Retrieves security and performance advisory notices | Regular |
| Tool | Description | Privilege | |------|-------------|-----------| | `get_