如何通过 MCP 将你的 Supabase 数据库连接到 Cursor

Cursor + MCP + Supabase. 图片来自作者

在过去几周里,MCP(Model Context Protocol,模型上下文协议)在许多 AI 相关的在线社区和论坛里大火。开发者和技术人员都在热议这个东西,但说实话,包括我自己在内,很多人都对 MCP 究竟是什么、它能做什么以及为什么我们应该关心它感到困惑。

为了弄清楚这个问题,我花了一些时间研究,并整理了一个真实案例,来展示 MCP 在构建 AI 工具驱动的 Web 应用时到底有多大影响力。具体来说,我会演示 MCP 如何让你轻松地将 Supabase 数据库直接连接到 Cursor IDE。

设置完成后,Cursor 代理就能自动访问你的 Supabase 数据库。这意味着你每次与 AI 助手交互时,不需要手动提供数据库上下文。这对使用 Cursor 和 Supabase 构建全栈 Web 应用的开发者来说,简直是个巨大的优势。

在正式进入教程之前,先让我简单介绍一下 MCP 是什么。

什么是 MCP?

模型上下文协议(MCP)本质上是一种标准方式,允许 AI 代理安全地访问外部数据源或上下文,而不需要每次都编写复杂的自定义代码。可以把 MCP 想象成一个万能适配器:你只需要设置一次,它就能让 AI 驱动的工具连接到几乎任何外部数据库或资源。

如果你曾尝试让 LLM(大语言模型)在现实世界中发挥作用,你可能会很快遇到一个大问题:几乎所有有用的服务,比如 Slack、GitHub,甚至是本地文件系统,都有自己独特的 API。这意味着你需要编写大量的自定义代码,让 LLM 单独适配每个 API。想要添加一个新工具?又得写一堆额外的代码。这很快就会变成一场噩梦。

MCP 结构示意图\](Image from Matt Pocock) MCP 作为 LLM 和所有这些 API 之间的一个中间层。与其为每个工具单独编写自定义代码,MCP 允许你定义一组 LLM 可以调用的"工具"。 ![](https://p6-xtjj-sign.byteimg.com/tos-cn-i-73owjymdk6/46d8fc5e26be4d1d8ca1ad327d1f0a0a~tplv-73owjymdk6-jj-mark-v1:0:0:0:0:5o6Y6YeR5oqA5pyv56S-5Yy6IEAg5p6c5Ya75Lq65bel5pm66IO9:q75.awebp)[](https://link.juejin.cn?target= "") \[MCP 运行示意图\](Image from Matt Pocock) 你可以选择将 MCP 服务器远程托管,或者在本地运行。无论哪种方式,你的 LLM 只需要直接连接到 MCP 服务器,并调用它提供的工具即可。MCP 服务器会处理 API 调用,让交互变得无缝衔接。 现在,让我们从理论转向实践,尝试使用 MCP 将你的 Supabase 数据库连接到 Cursor。 **如何在 Cursor 添加 MCP 服务器** 1. 进入 Cursor 设置页面,在 MCP 选项卡下,点击"Add new MCP Server"(添加新 MCP 服务器)按钮。 ![](https://p6-xtjj-sign.byteimg.com/tos-cn-i-73owjymdk6/14aa844507584c10950dd566b06e8723~tplv-73owjymdk6-jj-mark-v1:0:0:0:0:5o6Y6YeR5oqA5pyv56S-5Yy6IEAg5p6c5Ya75Lq65bel5pm66IO9:q75.awebp)[](https://link.juejin.cn?target= "") \[Cursor MCP 服务器添加界面\](Screenshot of Cursor IDE using MCP. Image by author) 2. 给你的 MCP 服务器起个名字,比如"Supabase database",然后将类型(Type)设置为 command。 ![](https://p6-xtjj-sign.byteimg.com/tos-cn-i-73owjymdk6/4d1495ed626542dfb9994c5fff706f4c~tplv-73owjymdk6-jj-mark-v1:0:0:0:0:5o6Y6YeR5oqA5pyv56S-5Yy6IEAg5p6c5Ya75Lq65bel5pm66IO9:q75.awebp)[](https://link.juejin.cn?target= "") \[Cursor MCP 服务器命名\](Screenshot of Cursor IDE using MCP. Image by author) 3. 在"Command"栏粘贴以下 CLI 命令: npx -y @modelcontextprotocol/server-postgres 你可以在 Supabase 项目中获取 connection-string,方法是点击控制面板顶部的"Connect"按钮。 ![](https://p6-xtjj-sign.byteimg.com/tos-cn-i-73owjymdk6/99ecf7bf9f8a4553bedab9148a216236~tplv-73owjymdk6-jj-mark-v1:0:0:0:0:5o6Y6YeR5oqA5pyv56S-5Yy6IEAg5p6c5Ya75Lq65bel5pm66IO9:q75.awebp)[](https://link.juejin.cn?target= "") \[Supabase 项目设置\](Image of Supabase project settings. Image by author) 4. 在"Connection String"选项卡下,你会看到"Direct Connection URI"。复制它并粘贴到 MCP 命令的"Connection String"部分。 ![](https://p6-xtjj-sign.byteimg.com/tos-cn-i-73owjymdk6/e031383d0af84077979f0dd4312a21ec~tplv-73owjymdk6-jj-mark-v1:0:0:0:0:5o6Y6YeR5oqA5pyv56S-5Yy6IEAg5p6c5Ya75Lq65bel5pm66IO9:q75.awebp)[](https://link.juejin.cn?target= "") \[Supabase 连接 URI\](Screenshot of Supabase connection string. Image by author) 注意:URI 里有一个 YOUR-PASSWORD 部分,作为参数。你需要把它替换为你的实际数据库密码。你可以在 Project Settings \> Configuration \> Database \> Database password 里找到数据库密码。 5. 你的 MCP 服务器参数应该像这样: ![](https://p6-xtjj-sign.byteimg.com/tos-cn-i-73owjymdk6/e259a0ed5a7940f78084d9f23584674e~tplv-73owjymdk6-jj-mark-v1:0:0:0:0:5o6Y6YeR5oqA5pyv56S-5Yy6IEAg5p6c5Ya75Lq65bel5pm66IO9:q75.awebp)[](https://link.juejin.cn?target= "") \[Cursor MCP 服务器参数\](Screenshot of Cursor IDE using MCP. Image by author) 6. 确认无误后,点击"Add"按钮。你会在 MCP 服务器旁边看到一个状态指示器,一旦它变成绿色,就说明一切正常! ![](https://p6-xtjj-sign.byteimg.com/tos-cn-i-73owjymdk6/b642957c7d8d45819148d4084b838dc9~tplv-73owjymdk6-jj-mark-v1:0:0:0:0:5o6Y6YeR5oqA5pyv56S-5Yy6IEAg5p6c5Ya75Lq65bel5pm66IO9:q75.awebp)[](https://link.juejin.cn?target= "") \[Cursor MCP 服务器状态指示\](Screenshot of Cursor IDE using MCP. Image by author) **MCP 连接故障排除** 如果连接没有立即成功,可以检查以下常见问题: 1. MCP 服务器未激活? o 检查参数,确保连接字符串(connection string)里 没有 \<\> 标签,密码 也没有 \[\] 标签。 2. 还是不行? o 你可能需要手动创建一个 mcp.json 文件,放在本地系统 .cursor 文件夹下。 ![](https://p6-xtjj-sign.byteimg.com/tos-cn-i-73owjymdk6/70c4258289ce4e3da24b5b3ba8c4c3c7~tplv-73owjymdk6-jj-mark-v1:0:0:0:0:5o6Y6YeR5oqA5pyv56S-5Yy6IEAg5p6c5Ya75Lq65bel5pm66IO9:q75.awebp)[](https://link.juejin.cn?target= "") \[mcp.json 文件示例\](Image by author) mcp.json 文件的内容如下: { "mcpServers": { "supabase": { "command": "npx", "args": \["-y", "@modelcontextprotocol/server-postgres", ""

}

}

}

