Query | MCP server for Supabase

Query | MCP server for Supabase

site icon
2025.04.17 644
Python数据库管理Supabase 集成安全 SQL 执行IDE 扩展数据库开发效率
Supabase MCP Server 是一个开源的 MCP 服务器,允许您的 IDE 安全地运行 SQL、管理模式变更、调用 Supabase 管理 API 和使用 Auth Admin SDK,所有操作都内置了安全控制。它兼容支持 `stdio` 协议的 MCP 客户端,如 Cursor、Windsurf、Cline 和 Claude Desktop。
View on GitHub

Overview

基本能力

产品定位

Supabase MCP Server 是一个为 Supabase 数据库提供自然语言交互和安全控制的中间件服务器,旨在通过 IDE 或 MCP 客户端简化数据库操作和管理。

核心功能

  • SQL 查询执行:支持 PostgreSQL 查询执行,内置风险评估
  • 安全控制:三层次安全系统(safe、write、destructive)
  • 事务处理:支持直接和池化数据库连接的健壮事务处理
  • 自动版本控制:数据库模式变更的自动版本管理
  • Supabase 管理 API:管理 Supabase 项目
  • Auth Admin SDK:通过 Python SDK 管理用户
  • 日志与分析:访问 Supabase 日志和数据分析

适用场景

  • 在 IDE 中安全地执行 SQL 查询
  • 管理 Supabase 数据库模式变更
  • 通过 MCP 客户端自动化 Supabase 管理任务
  • 开发需要与 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_auth_admin_methods_spec:获取 Auth Admin 方法文档
  • call_auth_admin_method:调用 Auth Admin 方法
  • retrieve_logs:访问 Supabase 日志

常见问题解答

  • 安装问题:确保使用正确的 Python 版本(3.12+)和包管理器(pipx 或 uv)
  • 配置问题:检查环境变量和配置文件是否正确设置
  • 连接问题:验证 Supabase 项目引用和区域设置是否正确
  • 工具不可用:确保使用完整路径配置 MCP 服务器

使用教程

使用依赖

  • Python 3.12+
  • 包管理器(pipx 或 uv)

安装教程

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

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

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

调试方式

  • 直接运行 supabase-mcp-server 检查是否正常工作
  • 查看日志文件: ```bash # Mac/Linux cat ~/.local/share/supabase-mcp/mcp_server.log

# Windows Get-Content "$env:USERPROFILE.local\share\supabase-mcp\mcp_server.log" ``` - 使用 MCP Inspector 工具调试服务器问题

许可证

该项目遵循 Apache-2.0 开源许可条款,请参阅 Apache-2.0 了解完整条款。