Query | MCP server for Supabase

Query | MCP server for Supabase

site icon
2025.04.08 0
Python数据库管理开发工具数据库开发效率
Supabase MCP Server 是一个开源的 MCP 服务器,允许您的 IDE 安全地运行 SQL、管理模式变更、调用 Supabase 管理 API 和使用 Auth Admin SDK,所有操作都内置了安全控制。它支持多种 MCP 客户端,如 Cursor、Windsurf、Cline 和 Claude Desktop,提供了数据库查询、管理 API 访问和 Auth Admin SDK 方法调用等功能。
View on GitHub

Overview

基本能力

产品定位

Supabase MCP Server 是一个为开发者设计的工具,旨在通过自然语言或 IDE 集成安全地管理和操作 Supabase 数据库、管理 API 和 Auth Admin SDK。

核心功能

  • 数据库查询工具:支持 SQL 查询执行、SQL 解析和验证、自动迁移版本化、安全控制等。
  • 管理 API 工具:提供对 Supabase 管理 API 的安全访问,包括发送请求、获取 API 规范和安全规则。
  • Auth Admin 工具:支持直接调用 Supabase Auth Admin 方法,如创建用户、删除用户等。
  • 日志与分析:访问 Supabase 日志和数据分析,简化调试和监控。
  • 自动版本化数据库变更:自动创建迁移脚本,减少不可逆变更的风险。
  • 通用安全模式:统一的风险管理接口,控制所有操作的安全设置。

适用场景

  • 开发环境:在本地或远程 Supabase 项目中进行数据库操作和管理。
  • 团队协作:通过 IDE 集成安全地共享和管理数据库变更。
  • 自动化测试:使用 Auth Admin SDK 方法创建和管理测试用户。
  • 监控与调试:访问和分析 Supabase 日志,快速定位问题。

工具列表

  • get_schemas:列出模式及其大小和表数量。
  • get_tables:列出表、外键表和视图及其元数据。
  • get_table_schema:获取详细的表结构(列、键、关系)。
  • execute_postgresql:执行 SQL 语句。
  • confirm_destructive_operation:执行高风险操作前的确认。
  • retrieve_migrations:获取迁移记录。
  • live_dangerously:切换安全模式。
  • send_management_api_request:发送管理 API 请求。
  • get_management_api_spec:获取 API 规范。
  • get_management_api_safety_rules:获取安全规则。
  • get_auth_admin_methods_spec:获取 Auth Admin 方法文档。
  • call_auth_admin_method:调用 Auth Admin 方法。
  • retrieve_logs:访问 Supabase 日志。

常见问题解答

  • 安装问题:确保 Python 3.12+ 和 uv 或 pipx 已安装。
  • 配置问题:检查环境变量或全局配置文件是否正确设置。
  • 连接问题:确保 Supabase 项目引用和区域设置正确。
  • 日志访问:日志文件位于 ~/.local/share/supabase-mcp/mcp_server.log(macOS/Linux)或 %USERPROFILE%\.local\share\supabase-mcp\mcp_server.log(Windows)。

使用教程

使用依赖

  • Python 3.12+:确保已安装 Python 3.12 或更高版本。
  • uv 或 pipx:推荐使用 uv 或 pipx 进行安装。

安装教程

# 使用 pipx 安装(推荐)
pipx install supabase-mcp-server

# 使用 uv 安装
uv pip install supabase-mcp-server

# 从源代码安装
uv venv
source .venv/bin/activate  # macOS/Linux
.venv\Scripts\activate  # Windows
uv pip install -e .

调试方式

# 直接运行服务器以检查安装
supabase-mcp-server

# 查看日志
cat ~/.local/share/supabase-mcp/mcp_server.log  # macOS/Linux
Get-Content "$env:USERPROFILE\.local\share\supabase-mcp\mcp_server.log"  # Windows

许可证

该项目遵循 Apache 2.0 开源许可条款。