所有文章

2026-09-13

· Dylan Yu
MCPAIClaudeCursordatabase

用 MCP 让 Claude 和 Cursor 管理你的数据库(本地)

Model Context Protocol 让 AI 助手直接跟你的数据库对话——但大多数 MCP 数据库服务器把你的数据发到云中继。这里讲怎么设本地 MCP 服务器,让 Claude、Cursor 和 Windsurf 查询管理你的数据库而数据不离开你机器。

Anthropic 的 Model Context Protocol 悄悄成了 AI 助手连接外部工具的标准方式。Cursor 支持。Claude Desktop 支持。Windsurf 支持。Codex 支持。如果你 2026 年用任何认真的 AI 编程助手,你不管知不知道都在用 MCP。

而你能用 MCP 做的最有用的事之一是把 AI 助手连到你数据库。你用纯中文问「给我看这周注册的所有用户」,AI 写查询、查询对你真实数据库跑、你在聊天里得到真实结果。不用复制粘贴 schema 定义。不用手动 SQL。不用切到单独数据库工具跑查询截图结果。

工作时真的很好。

但有个坑,是让安全意识的人关标签回去手动做的那种坑。大多数 MCP 数据库服务器——官方 Postgres MCP、社区 SQLite MCP、各种「连你数据库到 ChatGPT」服务——通过让 AI 客户端直接连你数据库工作。意味着你数据库凭证和查询结果流经 AI 提供商基建。对你用来原型的本地 SQLite 文件,那没问题。对有真实用户数据的生产 Postgres 数据库,对大多数团队是不可行的。

我一直在建 Basevolt,本地优先的桌面数据库应用,最近发的一个功能是内置 MCP 服务器。想法简单:你 AI 助手(Claude、Cursor、Windsurf)连到你机器上跑的 BaseVolt,BaseVolt 连你数据库。AI 从不见你数据库凭证。到你数据库的连接留在本地。唯一离开你机器的是 AI 回答你问题需要的查询结果——而且那也直接到 AI 提供商,不经某个中间云中继。

这篇是设那个的实用指南,加上深入看为什么本地方式重要以及跟替代比怎样。

MCP 数据库问题

让我具体说问题,因为「安全」太模糊没用。

当你在 Claude Desktop 或 Cursor 配 MCP 数据库服务器,你通常指向连接你数据库的服务器进程。官方 @modelcontextprotocol/server-postgres 例如,取 Postgres 连接字符串,把你数据库作为一组 MCP 工具暴露给 AI 客户端——跑查询、列表、描述 schema 等。

你问 Claude「给我看最后 10 个订单」时实际发生:

  1. Claude 决定用 SQL 字符串调用 query 工具。
  2. Claude Desktop 把那个工具调用发到你机器上跑的 MCP 服务器进程。
  3. MCP 服务器进程对你 Postgres 数据库跑查询。
  4. 结果回到 MCP 服务器。
  5. MCP 服务器把结果发回 Claude Desktop。
  6. Claude Desktop 把结果发给 Anthropic API 让 Claude 读并响应。

步骤 1-5 本地。步骤 6 不是。查询结果——你实际订单数据、客户名、金额、什么——作为对话上下文一部分发给 Anthropic 服务器。这是 Claude 能读并响应的方式。这是 MCP 工作方式的基础:AI 需要看到结果才能用它们。

那有问题吗?取决于。如果你查带假数据的本地开发数据库,没。如果你查带真实客户 PII 的生产数据库,是——你在发那个数据给第三方,可能违反你数据处理协议,可能违反 GDPR 或 HIPAA 或 SOC 2 承诺。

但查询结果到 AI 提供商甚至不是最坏部分。最坏是凭证。

用直接数据库 MCP 服务器,MCP 服务器进程需要你数据库凭证连接。那些凭证活在你 MCP 配置文件里——通常 claude_desktop_config.json.cursor/mcp.json。在你磁盘上,没问题。但 MCP 服务器进程本身是个长期运行的有到你数据库开放连接的东西。如果那进程被攻破,或如果 AI 客户端被骗跑恶意工具调用,你数据库暴露了。

