
Supabase MCP
https://github.com/coleam00/supabase-mcp- Category
- Developer Tools
- Rank
- No. 304Tools index
- Listed in
- #8 Connect tools with MCP
- Pricing
- Open Source
- Type
- TOOL
- Builder
- coleam00
- GitHub
- 2.9k stars
- Latest release
- mcp-utils-v0.8.0
- Date
About
Supabase MCP server — let your AI agent query, mutate, and manage Supabase projects through the Model Context Protocol.
What it does
It gives compatible AI assistants a direct, authenticated working connection to a Supabase project. Through that connection, an assistant can inspect project information, manage tables, fetch configuration, query data, and use selected feature groups.
Why it's ranked here
The project combines a simple hosted HTTP setup with unusually useful controls for narrowing access. Project scoping, read-only mode, and feature filtering reduce unnecessary exposure. Typed schemas for the Vercel AI SDK add client-side validation, while unit, integration, and end-to-end test configurations show serious engineering discipline.
What's good
Access can be limited to one project, non-mutating operations, or selected feature groups such as database and documentation. The published package supplies input and output schemas for static AI SDK tools, enabling inferred TypeScript types and client-side validation. It also supports hosted, local CLI, and self-hosted connections.
Tradeoffs
Local CLI and self-hosted environments expose only a limited tool subset and lack OAuth 2.1. Tool results do not provide structured MCP content, so the AI SDK parses JSON from text instead. Connecting an LLM to project data also carries enough risk that the setup guide explicitly directs users to security practices first.
How to use it well
Use it when developers already work in Supabase and want an assistant involved in database, configuration, or project maintenance tasks. Start project-scoped and read-only, then enable only the feature groups the workflow needs. It does not replace the separate PostgREST MCP server for connecting an application's own users through its REST API.
Technical notes+
The TypeScript monorepo builds packages/mcp-utils, packages/mcp-server-supabase, and packages/mcp-server-postgrest through scripts in package.json. Each package uses tsup.config.ts to emit CommonJS, ESM, source maps, declarations, minified output, and split bundles. packages/mcp-utils/src/server.ts wraps the MCP SDK with typed resources, URI templates, Zod-backed tools, dynamic tool and resource providers, callbacks, hidden tools, and request handlers. packages/mcp-utils/src/util.ts validates and compares URLs and performs basic RFC 6570-style path matching. packages/mcp-server-supabase/vitest.workspace.ts separates unit, integration, and end-to-end suites. README.md documents hosted HTTP configuration, local and self-hosted endpoints, schema generation, filtering, and the structured-content limitation.
Observed
- License
- Apache 2.0
- Primary language
- TypeScript
- Interface
- Model Context Protocol over HTTP, with a stdio build entry
- Packaging
- Monorepo with Supabase, PostgREST, and shared utility packages
- Build outputs
- CommonJS and ESM bundles with TypeScript declarations and source maps
- Platform support
- Hosted Supabase, local Supabase CLI, and self-hosted Supabase
- Testing structure
- Unit, integration, and end-to-end Vitest workspaces
Read from README.md, package.json, packages/mcp-utils/tsup.config.ts, packages/mcp-server-supabase/tsup.config.ts, packages/mcp-server-postgrest/tsup.config.ts, packages/mcp-server-supabase/vitest.setup.ts, packages/mcp-server-supabase/vitest.config.ts, packages/mcp-server-supabase/vitest.workspace.ts, packages/mcp-utils/src/util.ts, packages/mcp-utils/src/index.ts, packages/mcp-utils/src/types.ts, packages/mcp-utils/src/server.ts, packages/mcp-utils/src/util.test.ts, packages/mcp-utils/src/server.test.ts, packages/mcp-server-supabase/src/logs.ts.
What it can do
Query Supabase database tables
SQL queries or table names → Database records and query results
Insert data into Supabase tables
Data records and table specifications → Confirmation of successful data insertion
Update existing database records
Record identifiers and updated field values → Modified database records
Delete records from Supabase tables
Record identifiers or deletion criteria → Confirmation of successful deletion
Manage Supabase project configuration
Project settings and configuration parameters → Updated project configuration
Execute database schema operations
Schema definitions and table structures → Created or modified database schema
Tags
Tech Stack
Comments (0)
No comments yet
Editorially curated, with community endorsements as a secondary signal. Corrections welcome.