mcpField
S
SQL MCP Server

SQL MCP Server

本地服务
github.com数据库01 周前更新

关于 SQL MCP Server

SQL MCP Server 是面向不可信 AI Agent 的受治理 SQL 访问网关,适用于将 Agent 接入 PostgreSQL、MySQL 或 OceanBase 的团队。它以受控实体和关系代数 IR 代替任意 SQL,并为可信操作者提供独立的可选 SQL 通道。

主要功能

  1. 01受控数据库工具
  2. 02支持 PostgreSQL、MySQL、OceanBase
  3. 03RBAC 与字段级访问控制
  4. 04行策略与数据遮蔽
  5. 05查询成本和结果限制
  6. 06审计与遥测钩子

适用场景

  1. 01为 Agent 提供受治理的数据库访问
  2. 02按租户和行限制访问
  3. 03限制高成本数据库查询
  4. 04审计数据库操作

MCP 相关

向 MCP 客户端提供受控数据库访问工具。受治理接口不接受任意 SQL;独立的 execute_sql 通道默认关闭,仅限获明确授权的用户。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"nethinwei-sql": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"DATABASE_DSN",
"ghcr.io/nethinwei/sql-mcp-server:0.1.21"
],
"env": {
"DATABASE_DSN": "<DATABASE_DSN>"
}
}
}
}
启动命令docker run -i --rm -e DATABASE_DSN ghcr.io/nethinwei/sql-mcp-server:0.1.21
需要配置的环境变量
DATABASE_DSN密钥Database DSN referenced by ${DATABASE_DSN} in config.yaml

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
ocighcr.io/nethinwei/sql-mcp-server:0.1.21

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

来自项目 README

SQL MCP Server

The governed SQL gateway for untrusted AI agents.

面向不可信 AI Agent 的受控 SQL 数据访问网关。通过显式 Entity、关系代数 IR 和 参数化 codegen 访问 PostgreSQL、MySQL 与 OceanBase,受治理面不接受任意 SQL,不提供 DDL。可信操作者另有独立的 SQL 逃生通道 execute_sql:默认关闭,只对被显式授予 sql:execute@<数据源> 的用户可见,走单独声明的连接,受硬上限与写入失败即拒绝的 审计约束(见安全模型)。

核心差异

  • 确定性执行:Agent 只能组合受控工具和白名单 IR;
  • 字段与行治理:RBAC、字段 ACL、row policy 和 mask 统一强制;
  • 成本可控:EXPLAIN 预筛、结果上限、超时和 session/tenant 预算;
  • 默认拒绝:安全能力无法证明时 fail closed;
  • 可审计:配置热重载、异步审计和 OpenTelemetry hook。

运行时安全行为以安全模型为准;Provider 验证边界与证据层级 以兼容矩阵为准;威胁、控制与剩余风险见 威胁模型。所有对外声明的证据汇总见 架构、安全边界与证据索引。不以本页摘要为准。

五分钟体验

只需 Docker 与 Docker Compose:

docker compose -f examples/quickstart/compose.yaml up -d --wait
curl -fsS http://127.0.0.1:8080/healthz

完整的 MCP Inspector 调用、tenant 隔离、mask 和拒绝场景见 五分钟快速体验。

安装与接入

源码构建要求 Go 1.26.10+ 和一个已验证数据库版本:

git clone https://github.com/nethinwei/sql-mcp-server.git
cd sql-mcp-server
make build

按角色阅读

首次体验与集成
部署与安全
开发与维护
版本与规划

许可

MIT

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。