然后还有云中继变体。有些 MCP 数据库服务根本不在本地跑。你给他们数据库凭证,他们从云基建连你数据库,AI 客户端通过网络跟他们云服务通信。现在你凭证和数据在别人服务器上,你信任他们处理两者。这不知怎的既更流行又更明显有问题。

核心问题:大多数 MCP 数据库设置要你信任太多方太多访问。AI 提供商看你数据。MCP 服务器进程有你凭证。云中继服务两者都有。对于本该让 AI 助手更有用的协议,数据库用例有信任问题。

MCP 实际是什么(快速入门)

继续前,给没深挖的人解释 MCP 是什么。如果你已知,跳过这节。

MCP——Model Context Protocol——是 AI 助手调用外部工具的协议。它基于 JSON-RPC,意味着是 AI 客户端(如 Claude Desktop)跟暴露有用功能的服务器进程通信的标准化方式。

架构直接:

  • AI 客户端(Claude Desktop、Cursor、Windsurf)是你聊天的东西。它跑在你机器上。
  • MCP 服务器是暴露 AI 能调用的「工具」和「资源」的独立进程。它也跑在你机器上,通常作为 AI 客户端 spawn 的本地进程。
  • 协议是他们用来相互通信的语言。AI 客户端发工具调用,MCP 服务器执行并返回结果。

当你跟 Claude 对话且 Claude 决定需要查你数据库,它调用 MCP 工具。AI 客户端把那个调用转发到 MCP 服务器。MCP 服务器干活返回结果。Claude 读结果继续对话。

要理解的关键:AI 客户端决定何时调用 MCP 工具。你不手动调用。你就正常说话,AI 搞清楚需要调用工具回答你问题。这是让 MCP 感觉神奇的——你说「给我看所有表」AI 就做,因为它知道有 list_tables 工具可用。

Claude Desktop 里最小 MCP 服务器配置长这样:

{
  "mcpServers": {
    "my-database": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-sqlite"],
      "env": {
        "DB_PATH": "/path/to/your/database.db"
      }
    }
  }
}

这告诉 Claude Desktop:「启动时,跑这个命令 spawn MCP 服务器进程。把它的工具作为 my-database 暴露给我。」你问 Claude 关于数据库的问题时,它能调用那服务器暴露的工具。

协议本身开放且文档好。Anthropic 发布了 spec,有 TypeScript 和 Python SDK。任何人能写 MCP 服务器。这是为什么已经有几百个——GitHub、Slack、文件系统、数据库、基本上任何你想让 AI 交互的东西。

问题不在协议。协议没问题。问题在数据库 MCP 服务器通常怎么部署,这是这篇文章其余关于的。

连接 AI 到你数据库的三种方式

人们用三种架构模式连 AI 助手到数据库。外面看相似——你问问题、得答案——但在数据去哪、谁能访问什么上差异显著。

选项 1:直接数据库 MCP 服务器

这是最常见方式。你本地跑 MCP 服务器进程直接连你数据库。官方 Postgres MCP 服务器这样工作。大多数社区 SQLite MCP 服务器也是。

流程:

你 → AI 客户端(Claude Desktop)→ MCP 服务器(本地进程)→ 你数据库

怎么工作:你用数据库连接字符串或文件路径配 MCP 服务器。服务器进程维护到你数据库的连接。AI 调用工具时,服务器跑查询返回结果。

优点:设置简单。一个进程、一个配置文件。对本地数据库工作好。官方服务器开源可审计。

缺点:你数据库凭证活在 MCP 服务器进程里。查询结果流回 AI 客户端再到 AI 提供商。如果你连生产数据库,你在信任 AI 提供商你数据。AI 和你数据库之间没有访问控制层——如果 AI 决定跑 DROP TABLE users,MCP 服务器乐意执行(虽然有些服务器有只读模式)。

什么时候用:本地开发数据库、带非敏感数据的 SQLite 文件、你不介意丢的一次性数据库。别用于生产。

选项 2:云中继 MCP

有些服务提供托管 MCP 服务器。你给他们数据库凭证,他们从云端连你数据库,你 AI 客户端通过网络跟他们服务通信。

