Supabase PostgreSQL

Supabase PostgreSQL

🚀 如何设置和使用 Supabase MCP 服务器

本项目提供了一个 MCP(机器控制协议)服务器,可借助 CursorCodeium CascadeSupabase 数据库进行管理。通过该服务器,你能够使用自然语言命令执行各类数据库操作。

🚀 快速开始

安装依赖

  1. 克隆本仓库:
git clone git@github.com:Quegenx/supabase-mcp-server.git
cd supabase-mcp-server
  1. 安装所有依赖项:
npm install
  1. 构建项目:
npm run build

配置

  1. 复制你的 Supabase 项目 IDAnon 公共密钥

  2. 创建一个 .env 文件:

echo "SUPABASE_PROJECT_ID=your_project_id" > .env
echo "SUPABASE_PUBLIC_KEY=your_anon_key" >> .env
  1. 启动服务器:
npm start

✨ 主要特性

配置完成后,MCP 服务器会在 Cursor 的 Composer 中提供所有数据库管理工具。你只需描述想要对数据库执行的操作,AI 就会使用合适的命令来执行。

示例:

  • 📋 "显示我数据库中的所有表"
  • ➕ "创建一个包含 id、name 和 email 列的新用户表"
  • 🔍 "在 users 表的 email 列上添加索引"

📦 安装指南

安装依赖

  1. 克隆本仓库:
git clone git@github.com:Quegenx/supabase-mcp-server.git
cd supabase-mcp-server
  1. 安装所有依赖项:
npm install
  1. 构建项目:
npm run build

配置

  1. 复制你的 Supabase 项目 IDAnon 公共密钥

  2. 创建一个 .env 文件:

echo "SUPABASE_PROJECT_ID=your_project_id" > .env
echo "SUPABASE_PUBLIC_KEY=your_anon_key" >> .env
  1. 启动服务器:
npm start

💻 使用示例

基础用法

配置完成后,MCP 服务器将在 Cursor 的 Composer 中提供所有数据库管理工具。只需描述你想要对数据库进行的操作,AI 将会使用适当的命令执行。

示例:

  • 📋 "显示我数据库中的所有表"
  • ➕ "创建一个包含 id、name 和 email 列的新用户表"
  • 🔍 "在 users 表的 email 列上添加索引"

📚 详细文档

项目结构

supabase-mcp-server/
├── dist/                    # 编译后的 JavaScript 文件
│   ├── index.d.ts          # TypeScript 声明文件
│   └── index.js            # 主 JavaScript 文件
├── src/                    # 源代码
│   └── index.ts           # 主 TypeScript 文件
├── package.json           # 项目配置
├── package-lock.json      # 依赖项锁定文件
└── tsconfig.json         # TypeScript 配置文件

平台特定说明

Windows 用户

  • 确保安装了 Node.js
  • 使用命令行运行命令
  • 复制 .env 文件到项目根目录

macOS 和 Linux 用户

  • 确保你使用的是最新版本的 Node.js
  • 可以使用 xdg-openopen 打开生成的日志文件:
xdg-open ./logs/server.log

🔧 技术细节

故障排除

环境变量问题

  • 确保你已经正确设置了 SUPABASE_PROJECT_IDSUPABASE_PUBLIC_KEY
  • 检查 .env 文件是否存在,并且没有拼写错误。

连接问题

  • 确保你的网络允许出站到 Supabase 服务(默认端口:443)
  • 使用 curl https://api.supabase.com/v1/anon 测试连接

启动问题

npm start -- --env development

如果需要调试,可以使用以下命令:

DEBUG=supabase-mcp:* npm start

安全注意事项

  • 🔐 保持你的数据库连接字符串安全
  • ⚠️ 永远不要将敏感凭证提交到版本控制系统
  • 👮 使用适当的访问控制和权限
  • 🛡️ 验证和清理所有输入以防止 SQL 注入

📄 许可证

MIT License

📞 联系方式

有问题或建议?请在 GitHub Issues 中创建一个问题。

  • 0 关注
  • 0 收藏,10 浏览
  • system 提出于 2025-09-24 17:00

相似服务问题