大家好,我是苍何。

这些天,我满脑子里都是 MCP,看了数十篇文章和论文,研究了各种案例后,我忍不住想给大家做下分享。

先说结论,通过 MCP,我让 Cursor 直接操作起了我本地的数据库。无论是数据查询,还是数据的增删改,他都无所不能。

大模型从此真正成了我私人的数据助手

Cursor+MCP实现用嘴操纵数据库,太丝滑了!_人工智能

说实话,像 DeepSeek 啊、豆包啊或者 claude 之类的大模型再牛逼,当你问他,我本地数据库里面有多少条数据,他就会显得有些爱莫能助。

因为他的训练集不可能会包含你的隐私数据。这也导致了大模型在个人或企业隐私数据的瓶颈。

以前,很多人直接搞个本地的大模型,然后将隐私数据投喂给大模型,来训练私有化大模型。

这是常见的做法,先不说私有化部署的成本,光是微调训练的过程就不是普通人能搞定的。

但现在有了 MCP,很多东西都可以重新再衡量了。

所以,MCP 究竟是啥?

Cursor+MCP实现用嘴操纵数据库,太丝滑了!_Cursor_02

MCP 是一种模型上下文协议,全称为 Model Context Protocol,它是由 Anthropic 公司建立并开源的。

简单来说,MCP 可以让大模型(比如 DeepSeek、豆包等)可以痛快的调用外部工具和资源(类似我们日常使用的 USB-C)。

正如 USB-C 简化了不同设备与计算机的连接方式,MCP 简化了 AI 模型与数据、工具和服务之间的交互方式。

MCP 被定位为 AI 智能体与外部工具、数据交互的开放标准协议,类似软件工程中的 HTTP,目标是成为 AI 生态的通用语言。

Cursor+MCP实现用嘴操纵数据库,太丝滑了!_数据库_03

MCP 让大模型不再局限于静态知识库,而是能像人类一样调用搜索引擎、访问本地文件、连接 API 服务,甚至操作第三方软件。

目前 MCP 支持 STDIO 模式(本地运行)和 SSE 模式(远程服务)2 种模式。使用方式也很简单,在 Cursor、Cherry Studio 等客户端中可以直接使用。

真的只需要复制黏贴就可完成配置,做到了丝滑接入。

先以 Cursor 为例吧,简单介绍下配置。

其他更多使用方式可在我的 AI 开源知识库中查看: AI 开源知识库

Cursor+MCP实现用嘴操纵数据库,太丝滑了!_MCP_04

Cursor 配置 MCP

这里以添加高德地图的 MCP Server 为例。首先进入 Cursor Settings:

Cursor+MCP实现用嘴操纵数据库,太丝滑了!_人工智能_05

添加高德地图的 MCP Server:

Cursor+MCP实现用嘴操纵数据库,太丝滑了!_Cursor_06

直接黏贴这段代码:

{
  "mcpServers": {
      "amap-maps": {
          "command": "npx",
          "args": [
              "-y",
              "@amap/amap-maps-mcp-server"
          ],
          "env": {
              "AMAP_MAPS_API_KEY": "这里填写你在高德申请的API key"
          }
      }
  }
}
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.

Cursor+MCP实现用嘴操纵数据库,太丝滑了!_数据库_07

这样在 Cursor Settings 中就可以看到灯绿了,如果灯是红的,可以点击右侧的 Enabled 或者刷新即可。

Cursor+MCP实现用嘴操纵数据库,太丝滑了!_Cursor_08

那如何使用呢?选择 Agent 模式,模型选择 claude-3.7-sonnet。

Cursor+MCP实现用嘴操纵数据库,太丝滑了!_数据库_09

现在,我就可以直接在 Cursor 中查询天气了。可以看到自动调用了 MCP。

Cursor+MCP实现用嘴操纵数据库,太丝滑了!_人工智能_10

还可以进行形成规划:

Cursor+MCP实现用嘴操纵数据库,太丝滑了!_MCP_11

当然高德的这个 MCP Server 还提供了一系列的工具,大胆点的朋友可以一个个试试😂

Cursor+MCP实现用嘴操纵数据库,太丝滑了!_MCP_12

数据库查询

聪明的你肯定会想,既然能直接通过高德的 MCP Server 访问高德服务,那是否有对应 MCP Server 可以访问本地自己数据库呢?

还真有,而且不止一个,实现原理也并不复杂,这里就以 Ian Borla 的 mcp-server-mysql 来进行配置。

