ITPub博客

首页 > 数据库 > 国内数据库 > 瀚高技术全揭秘 | 瀚高数据库与MCP:适配AI数据库交互新范式

瀚高技术全揭秘 | 瀚高数据库与MCP:适配AI数据库交互新范式

原创 国内数据库 作者:Highgo 时间:2026-11-06 09:11:39 0 删除 编辑
随着数据库技术与AI应用的不断融合,我们对 AI 调用数据库接口的“统一性”和“智能化”提出了更高的要求。Model Context Protocol(MCP)协议的出现,让数据库交互像“聊天”一样变得简单高效。MCP 的官方实现原生支持与 PostgreSQL 的连接,而另一个开源实现 pg-mcp-server 不仅支持基本的只读 SQL 执行,还能够无缝集成 PostGIS 和 PGVector 扩展,使地理空间数据和向量数据的处理同样变得轻松高效。

在本文中,我们将以瀚高数据库和 pg-mcp-server 为例,从环境搭建、依赖配置,到实测 PostGIS 空间函数的流程,详细记录实践过程,并分享我的实际体验和思考,希望对同样关注AI和数据库的大家有所帮助。




什么是MCP(Model Context Protocol)

参考官方的定义,MCP 是一个开放协议,它规范了应用程序向 LLM 提供上下文的方式。MCP 就像 AI 应用程序的 USB-C 端口一样。 正如 USB-C 提供了一种标准化的方式将设备连接到各种外围设备和配件一样,MCP 也提供了一种标准化的方式将 AI 模型连接到不同的数据源和工具。


图片


·MCP 主机: 像 Claude Desktop、IDE 或 AI 工具这样的程序,需要通过 MCP 访问数据
·MCP 客户端: 与服务器保持 1:1 连接的协议客户端
·MCP 服务器: 轻量级程序,每个程序都通过标准化模型上下文协议公开特定功能
·本地数据源: MCP 服务器可以安全访问您计算机上的文件、数据库和服务
·远程服务: MCP 服务器可以通过互联网(例如通过 API)连接到的外部系统




PG-MCP-Server

开源项目PG-MCP-Server  是 PostgreSQL 数据库模型上下文协议 (MCP)的服务器实现。它为 AI 代理提供了全面的 API,使其能够通过 MCP 面向资源的架构发现、连接、查询和理解 PostgreSQL 数据库。相比于MCP官方的PostgreSQL实现,该项目提供了更完整的服务器实现,并提供了关于插件的YAML知识方便调用。




环境准备

·Python 3.13+
·瀚高数据库
docker仅对一般linux支持较好,选择手动安装
    # 克隆仓库git clone https://github.com/stuzero/pg-mcp-server.gitcd pg-mcp-server# 用uv安装依赖并创建虚拟环境 ( .venv )uv sync# 激活虚拟环境source .venv/bin/activate # On Windows: .venv\Scripts\activate# 运行mcp服务python -m server.app
    配置env,根据自己的数据库信息替换
      PG_MCP_URL=http://localhost:8000/sseDATABASE_URL=postgresql://user:password@hostname:port/databasename
      默认仅对Claude cli支持较好,但是启动的MCP Server支持通过其他MCP Client通用配置,此处通过字节的Trae编辑器配置
      1.选择智能体 > Builder with MCP,之后选择添加
      图片
      2.然后在市场选择手动配置
      图片

      3.之后在弹出的窗口中输入如下配置(npx需要安装npm)

        {  "mcpServers": {    "pg-mcp-server": {      "command": "npx",      "args": [        "mcp-remote",        "http://127.0.0.1:8000/sse"      ]    }  }}
        4.配置好后会显示如下,这里也是列出来了所有可以给AI用的“工具”。
        图片
        其实到这一步,就已经可以通过Trae的聊天窗口用配置好的MCP服务器和大模型交流了,不过为了能测试mcp和postGIS的交互能力,还是要额外配置好postGIS




        PostGIS数据准备

        安装GIS插件之后,初始化瀚高数据库使用md5,然后修改下列参数

        ——修改配置文件

          echo "listen_addresses='*'">> data/postgresql.auto.confecho "host all all 0/0 scram-sha-256" >> data/pg_hba.conf
          ——安装插件关闭安全参数
            psql -dhighgo -p5866 -Usysssoselect set_secure_param('hg_sepofpowers','off');

            ——重启数据库后,启用安装好的postgis插件

              CREATE EXTENSION postgis;
              之后导入自己的GIS数据并创建索引即可




              实践MCP调用

              1.输入下列提示词给Trae
                ### For AI AgentsExample prompt for use with agents:```Use the PostgreSQL MCP server to analyze the database. Available tools:- connect: Register a database connection string and get a connection ID- disconnect: Close a database connection- pg_query: Execute SQL queries using a connection ID- pg_explain: Get query execution plansYou can explore schema resources via:pgmcp://{conn_id}/schemaspgmcp://{conn_id}/schemas/{schema}/tablespgmcp://{conn_id}/schemas/{schema}/tables/{table}/columnsA comprehensive database description is available at this resource:pgmcp://{conn_id}/
                这是AI agent能用的mcp工具箱,参数在 .env 里,先连接数据库
                图片
                之后可以看到通过MCP中的connect已经准备好和数据库建立连接,并且执行的测试sql可以正常的返回响应。
                2.提示两个表是GIS数据后,通过MCP调用的大模型使用了ST_Intersects对GIS数据的相交情况和整个SQL性能进行了分析
                图片
                而在之后的分析中他也识别到了没用到table2的index,主动推荐创建index,不过此处其实是因为table2很小所以计划中没有调用,而数据库中是提前创建好index的,AI此时并不清楚。
                图片


                结语

                整体而言,MCP(Model Context Protocol)为数据库与 AI 之间的交互提供了一种比传统函数调用更为标准化和灵活的方式。MCP 的实现结合 Agent 的特性,可以相对标准的自动生成 SQL,并根据上下文智能选择是否执行和返回结果,显著提升了 AI 与数据库的协同效率。此外,借助 YAML 配置文件,开发者可以方便地扩展对 PostGIS 等数据库插件的支持。整体的可靠性有提升,不过现阶段还是建议在执行后对结果进行人工校验以确保准确性。
                目前MCP 的应用场景包括:在 IDE 中以对话形式连接和操作多个数据库、执行 SQL 查询、查看查询计划等。业界的一些 GUI 工具,如 QGIS,也开始支持 MCP 协议。展望未来,MCP 有望实现不同 MCP 服务器之间的协同工作,进一步推动智能化和互联化的 AI 应用生态系统的发展。
                [1]https://modelcontextprotocol.io/introduction  
                [2]https://github.com/stuzero/pg-mcp-server
                [3]https://github.com/jjsantos01/qgis_mcp
                [4]https://www.xugj520.cn/archives/postgresql-mcp-ai-database.html 


                来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/70051178/viewspace-3188019/ ,如需转载,请注明出处,否则将追究法律责任。

                请登录后发表评论 登录
                全部评论

                注册时间:2026-09-04

                • 博文量
                  15
                • 访问量
                  10031