Skip to main content
Glama
abushadab

Self-Hosted Supabase MCP Server

by abushadab

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault

No arguments

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Server capabilities have not been inspected yet.

Tools

Functions exposed to the LLM to take actions

NameDescription
list_tablesB

Lists all accessible tables in the connected database, grouped by schema.

list_extensionsA

Lists all installed PostgreSQL extensions in the database.

list_migrationsA

Lists applied database migrations recorded in supabase_migrations.schema_migrations table.

apply_migrationA

Applies a SQL migration script and records it in the supabase_migrations.schema_migrations table within a transaction.

execute_sqlB

Executes an arbitrary SQL query against the database, using direct database connection when available or RPC function as fallback.

get_database_connectionsA

Retrieves information about active database connections from pg_stat_activity.

get_database_statsA

Retrieves statistics about database activity and the background writer from pg_stat_database and pg_stat_bgwriter.

get_project_urlA

Returns the configured Supabase project URL for this server.

get_anon_keyA

Returns the configured Supabase anon key for this server.

get_service_keyA

Returns the configured Supabase service role key for this server, if available.

generate_typescript_typesA

Generates TypeScript types from the database schema using the Supabase CLI (supabase gen types) and downloads the file to the specified absolute path. The tool returns the current platform (win32, darwin, linux) to help with path formatting. Requires DATABASE_URL configuration and Supabase CLI installed.

rebuild_hooksB

Attempts to restart the pg_net worker. Requires the pg_net extension to be installed and available.

verify_jwt_secretA

Checks if the Supabase JWT secret is configured for this server and returns a preview.

list_auth_usersC

Lists users from the auth.users table.

get_auth_userB

Retrieves details for a specific user from auth.users by their ID.

delete_auth_userA

Deletes a user from auth.users by their ID. Requires service_role key and direct DB connection.

create_auth_userA

Creates a new user directly in auth.users. WARNING: Requires plain password, insecure. Use with extreme caution.

update_auth_userA

Updates fields for a user in auth.users. WARNING: Password handling is insecure. Requires service_role key and direct DB connection.

list_storage_bucketsB

Lists all storage buckets in the project.

list_storage_objectsA

Lists objects within a specific storage bucket, optionally filtering by prefix.

list_realtime_publicationsA

Lists PostgreSQL publications, often used by Supabase Realtime.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A3.7/5.0

Scored across 21 tools

Disambiguation5/5

Each tool has a clearly distinct purpose targeting specific resources and actions within the Supabase ecosystem. For example, auth operations (create_auth_user, get_auth_user, update_auth_user, delete_auth_user, list_auth_users) are clearly separated from storage operations (list_storage_buckets, list_storage_objects), database operations (execute_sql, list_tables, list_extensions), and monitoring tools (get_database_stats, get_database_connections). No tools appear to overlap in functionality.

Naming Consistency5/5

The tool names follow a highly consistent verb_noun pattern throughout, with clear action prefixes like 'get_', 'list_', 'create_', 'update_', 'delete_', 'apply_', 'execute_', 'generate_', and 'verify_'. All tools use snake_case consistently, making them predictable and readable. Examples include get_anon_key, list_auth_users, apply_migration, and verify_jwt_secret.

Tool Count4/5

With 21 tools, the count is slightly high but reasonable for a comprehensive Supabase management server covering authentication, database operations, storage, monitoring, and migrations. The tools are well-scoped across different domains rather than being redundant. A minor reduction could improve focus, but the count aligns with the server's broad purpose.

Completeness5/5

The tool set provides complete coverage for managing a self-hosted Supabase instance, including CRUD operations for auth users, database querying and monitoring, storage bucket and object listing, migration management, and utility functions like generating TypeScript types and verifying configurations. No obvious gaps exist; agents can perform all essential administrative and development tasks without dead ends.

Maintenance

ActivityInactive
ResponsivenessNo issues