跳转到主要内容
vsql_mcp 通过 Model Context Protocol 把数据库提供给 AI 智能体, 监听器位于服务器进程内部。智能体可以列出架构、描述表并运行只读查询。 在您开启之前,写入始终关闭,并且查询路径通过您指定的数据库账户运行, 因此智能体得到的正是您授予该账户的访问权限。
此扩展使用了四个预览能力,因此服务器必须以 --vsql_allow_preview_extensions=ON 启动。否则 INSTALL EXTENSION 会被拒绝。

安装

vsql_mcp 未随服务器捆绑,因此请先从存储库构建它,并把生成的 vsql_mcp.veb 复制到 veb_dir 系统变量所指定的目录中。然后安装它:
确认它已存在:
构建说明在存储库中。

新增内容

它添加了一个 SQL 函数 info(),用于报告监听器正在做什么。 其余全部是配置和 MCP 流量。
从 vsql_mcp.vsql_mcp_enabled 被设为 ON 的那一刻起,直到后台工作线程 下一次唤醒(每 25 毫秒一次),starting 都是 true。在这个窗口内的 调用也可能报告 "enabled":false,因为监听器尚未绑定。

示例

把监听器指向一个数据库并启动它:
然后智能体通过 MCP Streamable HTTP 连接到 http://127.0.0.1:3100。 存储库提供了每种智能体的客户端配置。
db_url 中的账户决定了智能体能做什么的上限,而每个数据库账户都能 用 SHOW VARIABLES 读到 db_url(包括密码),因此请只授予它所需的 最小权限,并在确有需要之前保持 allow_write 关闭。在端口可以从 localhost 之外访问之前,请先开启 require_auth 并设置 bearer 令牌; SHOW VARIABLES 同样会把该令牌显示给每个账户。
用 SET PERSIST 写入的设置在重启后仍然保留,但 UNINSTALL EXTENSION 会删除它。卸载并重新安装后,每个设置都会恢复默认值,重启也不会 恢复旧值。

另请参阅