流程:

你 → AI 客户端 → 云中继服务 → 你数据库

怎么工作:你创建账号、在 web dashboard 加数据库连接详情、他们给你 MCP 端点 URL 放客户端配置。AI 客户端发工具调用到他们云、他们云跑查询、结果同路径回来。

优点:没有要管理的本地进程。任何机器能用。中继服务能加功能如查询日志、限速、审计追踪。

缺点:你数据库凭证存在别人服务器上。查询结果经他们基建。你给信任链加了第三方。如果他们服务宕机,你从 AI 工具失去数据库访问。如果他们 breach,你凭证在影响范围里。

什么时候用:老实说,我难以推荐这个用于数据库。安全取舍难证明。也许用于只读分析数据库且数据已经公开ish,但即便那时,为什么要加中间人?

选项 3:通过桌面应用的本地 MCP 服务器(BaseVolt)

这是我围绕建 BaseVolt 的方式。不跑直接连你数据库的裸 MCP 服务器进程,你跑管理你数据库连接并暴露 MCP 服务器作为其功能之一的桌面应用。

流程:

你 → AI 客户端(Claude Desktop)→ BaseVolt(本地进程)→ 你数据库

怎么工作:BaseVolt 是连你数据库——SQLite 文件、Postgres、MySQLCloudflare D1——的桌面应用。它管理连接、处理凭证、提供浏览编辑数据 UI。它还在 localhost 跑 MCP 服务器。你 AI 客户端连那个 MCP 服务器。AI 调用工具时,BaseVolt 对你数据库执行返回结果。

优点:你数据库凭证留在 BaseVolt,不在配置文件或云服务器。到你数据库的连接本地。没云中继。你得到访问控制层——BaseVolt 能限制 MCP 服务器允许做什么(只读、特定表等)。加上你得到 MCP 集成旁边的完整数据库工作区 UI。

缺点:你需要装并跑桌面应用。是你机器上又一样东西。(虽然如果你已用数据库工具,它不是额外东西——是替代。)

什么时候用:当你用你在乎的数据库——生产数据、客户数据、任何你不想凭证和查询结果流经随机基建的。老实说,应该是大多数时候。

设置 BaseVolt 的 MCP 服务器(一步步)

来实际的。这是在 BaseVolt 里设本地 MCP 服务器并连到 Claude Desktop、Cursor 和 Windsurf 的方式。

第 1 步:装 BaseVolt 并连你数据库

basevolt.app 下载 BaseVolt。macOS 和 Windows 有。像任何桌面应用一样装。

首次打开 BaseVolt,它要你加数据源。你有选项:

  • SQLite:指向机器上 .db.sqlite 文件。BaseVolt 直接读。
  • PostgreSQL:输入 host、port、数据库名、用户名、密码。BaseVolt 通过标准 Postgres 线协议连。
  • MySQL:同样——host、port、凭证。
  • Cloudflare D1:用你 Cloudflare 账号认证选 D1 数据库。BaseVolt 跟 D1 REST API 通信。

这个走查假设你连本地 Postgres 数据库。输入连接详情、点连接、BaseVolt 加载你 schema。你应该在侧边栏看到表、列和关系。

免费版最多连 2 个数据源,够试。Pro $99/年如果需要更多。

第 2 步:在 BaseVolt 设置里启用 MCP 服务器

打开 BaseVolt 设置(左下角齿轮图标,或 macOS Cmd+, / Windows Ctrl+,)。导航到 MCP 部分。

你看到开关:「Enable MCP Server」。打开。

BaseVolt 在 localhost 启动 MCP 服务器。默认它选可用端口给你 URL——类似 http://localhost:3107/mcp。记下这个 URL;下一步需要。

这里几个选项值得提:

  • 只读模式:启用时,MCP 服务器能跑 SELECT 查询和描述 schema,但不能建表、改列或写数据。适合生产数据库你想要 AI 分析但不修改。
  • 允许的数据源:如果你连了多个数据库,你能选哪些通过 MCP 暴露。如果你有生产数据库和草稿数据库且只想要 AI 碰草稿的有用。
  • 端口:你能固定端口如果要稳定配置,或让 BaseVolt 自动选。

