Supabase MCP Server 使用说明
项目简介
本项目是一个基于 Model Context Protocol (MCP) 构建的服务器,旨在为大型语言模型 (LLM) 提供访问和操作 Supabase 数据库的能力。通过提供一系列预定义的工具,LLM 可以安全、便捷地与 Supabase 数据库进行交互,实现数据的读取、创建、更新和删除等操作。
主要功能点
- 数据读取: 允许 LLM 查询 Supabase 数据库中的数据表,支持灵活的查询条件,包括筛选、分页和排序。
- 数据创建: 支持 LLM 在 Supabase 数据库中创建新的数据记录,可以单条创建,也支持批量创建多条记录。
- 数据更新: 允许 LLM 根据条件更新 Supabase 数据库中已有的数据记录。
- 数据删除: 支持 LLM 根据条件删除 Supabase 数据库中的数据记录。
- 标准MCP协议: 完全遵循 Model Context Protocol 协议,易于与各种 MCP 客户端集成。
- Stdio传输: 使用 Stdio 作为 MCP 的传输协议,简化部署和运行。
安装步骤
- 克隆仓库: 将 GitHub 仓库 'supabase-mcp' 克隆到本地。
git clone https://github.com/gevans3000/supabase-mcp.git cd supabase-mcp - 配置虚拟环境 (推荐): 创建并激活 Python 虚拟环境,以隔离项目依赖。
python -m venv venv source venv/bin/activate # Linux/macOS venv\Scripts\activate # Windows - 安装依赖: 使用 pip 安装项目所需的 Python 库。
pip install -r requirements.txt - 配置环境变量:
- 复制 '.env.example' 文件为 '.env'。
cp .env.example .env - 编辑 '.env' 文件,填入您的 Supabase 项目 URL 和 服务角色密钥。
SUPABASE_URL=您的_Supabase_项目_URL SUPABASE_SERVICE_ROLE_KEY=您的_Supabase_服务角色密钥
- 复制 '.env.example' 文件为 '.env'。
服务器配置
要将 Supabase MCP Server 集成到 MCP 客户端(例如 Windsurf 或 Cursor),您需要配置客户端的 'mcp_config.json' 文件。在 'mcpServers' 部分添加以下配置:
{ "mcpServers": { "supabase": { // 服务器名称,可以自定义 "command": "python", // 启动服务器的命令,这里使用 python "args": [ "/path/to/your/supabase-mcp/server.py" // server.py 脚本的绝对路径,请替换为实际路径 ] } } }
注意: 请将 '/path/to/your/supabase-mcp/server.py' 替换为您本地 'server.py' 文件的实际绝对路径。为了更好的环境隔离,您还可以指定虚拟环境中的 Python 解释器路径作为 'command'。
基本使用方法
- 启动服务器: 在激活虚拟环境后,运行 'server.py' 脚本启动 Supabase MCP Server。
服务器将通过 Stdio 监听 MCP 请求。python server.py - 客户端集成: 配置您的 MCP 客户端(如 Windsurf/Cursor),使其能够连接到 Supabase MCP Server。配置完成后,LLM 即可通过客户端调用 Supabase 数据库的各种工具,例如 'read_records'、'create_records' 等,从而实现与 Supabase 数据库的交互。
信息
分类
数据库与文件