确保用正确的连接字符串替换 。完美!现在我们可以测试 MCP 服务器了。

测试 Supabase MCP 服务器

要验证我们的 Supabase MCP 服务器是否正常运行,打开一个新的 Chat Agent,并运行以下提示:

Prompt(提示):

tell me what tables have in my Supabase database

![Cursor MCP 查询数据库](Screenshot of Cursor IDE using MCP. Image by author)

如果 MCP 服务器正常工作,Cursor 的 AI 代理就会从 Supabase 数据库中提取并显示表的列表。是不是很酷?

为什么 MCP 很重要?

MCP 受到关注的原因是,它简化了数据库(比如 Supabase)和 AI 开发环境(比如 Cursor)之间的集成。如果没有 MCP,每次你和 AI 代理交互时,都必须手动输入数据库上下文。

最近,我开发了我的第一个 Web 应用 LogoToAnything,在这个过程中,我用 MCP 让 Supabase 数据库连接到了 Cursor IDE。相信我,这省去了很多时间、算力消耗(token)和不必要的麻烦。

有了 MCP,AI 助手始终可以访问数据库上下文,这意味着:

✅ 更快的响应速度

✅ 更轻松的调试体验

✅ 更快速的开发周期

这也是为什么开发者们如此兴奋 ------ MCP 让复杂的集成变得简单,让你可以专注于 构建,而不是 配置。

所以,赶快试试吧,享受更流畅、更智能的编码体验! 🚀

相关推荐
Cyltcc2 分钟前
如何安装和使用 Claude Code 教程 - Windows 用户篇
人工智能·claude·visual studio code
吹风看太阳34 分钟前
机器学习16-总体架构
人工智能·机器学习
moonsims1 小时前
全国产化行业自主无人机智能处理单元-AI飞控+通信一体化模块SkyCore-I
人工智能·无人机
MUTA️1 小时前
ELMo——Embeddings from Language Models原理速学
人工智能·语言模型·自然语言处理
海豚调度1 小时前
Linux 基金会报告解读:开源 AI 重塑经济格局,有人失业,有人涨薪!
大数据·人工智能·ai·开源
T__TIII2 小时前
Dify 插件非正式打包
人工智能
jerwey2 小时前
大语言模型(LLM)按架构分类
人工智能·语言模型·分类
令狐少侠20112 小时前
ai之RAG本地知识库--基于OCR和文本解析器的新一代RAG引擎:RAGFlow 认识和源码剖析
人工智能·ai
小叮当爱咖啡2 小时前
Seq2seq+Attention 机器翻译
人工智能·自然语言处理·机器翻译
shadowcz0072 小时前
奥特曼论人工智能、OpenAI与创业
人工智能·百度