MCP 服务器跑起来后,你在 BaseVolt 看到状态指示器显示它活跃监听。

第 3 步:配置你 AI 客户端

现在你需要告诉 AI 客户端去哪找 MCP 服务器。配置每个工具略不同,但想法一样:指向 BaseVolt 给你的 localhost URL。

Claude Desktop

Claude Desktop 用叫 claude_desktop_config.json 的配置文件。位置取决于 OS:

  • macOS~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows%APPDATA%\Claude\claude_desktop_config.json

打开(不存在就创建)并加 BaseVolt 条目到 mcpServers 对象:

{
  "mcpServers": {
    "basevolt": {
      "type": "url",
      "url": "http://localhost:3107/mcp"
    }
  }
}

type: "url" 告诉 Claude Desktop 通过 HTTP 连运行中的 MCP 服务器,而不是 spawn 新进程。这对 BaseVolt 是对的选择因为 BaseVolt 管理自己服务器进程。

如果你在不支持 url 类型的旧 Claude Desktop,你能用基于命令的配置代替:

{
  "mcpServers": {
    "basevolt": {
      "command": "npx",
      "args": ["-y", "mcp-remote", "http://localhost:3107/mcp"]
    }
  }
}

这用 mcp-remote 作为 HTTP 端点和 Claude Desktop 基于 stdio 传输之间的桥。任一都行。

保存文件重启 Claude Desktop。启动时,它应连 BaseVolt MCP 服务器。你能通过新对话里看可用工具验证——你应该看到 BaseVolt 数据库工具列出。

Cursor

Cursor 用项目根的 .cursor/mcp.json 文件(或 ~/.cursor/mcp.json 全局配置)。格式类似:

{
  "mcpServers": {
    "basevolt": {
      "url": "http://localhost:3107/mcp"
    }
  }
}

Cursor 的 MCP 支持过去一年变稳健。url 字段告诉它连远程(这里本地)MCP 服务器。保存文件,Cursor 下次重载时拾取——你可能需要重载窗口或重启 Cursor。

你能在 Cursor 设置 MCP 部分验证连接。你应该看到 basevolt 带绿色状态指示器和它暴露的工具列出。

如果你想 MCP 服务器范围到特定项目(只在那个项目工作时连),把 .cursor/mcp.json 放项目根。如果想要到处可用,用全局配置。

Windsurf

Windsurf(原 Codeium 编辑器)用 ~/.codeium/windsurf/mcp_config.json 配置文件。结构镜像 Claude Desktop:

{
  "mcpServers": {
    "basevolt": {
      "serverUrl": "http://localhost:3107/mcp"
    }
  }
}

注意 Windsurf 里字段名是 serverUrl 不是 url——这坑过我。保存文件重启 Windsurf。你应该看到 BaseVolt MCP 服务器出现在 Windsurf MCP 设置面板带工具列出。

三个客户端一点值得注意:这些例子里端口号(3107)只是例子。用 BaseVolt 在 MCP 设置里给你看的实际端口。如果你让 BaseVolt 自动选端口,重启间可能变——所以要么在 BaseVolt 设置里固定端口,要么变时更新客户端配置。

第 4 步:开始问问题

一旦一切连好,在 AI 客户端开新对话就开始跟它聊你数据库。AI 会自动发现 BaseVolt 暴露的 MCP 工具并在相关时调用。

一些可以试的:

「给我看数据库里所有表。」

AI 调用 list_tables 工具,BaseVolt 返回表名,AI 列出。简单,但如果你用不是你设计的数据库立刻有用。

「users 表的 schema 是什么?」

AI 用 users 调用 describe_table,得到列名、类型、约束,向你解释。不用再 PRAGMA table_info(users) 眯眼看输出。

「给我看这周注册的所有用户。」

AI 搞清楚对的 SQL——类似 SELECT * FROM users WHERE created_at >= date('now', '-7 days')——调用 query 工具,BaseVolt 跑,AI 呈现结果。如果你 users 表有不同日期列名,AI 会从它已探索的 schema 知道。

