supabase-mcp
0
The Supabase MCP Server is designed to allow AI assistants to manipulate Supabase databases through defined interactions. Key features include reading, creating, updating, and deleting records with configurable filtering and security measures.
Supabase MCP Server
A Model Context Protocol (MCP) server that provides AI assistants with the ability to interact with Supabase databases through standardized tools.
Features
- Read rows from tables with filtering and column selection
- Create single or multiple records
- Update records with flexible filtering
- Delete records safely with filter conditions
- Environment-based configuration
- Stdio transport support
Installation
- Clone the repository:
git clone <repository-url>
cd mcp
- Create a virtual environment and install dependencies:
python -m venv .venv
source .venv/bin/activate # On Windows: .venv\Scripts\activate
pip install -r requirements.txt
- Set up environment variables:
Create a
.env
file in the project root with:
SUPABASE_URL=your_project_url
SUPABASE_SERVICE_KEY=your_service_role_key
Usage
Run the MCP server:
python -m supabase_mcp.server
Available Tools
read_rows
Read data from Supabase tables with optional filtering and column selection.
{
"table": "users",
"columns": ["id", "name", "email"], # Optional
"filters": {"is_active": true}, # Optional
"limit": 10 # Optional
}
create_records
Insert one or multiple records into a table.
{
"table": "users",
"records": {
"name": "John Doe",
"email": "john@example.com"
}
# Or multiple records:
# "records": [
# {"name": "John", "email": "john@example.com"},
# {"name": "Jane", "email": "jane@example.com"}
# ]
}
update_records
Update records that match specific filters.
{
"table": "users",
"filters": {"id": 123},
"data": {"status": "active"}
}
delete_records
Delete records that match specific filters.
{
"table": "users",
"filters": {"status": "inactive"}
}
Security
- Uses service role key for database operations
- Requires proper environment configuration
- Validates all inputs using Pydantic models
License
MIT License