SQL查询服务

一个提供只读SQL访问PostgreSQL数据库的服务,包含元数据查询和自然语言转SQL功能,适用于LLMs安全查询数据。

  • by Rithyam
  • Java
  • 本地部署
  • 更新于
在 GitHub 查看 Rithyam/mcp-sql-explorer

使用说明

MCP SQL资源管理器--自述

一个支持MCP的小型项目,它公开了对PostgreSQL演示数据库和辅助端点的只读SQL访问,让LLM安全地查询您的数据。

回购包含:

  • spring/ --Spring Boot后端(Java)公开 /metadata/*, /query/run, /query/nl
  • db/init/* --Docker PostgreSQL使用的SQL模式+种子数据
  • mcp-wrapper/ --小型Node.js代理,公开清单并代理Spring调用(对LLM工具集成有用)

快速概览

  • 后端(Spring Boot)提供:

    • GET /metadata/tables --列表表+行数
    • GET /metadata/tables/{name} --列+样本行
    • POST /query/run --运行只读SQL(仅限SELECT;强制执行验证器)
    • POST /query/nl --返回系统提示+模式,以帮助LLM生成安全的SQL
  • 节点包装器(mcp-wrapper)服务:

    • GET /manifest --信息清单
    • GET /metadata/tables (代理)
    • GET /metadata/tables/{table} (代理)
    • POST /query/run (代理)
    • POST /query/nl (代理)

先决条件

  • Java 17+或Java 22(已安装JDK)
  • Maven(或使用 ./mvnw)
  • Docker&Docker编写
  • Node.js(v16+)+npm(或yarn)
  • curl 并且可选 jq 对于漂亮的JSON