
Query MCP (Supabase MCP Server)

2025.03.24
0
Python数据库管理Supabase 工具开发工具数据库开发效率
Supabase MCP Server 是一个专为 Supabase 数据库设计的 MCP(Model Context Protocol)服务器,旨在通过 MCP 协议为开发者提供安全、高效的数据库管理工具。它支持 SQL 查询执行、数据库管理、Supabase 管理 API 访问以及用户认证管理等功能,内置多层级安全控制机制,适用于开发、测试和生产环境中的数据库操作。
View on GitHub
Overview
基本能力
产品定位
Supabase MCP Server 是一个基于 MCP 协议的数据库管理工具,专注于为 Supabase 提供安全、高效的数据库操作和管理功能。它通过 MCP 协议与多种 IDE 和客户端工具集成,简化数据库开发流程。
核心功能
- SQL 查询执行:支持安全执行 PostgreSQL 查询,内置风险等级评估。
- 数据库管理:提供表结构查看、数据操作、自动迁移版本控制等功能。
- Supabase 管理 API:支持通过 API 管理 Supabase 项目,包括项目设置、用户管理等。
- 用户认证管理:通过 Supabase Auth Admin SDK 管理用户,支持创建、删除、邀请用户等操作。
- 日志与分析:访问 Supabase 各服务的日志,便于监控和调试。
- 安全控制:提供多层级安全机制,包括只读模式、写操作确认等。
适用场景
- 开发环境:在本地或远程 Supabase 项目中进行数据库开发和测试。
- 生产环境:安全地管理生产数据库,执行必要的维护操作。
- 团队协作:通过统一的工具和流程管理数据库变更,确保团队协作的一致性。
工具列表
get_schemas
:列出数据库中的模式及其大小和表数量。get_tables
:列出表、外键表和视图及其元数据。get_table_schema
:获取表的详细结构(列、键、关系)。execute_postgresql
:执行 SQL 语句。confirm_destructive_operation
:执行高风险操作前的确认。retrieve_migrations
:获取迁移记录。live_dangerously
:切换安全模式。send_management_api_request
:发送 Supabase 管理 API 请求。get_management_api_spec
:获取 API 规范。get_auth_admin_methods_spec
:获取 Auth Admin 方法文档。call_auth_admin_method
:调用 Auth Admin 方法。
常见问题解答
- 安装问题:确保 Python 3.12+ 和 uv 或 pipx 已安装。
- 连接问题:检查环境变量配置,确保
SUPABASE_PROJECT_REF
和SUPABASE_DB_PASSWORD
正确。 - 工具不可用:使用完整路径配置 MCP 服务器。
- 日志查看:日志文件位于
~/.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
调试方式
- 直接运行:在终端中运行
supabase-mcp-server
检查是否正常工作。 - 查看日志:
# macOS/Linux
cat ~/.local/share/supabase-mcp/mcp_server.log
# Windows (PowerShell)
Get-Content "$env:USERPROFILE\.local\share\supabase-mcp\mcp_server.log"
- 使用 MCP Inspector:运行
supabase-mcp-inspector
进行详细调试。