「在 orders 表上建按 status 分组的 kanban 视图。」

这里变有趣。BaseVolt 的 MCP 服务器不只暴露原始 SQL——它暴露创建视图、配置 dashboard、管理工作区的更高层操作。AI 用表名、视图类型、分组配置调用 create_view 工具。BaseVolt 在 UI 创建视图,你能立刻在应用看到。

「给 users 表加个叫 last_login_at 的列。」

AI 写 ALTER TABLE 语句调用 execute 工具。BaseVolt 跑。你 schema 更新了。如果你启用只读模式,这会被阻止——这是重点。

「在 orders 表生成 50 行示例数据用于测试。」

AI 能基于你 schema 生成真实示例数据——随机名、范围内日期、现有枚举值的状态。原型时表空有用。

关键是你不用想工具。你就说话。AI 处理从「给我看这周注册的用户」到「用这个 SQL 字符串调用 query 工具」的翻译。这是 MCP 的全部意义——它把工具调用抽象在自然语言后面。

你用 AI + 数据库实际能做什么

让我更具体说能力,因为「用 AI 查你数据库」低估了。这是你通过 MCP 集成真正能完成的。

用纯中文查数据

这是明显的。你用中文问,AI 翻译成 SQL,BaseVolt 执行 SQL,你得答案。AI 访问你完整 schema,所以它知道你表名、列名、关系、类型。它写正确 SQL 因为它能看你数据结构。

我实践中用过的例子:

  • 「上个月下了多少订单,按状态分?」
  • 「给我看按总订单值前 10 客户。」
  • 「哪些用户订阅未来 30 天到期?」
  • 「通过推荐 vs 自然注册的用户的平均订单价值是多少?」

AI 处理 join、聚合、日期数学、筛选。对复杂查询,它常在跑前给你看要跑的 SQL,这是好的 sanity 检查。

创建和修改表

AI 能写并执行 DDL——CREATE TABLEALTER TABLECREATE INDEX。如果你说「我需要个表跟踪 feature flags」,AI 设计合理 schema 并创建:

CREATE TABLE feature_flags (
  id INTEGER PRIMARY KEY AUTOINCREMENT,
  name TEXT NOT NULL UNIQUE,
  enabled BOOLEAN NOT NULL DEFAULT 0,
  description TEXT,
  created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
  updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP
);

它选合理类型、加约束、包含时间戳因为那是好实践。你能对话细化:「加个列表示应得到 flag 的用户百分比」它改表。

这是本地执行重要的地方。AI 写 SQL,但 BaseVolt 本地对你数据库执行。SQL 本身到 AI 提供商(作为工具调用一部分),但你数据库凭证不。执行在你机器上,不在某云沙箱。

配置视图

BaseVolt 支持你表上多种视图类型:grid(默认表视图)、kanban(按状态字段分组)、gallery(卡片式,适合带图片记录)、calendar。通过 MCP 集成,AI 能创建配置这些视图。

你可以说:

  • 「在 tickets 表上建按 priority 分组的 kanban 视图。」
  • 「做个 products 的 gallery 视图显示名、价格、图片。」
  • 「在 events 上用 start_date 字段设日历视图。」

AI 用对的参数调用 BaseVolt 视图创建工具。视图立刻出现在 BaseVolt UI。然后你能细化:「加筛选只显示 open tickets」或「按 status 而不是 priority 分组 kanban」。

这对需要用数据库但不想学数据库工具 UI 的非开发者真正有用。他们就描述想看到什么 AI 配置。

建 Dashboard

BaseVolt 有 dashboard 功能你能把图表、指标、表合成单一视图。AI 能从零建这些。

「建个 dashboard 带本月总注册、MRR、和过去 30 天注册折线图。」

AI 会:

  1. 查你数据库相关数据。
  2. 创建 dashboard 组件——总注册指标组件、MRR 指标组件、注册趋势折线图。
  3. 在 dashboard 上排列。

你在 BaseVolt 得到工作 dashboard 不用手动配任何东西。再次,你能细化:「让图表显示过去 90 天」或「加按注册来源细分」。

不记表名探索 Schema

