Supabase MCP Server 使用说明
项目简介
本项目是一个基于 Model Context Protocol (MCP) 的服务器,它充当 LLM 应用和 Supabase 数据库之间的桥梁。通过此服务器,LLM 可以安全地查询存储在 Supabase 'feature_suggestions' 表中的功能建议数据,从而为 LLM 提供上下文信息,增强其功能。
主要功能点
- 数据访问能力: 通过 'query_feature_suggestions' 工具,LLM 可以查询 Supabase 数据库中 'feature_suggestions' 表的数据。
- 可配置查询: 支持通过可选参数 'limit' 限制查询结果的数量,方便 LLM 获取所需数量的数据。
- 标准化 MCP 接口: 遵循 MCP 协议,使用 JSON-RPC 进行通信,可以与任何兼容 MCP 协议的 LLM 客户端(如 Cursor、Claude Desktop)集成。
- 易于部署和配置: 使用 Node.js 和 npm 构建,配置简单,只需设置 Supabase 密钥和 URL。
安装步骤
- 安装 Node.js 和 npm: 确保你的电脑上已安装 Node.js (v16 或更高版本) 和 npm。
- 获取代码: 从 GitHub 克隆或下载仓库代码。
- 配置环境变量:
- 在项目根目录下创建 '.env' 文件。
- 在 '.env' 文件中填入你的 Supabase 项目 URL 和匿名密钥:
请替换 'your_supabase_url' 和 'your_supabase_anon_key' 为你实际的 Supabase 项目信息。SUPABASE_URL=your_supabase_url SUPABASE_ANON_KEY=your_supabase_anon_key
- 安装依赖: 在项目根目录下运行以下命令安装项目依赖:
npm install
服务器配置
要将此 MCP 服务器添加到 MCP 客户端(例如 Cursor 或 Claude Desktop),你需要提供服务器的启动命令。以下是配置信息,请根据你的 MCP 客户端类型选择合适的配置方式。
对于 Cursor:
- 服务器名称 (Name): Supabase (可以自定义)
- 服务器类型 (Type): command
- 启动命令 (Command): 'npx tsx /path/to/mcp-server.ts' (请将 '/path/to/mcp-server.ts' 替换为 'mcp-server.ts' 文件在你电脑上的实际路径)
对于 Claude Desktop:
在 Claude Desktop 的配置文件中添加以下 JSON 配置:
{ "mcpServers": { "supabase": { // 服务器名称,可以自定义,例如 "supabase" "command": "npx", "args": ["tsx", "/path/to/mcp-server.ts"] // 请将 "/path/to/mcp-server.ts" 替换为 'mcp-server.ts' 文件在你电脑上的实际路径 } } }
注意: 请务必将 '/path/to/mcp-server.ts' 替换为你本地 'mcp-server.ts' 文件的绝对路径。例如,如果你的项目放在用户目录下的 'documents/feature-request-collection-mcp' 文件夹中,那么路径可能类似于 '/Users/yourusername/documents/feature-request-collection-mcp/mcp-server.ts' (macOS/Linux) 或 'C:\Users\yourusername\documents\feature-request-collection-mcp\mcp-server.ts' (Windows)。
基本使用方法
-
启动服务器: 在项目根目录下运行以下命令启动 MCP 服务器:
npm run dev或
npx tsx mcp-server.ts服务器成功启动后,你会在终端看到 "Supabase MCP server started and ready to receive commands." 的提示信息。
-
在 LLM 客户端中使用工具: 在支持 MCP 协议的 LLM 客户端中(例如 Cursor 或 Claude Desktop),你可以通过自然语言指令调用 'query_feature_suggestions' 工具来查询 feature_suggestions 表的数据。
例如,在 LLM 中输入:
- 'Can you show me feature suggestions from the database?' (显示默认数量的 feature suggestions)
- 'Can you show me the top 10 feature suggestions?' (显示最多 10 条 feature suggestions)
LLM 客户端会将你的请求转换为 MCP 请求发送给服务器,服务器查询 Supabase 后,会将结果返回给 LLM 客户端。
故障排除
- 连接问题: 检查 '.env' 文件中的 Supabase URL 和匿名密钥是否正确。
- 错误信息: 查看终端输出或 'mcp-server.log' 文件,了解服务器的错误日志信息。
- 表不存在: 确保你的 Supabase 数据库中存在名为 'feature_suggestions' 的表。
信息
分类
数据库与文件