在 Cursor 中直接操作本地或者远程数据库,只需要简单配置如下:

{
  "mcpServers": {
      "MySQL": {
        "disabled": false,
        "timeout": 60,
        "command": "npx",
        "args": [
          "mcprunner",
          "MYSQL_HOST=127.0.0.1",
          "MYSQL_PORT=3306",
          "MYSQL_USER=root",
          "MYSQL_PASS=123456",
          "MYSQL_DB=pmhub-project",
          "ALLOW_INSERT_OPERATION=true",
          "ALLOW_UPDATE_OPERATION=true",
          "ALLOW_DELETE_OPERATION=false",
          "--",
          "npx",
          "-y",
          "@benborla29/mcp-server-mysql"
        ]
    }
  }
}
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.

每个配置做下简单的解释:

Cursor+MCP实现用嘴操纵数据库,太丝滑了!_MCP_13

配置好后,就可以进行丝滑的「用嘴」操作数据库了。无需任何编程经验。

1、查询某一个表有多少条数据

Cursor+MCP实现用嘴操纵数据库,太丝滑了!_Cursor_14

噼里啪啦,自动调用 MCP 服务,查出数据,直接给到结果。

2、查询数据库中一共有多少张表?

帮我查下pmhub-project这个数据库中一共有几张表,分别是哪些表有哪些作用,用个表格帮我汇总下。
  • 1.

Cursor+MCP实现用嘴操纵数据库,太丝滑了!_Cursor_15

3、创建一个新表:

帮我创建一个学生表,要求有id、姓名、年龄、性别字段
  • 1.

MCP Server 权限问题,无法直接创建表,这里我已经提了 issue。

Cursor+MCP实现用嘴操纵数据库,太丝滑了!_人工智能_16

为了实验的顺利,这里我就先在 navicate 中创建学生表。然后进行接下来的操作。

4、添加一条记录

帮我在学生表中添加一条记录,张三,10岁,男。
  • 1.

Cursor+MCP实现用嘴操纵数据库,太丝滑了!_MCP_17

说是已经添加成功,去数据库看看吧:

诚不欺我:

Cursor+MCP实现用嘴操纵数据库,太丝滑了!_数据_18

5、修改一条记录

刚才这一条数据不对,张三今年16岁了,帮我改下。
  • 1.

Cursor+MCP实现用嘴操纵数据库,太丝滑了!_人工智能_19

数据不仅做了更新,还友好的将更新时间也顺带更新了。这可真是太方便了 ba。

6、多表联查

为了验证多表联查场景,我新建一个课程表,有关联字段学生表中的 id。

Cursor 直接生成的代码:

CREATE TABLE course (
    id VARCHAR(64) NOT NULL COMMENT '课程id',
    course_name VARCHAR(100) NOT NULL COMMENT '课程名称',
    duration INT NOT NULL COMMENT '课程时长(分钟)',
    student_id VARCHAR(64) NOT NULL COMMENT '学生id',
    created_time DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
    updated_time DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
    PRIMARY KEY (id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='课程表';
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.

先插入一条测试数据:

帮我往课程表里面插入一条数据,是张三选的化学课程,课程时长120分钟
  • 1.

一下子集插入成功了:

Cursor+MCP实现用嘴操纵数据库,太丝滑了!_人工智能_20

同样的方法插入 3 条数据,现在只需要用自然语言来进行多表联查。

帮我查一下张三一共修了多少课程,一共会耗时多长时间?
  • 1.

可以看到 Cursor 自动写好联查 SQL,并统计好结果直接给我了。

Cursor+MCP实现用嘴操纵数据库,太丝滑了!_人工智能

同样不再话下,在 Cursor 中操作数据库变得如此简单。

说实话,这还只是 MCP 案例中的冰山一角,目前已经有好几千的 MCP Server 已经被开发出来,而且很多还在路上。

Cursor+MCP实现用嘴操纵数据库,太丝滑了!_数据_22

速度之快,不少人已经玩疯了,大模型搭载 MCP,越来越多好玩的智能体也随之出现。

很多应用也支持接入 MCP,比如 GitHub、高德、百度地图、apifox 等等。

Cursor+MCP实现用嘴操纵数据库,太丝滑了!_数据库_23

大模型是工具,当工具本身能调用工具,事情就会变得越来越有意思了。

好啦,以上全文 6253 字,22 张图,如果这篇文章对你有用,可否点个关注,给我个三连击:点赞、转发