如果你用不是你设计的数据库——继承的代码库、客户项目、你修改的开源应用——schema 探索无价。不用在 psql 跑 \dt 滚表名,你就问:

  • 「这个数据库里有什么表?」
  • 「orders 表怎么跟 customers 表关联?」
  • 「有没有存用户偏好的表?」
  • 「哪些表有到 users 表的外键?」

AI 通过 MCP 工具探索 schema 并用纯中文向你解释。像有个已熟悉你 schema 的数据库专家坐旁边。

生成示例数据

原型时,你常需要示例数据。AI 能生成:

「插入 20 个假用户带真实名、邮箱、和过去一个月随机注册日期。」

AI 写带生成数据的 INSERT 语句通过 BaseVolt 执行。它尊重你 schema——正确类型、有效外键、枚举列合理值。这每次我开始新原型大概省 15 分钟。

为什么本地在这重要

我想花一分钟在这因为这是我把 MCP 服务器建进 BaseVolt 而不是只发独立 MCP 数据库服务器的全部原因。

我前面描述的三种方式——直接 MCP、云中继、通过桌面应用本地——都让你做同样的事。AI 能查你数据、建表、配视图。用户体验几乎相同。区别完全在你数据和凭证活哪。

用直接数据库 MCP 服务器,你数据库凭证在配置文件和 MCP 服务器进程。查询结果从 MCP 服务器流到 AI 客户端再到 AI 提供商。凭证暴露有限(本地进程、本地配置文件),但数据暴露跟任何云 AI 交互一样。

用云中继,你凭证在中继服务服务器上。你数据经他们基建。你给链加了第三方。从信任角度这是最差选项。

用 BaseVolt 本地 MCP 服务器,你数据库凭证活在 BaseVolt——加密、由应用管理、从不暴露给 AI 客户端或 AI 提供商。到你数据库的连接由 BaseVolt 本地维护。AI 客户端通过 localhost 跟 BaseVolt MCP 服务器通信。唯一到 AI 提供商的是工具调用结果——AI 回答你问题需要的查询结果。

最后部分不可避免。如果你要 AI 告诉你「你这周有 47 个注册用户」,AI 需要看说 47 的查询结果。那个结果里的数据到 AI 提供商。当前 AI 架构无法绕过——模型需要上下文来推理。

但事情是:你控制 AI 看什么数据。你能用只读模式。你能只暴露特定表。你能用排除敏感列的筛选查询。本地 MCP 服务器给你直接数据库连接不给的控制层。

而凭证从不离开你机器。这是大的。你 Postgres 密码、你 MySQL 连接字符串、你 Cloudflare API token——它们留在 BaseVolt。AI 客户端从不见。AI 提供商从不见。没云中继见。

对于有安全要求的团队——SOC 2、HIPAA、GDPR、关于第三方数据访问的内部政策——这是「我们能用这个」和「我们不能用这个」的区别。本地方式不消除所有风险(AI 仍看查询结果),但它消除凭证暴露风险,那是让你被 breach 的那个。

对比表

三种方式并排对比:

直接 DB MCP云中继 MCPBaseVolt 本地 MCP
设置编辑配置文件、装服务器包创建账号、在 web dashboard 加凭证、得端点 URL装桌面应用、连数据库、开 MCP 开关
数据流AI 客户端 → 本地进程 → 你 DBAI 客户端 → 云服务 → 你 DBAI 客户端 → BaseVolt(本地)→ 你 DB
凭证暴露本地配置文件 + 本地进程云服务服务器仅 BaseVolt 应用(本地、加密)
离线工作是(对本地 DB)是(对本地 DB)
支持视图/dashboard 创建否(仅原始 SQL)取决于服务是(kanban、gallery、dashboard、日历)
支持的 AI 助手任何 MCP 兼容客户端任何 MCP 兼容客户端任何 MCP 兼容客户端
访问控制层有限(有些服务器有只读模式)取决于服务是(只读模式、按数据源控制、表级限制)
成本免费(开源)通常订阅免费版(2 源),Pro $99/年

