supabase-model-context-protocol-server
Supabase MCP Server

A powerful Model Context Protocol (MCP) server for Supabase, built with mcp-use. This server provides interactive tools and beautiful React widgets for exploring and querying your Supabase database.
š Built with mcp-use
This MCP server is powered by mcp-use, a modern framework for building MCP servers with:
Type-safe server creation - Build MCP servers with full TypeScript support
React widget support - Create interactive UI components using the OpenAI Apps SDK
Simplified client connections - Easily connect to other MCP servers without LangChain
Built-in development tools - Hot reload, build, and deploy commands
Zero boilerplate - Focus on your tools, not infrastructure
Features
š Database Schema Explorer - Browse all tables in your Supabase database with an interactive UI
š Table Viewer - Display and explore table data with a beautiful data table widget
š SQL Query Executor - Run read-only SQL queries and view results in an interactive widget
šØ React Widgets - Rich, interactive UI components built with React and Tailwind CSS
š Secure Authentication - Uses Supabase Personal Access Tokens for secure access
Prerequisites
Node.js 18+ and yarn
A Supabase project
A Supabase Personal Access Token (generate one here)
Installation
# Install dependencies
yarn installConfiguration
Set the following required environment variables:
# Required: Your Supabase Personal Access Token
export ACCESS_TOKEN="your-access-token"
# Required: Content Security Policy URLs for widget loading => required by ChatGPT
export CSP_URLS="https://supabase.com,https://mcp.supabase.com,https://*.mcp-use.com,https://*.supabase.co"Development
mcp-use provides convenient development commands:
# Start development server with hot reload
yarn dev
# Build for production
yarn build
# Start production server
yarn start
# Deploy the server
yarn deployAvailable Tools
list-tables
List all tables in your Supabase database. Opens an interactive schema explorer widget.
Parameters:
schemas(optional): Array of schema names to include (default:["public"])
Widget: schema-explorer - Interactive table browser with schema information
show-table
Display data from a specific table. Opens a data table viewer widget.
Parameters:
tableName(required): Name of the table to displayschema(optional): Schema name (default:"public")limit(optional): Maximum number of rows to fetch (default:100)
Widget: table-viewer - Interactive data table with sorting and filtering
execute-sql
Execute read-only SQL queries on your Supabase database. Opens a query results widget.
Parameters:
query(required): SQL query to execute
Widget: query-results - Interactive query results viewer with syntax highlighting
Available Resources
supabase://project-url
Get the API URL for your Supabase project.
UI Widgets
This server includes three custom React widgets built with mcp-use:
Schema Explorer (
schema-explorer) - Browse database tables and schemasTable Viewer (
table-viewer) - View and explore table dataQuery Results (
query-results) - Display SQL query results
All widgets are built with:
React 19
Tailwind CSS
Radix UI components
Lucide React icons
Architecture
This server demonstrates the power of mcp-use:
Server-side: Uses
mcp-use/serverto create tools, resources, and widgetsClient-side: Uses
mcp-use/clientto connect to Supabase's official MCP serverNo LangChain: Direct MCP client connections without external dependencies
Type-safe: Full TypeScript support with Zod schemas
Project Structure
.
āāā index.ts # Main server file using [mcp-use](https://github.com/mcp-use/mcp-use)
āāā resources/ # React widget components
ā āāā components/ # Reusable UI components
ā āāā schema-explorer/ # Schema explorer widget
ā āāā table-viewer/ # Table viewer widget
ā āāā supabase-status/ # Display Supabase status for a certain time window
ā āāā query-results/ # Query results widget
āāā package.json # Dependencies including [mcp-use](https://github.com/mcp-use/mcp-use)License
MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/andrewkorot/supabase-model-context-protocol-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server