如何通过MCP服务对接PostgreSQL进行问数操作?

摘要:一、实操环境 1、1Panel:Linux服务器运维管理面板 2、MaxKB:强大易用的企业AI助手 3、MCP网站:https:mcp.so 二、操作说明 2.1、步骤一:1Panel 2.0 安装部署 本次采用的是 1Panel
一、实操环境 1、1Panel:Linux服务器运维管理面板 2、MaxKB:强大易用的企业AI助手 3、MCP网站:https://mcp.so/ 二、操作说明 2.1、步骤一:1Panel 2.0 安装部署 本次采用的是 1Panel v2.0 最新版本进行安装部署,选择已有 Linux 服务器,通过命令行安装: INSTALL_MODE=beta bash -c "$(curl -sSL https://resource.fit2cloud.com/1panel/package/v2/quick_start.sh)" 其中安装过程中如果存在问题参见https://1panel.cn/docs/installation/online_installation/ 中的注意事项即可,其中需要特别强调的是: 1、确保服务器的操作系统与脚本匹配; 2、如果首次安装失败课完成 docker 环境安装; 3、安装完成后确认端口如果是腾讯云或者阿里云服务器确保端口开放。 2.2、步骤二:MaxKB 安装部署 此次不做赘述,参见官网相关文档即可:https://maxkb.cn/docs/installation/online_installtion/。 2.3、步骤三:通过 mcp.so 网站获取PostgreSQL的配置文件 mcp.so 访问地址:https://mcp.so/servers?category=databases 点击进入 context 页签获取配置信息: { "mcpServers": { "postgres": { "command": "npx", "args": [ "-y", "@modelcontextprotocol/server-postgres", "postgresql://localhost/mydb" ] } } } 2.4、步骤四:通过 1Panel 创建 MCP 服务 如下图所示登录 1Panel 后,进入 MCP 管理,点击创建 MCP Server,同时点击导入MCP Server 配置,将第四步在 mcp.so 中拷贝的信息黏贴确认即可。 确认后启动命令会自动生成,同时将生成的内容补充数据库的用户、密码以及数据库等信息,如下所示: npx -y @modelcontextprotocol/server-postgres postgresql://<用户>:<密码>@<ip>/<数据库名> 启动命令设置完成后参见如下图设置其他相关信息点击确认即可: 点击确认后同样的需要确认发布的外部链接地址可用,如果是腾讯云或者其他公有云服务器,切记安全组保证端口开通。发布完成后1Panel的状态如下所示: 最终确认 MCP 服务访问如下图则表示服务发布成功: 2.5、步骤五:通过 MaxKB 对接 MCP 服务 如下图创建工作流,通过添加【MCP服务】组件对接基于 1Panel 发布的 MCP 服务。 其中重点确认MCP调用的节点配置信息 { "postgres": { "url": "http://IP:端口/postgres", "transport":"sse" } } 三、效果演示 如下图所示最终问数效果。 查看下整个工作流的执行详情,如图所示,通过AI生成SQL语句,通过MCP调用数据库,查询到结果以后由AI整理反馈给最终用户。