表格清楚:如果你只需对本地 SQLite 文件跑查询且不在乎安全,直接 MCP 方式行。如果你需要带凭证保护和访问控制的生产数据库访问,本地桌面应用方式是唯一合理的。

安全考量

写这篇不澄清安全取舍是不负责任的,即使本地方式。这是你该想的。

AI 仍看你查询结果。 这是用任何 AI 助手跟你数据的基本取舍。当你问「给我看所有用户」AI 调用查询工具,结果集——实际用户数据——作为对话一部分回到 AI 提供商。AI 需要这个数据回答你问题。没办法让 AI 推理你数据而 AI 不看你数据。

这意味着:别让 AI 查你不想发给 AI 提供商的列的数据。如果你 users 表有 password_hash 列,别 SELECT *。如果担心用只读模式并限制暴露表。或就对你问什么深思熟虑。

别用写访问连生产数据库除非你信任设置。 AI 能执行 DDL 和 DML。如果你给它生产数据库写访问,它能删表、改数据、删记录。大多数时候 AI 做你要求的不多。但 AI 模型能犯错,prompt injection 是真实攻击向量——如果 AI 读你数据里嵌入的恶意 prompt,它可能执行非预期查询。

对生产数据库,用只读模式。BaseVolt 的 MCP 服务器支持这个——它限制暴露工具到查询和 schema 检查,无写。这是任何你丢不起的东西的安全默认。

BaseVolt 的 MCP 服务器只在 localhost 跑。 它绑 127.0.0.1 不是 0.0.0.0。意味着不能从你网络其他机器访问,只能从你自己机器上进程。如果你在共享机器或公司网络,这重要。没别人能连你 MCP 服务器。

你能限制 MCP 服务器能做什么。 除了只读模式,BaseVolt 让你选哪些数据源通过 MCP 暴露。如果你连了生产数据库和开发数据库,你能只暴露开发数据库给 AI。生产数据库在 BaseVolt UI 仍可访问但通过 MCP 不可达。

你凭证由 BaseVolt 本地存储。 它们静态加密。从不传给 AI 客户端或 AI 提供商。从不发给 BaseVolt 服务器(BaseVolt 没有处理你数据库连接的服务器——它是桌面应用,一切本地)。如果你卸载 BaseVolt,凭证移除。

审计 AI 在做什么。 BaseVolt 记 MCP 工具调用,所以你能看 AI 跑了什么查询。如果什么看起来错——非预期 DROP TABLE、查敏感列的查询——你能抓到。这是直接 MCP 服务器常不提供的,对安心有价值。

安全总结:本地方式比替代显著更好,但不是魔法。你仍在发查询结果给 AI 提供商。你仍给 AI 系统执行 SQL 的能力。对你连什么数据库、给什么访问级别、让 AI 做什么深思熟虑。

总结

MCP 是真正有用的协议。问 AI 助手关于你数据库的问题并得真实答案——不用复制粘贴 schema 定义或手动跑查询——改变你跟数据工作的方式。它是那种感觉像新奇直到你用一周然后无法想象回去的功能。

但大多数人设 MCP 数据库连接的方式有真实问题:你凭证和数据流经你不控制的基建。对本地开发,可接受。对任何重要的,不是。

本地 MCP 服务器方式——AI 客户端到 BaseVolt 到你数据库,全在你机器上——给你 AI 辅助数据库工作的便利而无凭证暴露。你得到查询、schema 探索、视图创建、dashboard 构建。你不得安全头痛。

如果你已用 Claude Desktop 或 Cursor 或 Windsurf 且你用数据库,这值得设。大概五分钟,一旦跑起来,你会不断用。

basevolt.app 试试 — 不用注册,不用信用卡。免费版包含 2 个数据源,够连你主数据库和草稿数据库。装它、连数据库、启用 MCP 服务器、指向你 AI 客户端、开始问问题。

如果你遇到问题或对设置有疑问,demo 站不装任何东西展示完整工作流。

...在 X 上找我。

BasevoltBasevolt

试试 Basevolt —— 免费的本地优先数据库管理面板,支持 PostgreSQL、MySQL、SQLite 和 Cloudflare D1。

免费下载 Basevolt