jgtolentino/mcp-supabase-clean
3.2
If you are the rightful owner of mcp-supabase-clean and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.
MCP Supabase Clean is a production-safe MCP server designed for seamless integration with Supabase, adhering to all MCP best practices.
Tools
select
Run filtered SELECT queries
insert
Insert data into tables
update
Update data with filters
MCP Supabase Clean
Clean, production-safe MCP server for Supabase integration that follows all MCP best practices.
Features
- Stdio-only MCP server for Claude Desktop & Pulser
- HTTP wrapper for ChatGPT plugin compatibility
- Safe query builder (no raw SQL, RLS respected)
- Schema validation with Zod
- Multi-stage Docker build for minimal runtime
Environment Variables
SUPABASE_URL=https://your-project.supabase.co
SUPABASE_ANON_KEY=eyJhbGciOiJIUzI1NiIs...
SEARCH_PATH=public # optional, defaults to 'public'
PORT=10000 # only for HTTP mode
Usage
Claude Desktop / Pulser (stdio)
npm run start # or node dist/index.js
ChatGPT Plugin (HTTP)
npm run start:http # or node dist/http-wrapper.js
Development
npm run dev # stdio mode
npm run dev:http # HTTP mode
Tools
select
- Run filtered SELECT queriesinsert
- Insert data into tablesupdate
- Update data with filters
Example Pulser Commands
:fin.select table=invoices columns='["id","amount"]' filter='{"status":"paid"}' limit=10
:fin.insert table=customers data='{"name":"ACME Corp","email":"acme@example.com"}'
:fin.update table=invoices data='{"status":"paid"}' filter='{"id":"123"}'
Example ChatGPT API Calls
curl -X POST https://your-app.onrender.com/mcp/select \
-H "Content-Type: application/json" \
-d '{"table":"invoices","columns":["id","amount"],"limit":5}'
Deployment
Render
- Connect GitHub repo
- Set environment variables
- Deploy - HTTP wrapper runs automatically
Claude Desktop
{
"mcpServers": {
"supabase": {
"command": "node",
"args": ["/path/to/mcp-supabase-clean/dist/index.js"],
"env": {
"SUPABASE_URL": "https://your-project.supabase.co",
"SUPABASE_ANON_KEY": "your-anon-key"
}
}
}
}
Integration Matrix
Channel | Transport | Command | Status |
---|---|---|---|
Claude Desktop | stdio | node dist/index.js | ✅ |
Pulser CLI | stdio | :fin.select ... | ✅ |
ChatGPT Plugin | HTTP | POST /mcp/select | ✅ |
Supabase CLI | direct | supabase db push | ✅ |