Supabase MCP 服务器项目教程
Supabase MCP 服务器项目教程
supabase-mcp-server Supabase MCP Server to enable Cursor & Windsurf to interact with Supabase directly 项目地址: https://gitcode.com/gh_mirrors/sup/supabase-mcp-server
1. 项目目录结构及介绍
Supabase MCP 服务器项目的目录结构如下:
supabase-mcp-server/
├── .github/ # GitHub 工作流和模板
├── supabase_mcp/ # 项目核心代码
├── tests/ # 测试代码
├── .dockerignore # Docker 忽略文件
├── .env.example # 配置文件示例
├── .env.test.example # 测试环境配置文件示例
├── .gitignore # Git 忽略文件
├── pre-commit-config.yaml # pre-commit 配置文件
├── python-version # 指定项目 Python 版本
├── CHANGELOG.MD # 更新日志
├── CONTRIBUTING.MD # 贡献指南
├── Dockerfile # Docker 构建文件
├── LICENSE # 项目许可证
├── README.md # 项目说明文件
├── codecov.yml # Codecov 配置文件
├── llms-full.txt # License List 文件
├── pyproject.toml # Python 项目配置文件
├── smithery.yaml # Smithery 配置文件
└── uv.lock # uv 工具的锁文件
.github/
: 包含项目的 GitHub 工作流和 Pull Request 模板。supabase_mcp/
: 包含项目的核心代码,包括 MCP 服务器的实现。tests/
: 包含项目的测试代码。.dockerignore
: 指定在构建 Docker 镜像时应该忽略的文件和目录。.env.example
和.env.test.example
: 分别是生产环境和测试环境的配置文件示例。.gitignore
: 指定在 Git 仓库中应该忽略的文件和目录。pre-commit-config.yaml
: 配置 pre-commit 工具,用于在提交代码前自动执行一些格式化任务。python-version
: 指定项目使用的 Python 版本。CHANGELOG.MD
: 记录项目的更新日志。CONTRIBUTING.MD
: 提供贡献指南,帮助新贡献者了解如何为项目贡献代码。Dockerfile
: 用于构建项目 Docker 镜像的文件。LICENSE
: 项目使用的许可证文件。README.md
: 项目的说明文件,包含项目的介绍和安装使用指南。codecov.yml
: 配置 Codecov 工具,用于收集项目的测试覆盖率信息。llms-full.txt
: 记录项目使用的所有开源许可证。pyproject.toml
: Python 项目的配置文件,用于定义项目的依赖和其他元数据。smithery.yaml
: 配置 Smithery 工具,用于代码生成和文档生成。
2. 项目的启动文件介绍
项目的启动文件是 supabase_mcp_server.py
,它通常位于 supabase_mcp/
目录下。这个文件负责初始化和启动 MCP 服务器。以下是启动文件的基本内容:
# 导入必要的模块
from supabase_mcp import create_app
# 创建应用实例
app = create_app()
# 启动应用
if __name__ == "__main__":
app.run()
启动文件的作用是:
- 导入项目所需的模块和函数。
- 创建一个应用实例。
- 如果该文件作为主程序运行,则启动应用。
3. 项目的配置文件介绍
项目的配置文件通常是 .env
文件,它用于存储项目的配置信息,如数据库连接信息、API 密钥等。以下是配置文件的一个示例:
# .env 文件内容
QUERY_API_KEY=your-api-key
SUPABASE_PROJECT_REF=your-project-ref
SUPABASE_DB_PASSWORD=your-db-password
SUPABASE_REGION=us-east-1
SUPABASE_ACCESS_TOKEN=your-access-token
SUPABASE_SERVICE_ROLE_KEY=your-service-role-key
配置文件中包含以下关键配置项:
QUERY_API_KEY
: 从thequery.dev
获取的 API 密钥,用于所有操作。SUPABASE_PROJECT_REF
: Supabase 项目的参考 ID 或本地主机和端口。SUPABASE_DB_PASSWORD
: 数据库密码。SUPABASE_REGION
: AWS 区域,你的 Supabase 项目托管在该区域。SUPABASE_ACCESS_TOKEN
: Supabase 管理 API 的个人访问令牌。SUPABASE_SERVICE_ROLE_KEY
: Auth Admin SDK 的服务角色密钥。
在启动项目前,确保正确设置 .env
文件中的配置项。如果你是通过 pipx
或 uv
安装的项目,需要使用环境变量或全局配置文件来设置这些配置项。
supabase-mcp-server Supabase MCP Server to enable Cursor & Windsurf to interact with Supabase directly 项目地址: https://gitcode.com/gh_mirrors/sup/supabase-mcp-server