Supabase MCP Server
通过模型上下文协议接口,可以查询 Supabase 数据库并生成 TypeScript 类型,支持模式选择、列过滤和分页等功能。
Tools
query_table
Query a specific table with schema selection and where clause support
generate_types
Generate TypeScript types for your Supabase database schema
README
Supabase MCP 服务器
一个用于与 Supabase 数据库交互的模型上下文协议 (MCP) 服务器。此服务器提供通过 MCP 接口查询表和生成 TypeScript 类型的工具。
功能
-
查询表: 在任何表上执行查询,支持:
- 模式选择
- 列过滤
- 带有多个运算符的 Where 子句
- 分页
- 错误处理
-
类型生成: 为您的数据库生成 TypeScript 类型:
- 支持任何模式(public、auth、api 等)
- 适用于本地和远程 Supabase 项目
- 直接输出到控制台
- 自动项目引用检测
前提条件
- Node.js (v16 或更高版本)
- 一个 Supabase 项目(本地或托管)
- Supabase CLI(用于类型生成)
安装
- 克隆存储库:
git clone https://github.com/yourusername/supabase-mcp-server.git
cd supabase-mcp-server
- 安装依赖项:
npm install
- 安装 Supabase CLI(类型生成需要):
# 使用 npm
npm install -g supabase
# 或者在 macOS 上使用 Homebrew
brew install supabase/tap/supabase
配置
-
获取您的 Supabase 凭据:
-
对于托管项目:
- 转到您的 Supabase 项目仪表板
- 导航到 Project Settings > API
- 复制 Project URL 和 service_role 密钥(不是 anon 密钥)
-
对于本地项目:
- 启动您的本地 Supabase 实例
- 使用本地 URL(通常是 http://localhost:54321)
- 使用您的本地 service_role 密钥
-
-
配置环境变量:
# 创建一个 .env 文件(此文件将被 git 忽略)
echo "SUPABASE_URL=your_project_url
SUPABASE_KEY=your_service_role_key" > .env
- 构建服务器:
npm run build
与 Claude Desktop 集成
-
打开 Claude Desktop 设置:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json
- Windows:
%APPDATA%\Claude\claude_desktop_config.json
- Linux:
~/.config/Claude/claude_desktop_config.json
- macOS:
-
添加服务器配置:
{
"mcpServers": {
"supabase": {
"command": "node",
"args": ["/absolute/path/to/supabase-mcp-server/build/index.js"],
"env": {
"SUPABASE_URL": "your_project_url",
"SUPABASE_KEY": "your_service_role_key"
}
}
}
}
与 VSCode 扩展集成
-
打开 VSCode 设置:
- macOS:
~/Library/Application Support/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json
- Windows:
%APPDATA%\Code\User\globalStorage/saoudrizwan.claude-dev\settings\cline_mcp_settings.json
- Linux:
~/.config/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json
- macOS:
-
添加服务器配置(与 Claude Desktop 格式相同)。
使用示例
查询表
// 使用模式选择和 where 子句查询
<use_mcp_tool>
<server_name>supabase</server_name>
<tool_name>query_table</tool_name>
<arguments>
{
"schema": "public",
"table": "users",
"select": "id,name,email",
"where": [
{
"column": "is_active",
"operator": "eq",
"value": true
}
]
}
</arguments>
</use_mcp_tool>
生成类型
// 为 public 模式生成类型
<use_mcp_tool>
<server_name>supabase</server_name>
<tool_name>generate_types</tool_name>
<arguments>
{
"schema": "public"
}
</arguments>
</use_mcp_tool>
可用工具
query_table
查询特定表,支持模式选择和 where 子句。
参数:
schema
(可选): 数据库模式(默认为 public)table
(必需): 要查询的表的名称select
(可选): 逗号分隔的列列表where
(可选): 条件数组,包含:column
: 列名operator
: 以下之一:eq, neq, gt, gte, lt, lte, like, ilike, isvalue
: 要比较的值
generate_types
为您的 Supabase 数据库模式生成 TypeScript 类型。
参数:
schema
(可选): 数据库模式(默认为 public)
故障排除
类型生成问题
- 确保已安装 Supabase CLI:
supabase --version
-
对于本地项目:
- 确保您的本地 Supabase 实例正在运行
- 验证您的 service_role 密钥是否正确
-
对于托管项目:
- 确认您的项目 ref 是否正确(从 URL 中提取)
- 验证您使用的是 service_role 密钥,而不是 anon 密钥
查询问题
- 检查您的模式和表名
- 验证 select 和 where 子句中的列名
- 确保您的 service_role 密钥具有必要的权限
贡献
- Fork 存储库
- 创建您的功能分支:
git checkout -b feature/my-feature
- 提交您的更改:
git commit -am 'Add my feature'
- 推送到分支:
git push origin feature/my-feature
- 提交 pull request
许可证
MIT 许可证 - 有关详细信息,请参阅 LICENSE 文件
推荐服务器
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
MCP Package Docs Server
促进大型语言模型高效访问和获取 Go、Python 和 NPM 包的结构化文档,通过多语言支持和性能优化来增强软件开发。
Claude Code MCP
一个实现了 Claude Code 作为模型上下文协议(Model Context Protocol, MCP)服务器的方案,它可以通过标准化的 MCP 接口来使用 Claude 的软件工程能力(代码生成、编辑、审查和文件操作)。
@kazuph/mcp-taskmanager
用于任务管理的模型上下文协议服务器。它允许 Claude Desktop(或任何 MCP 客户端)在基于队列的系统中管理和执行任务。

Supabase MCP Server
一个模型上下文协议(MCP)服务器,它提供对 Supabase 管理 API 的编程访问。该服务器允许 AI 模型和其他客户端通过标准化的接口来管理 Supabase 项目和组织。
mermaid-mcp-server
一个模型上下文协议 (MCP) 服务器,用于将 Mermaid 图表转换为 PNG 图像。
Jira-Context-MCP
MCP 服务器向 AI 编码助手(如 Cursor)提供 Jira 工单信息。
@kazuph/mcp-gmail-gas
用于 Gmail 集成的模型上下文协议 (Model Context Protocol, MCP) 服务器。它允许 Claude Desktop(或任何 MCP 客户端)通过 Google Apps Script 与您的 Gmail 帐户进行交互。
MCP DuckDB Knowledge Graph Memory Server
一个为 Claude 设计的记忆服务器,它使用 DuckDB 存储和检索知识图谱数据,从而增强了对话的性能和查询能力,并能持久保存用户信息。