DeepSeek 总结的pgEdge for Postgres 的 MCP 服务器

原文地址:https://www.pgedge.com/blog/pgedge-mcp-server-for-postgres-is-now-ga-here-s-why-that-matters

pgEdge for Postgres 的 MCP 服务器现已正式发布。以下是其重要意义

Antony Pegg | 2026年4月2日


如果你正在构建基于代理的人工智能应用,很可能已经遇到了那个瓶颈:你的大语言模型需要真正地与数据库进行交互。不仅仅是转储一个模式然后听天由命,而是要真正理解数据模型、编写合理的查询、为新的用户界面甚至整个应用程序生成代码,并且无需你在每一次交互中都手把手地指导。这正是 MCP 服务器应该解决的问题,当你还在笔记本电脑上进行原型设计时,大多数 MCP 服务器都能做得不错。

但在生产环境中,情况则完全不同。

pgEdge for Postgres 的 MCP 服务器现已正式发布,它也可以在 pgEdge Cloud内部作为托管服务使用。我们构建它,是因为"在演示中有效"和"在生产环境中运行,满足真正的安全、真正的可用性要求和真正的合规性约束"之间的差距比大多数人意识到的要大,而现有的 MCP 服务器未能弥合这一差距。


大多数 MCP 服务器存在的问题

通常的情况是这样的:你下载一个 MCP 服务器,将其连接到 Claude Code 或 Cursor,指向一个本地 Postgres 实例,一切运行良好。你的大语言模型能够内省模式、编写查询、生成应用程序代码和用户界面,甚至还能提出优化建议。你会感觉自己仿佛生活在未来。

然后,有人要求你将其连接到生产数据库。那个包含个人身份信息的数据库。那个出于合规性原因需要留在 eu-west-1 区域或本地的数据库。那个不能宕机,因为其他三个服务都依赖它的数据库。突然间,你面对的是一个不支持 TLS、没有真正的身份验证、无法强制执行只读访问,并且肯定不是为在气隙环境中运行而设计的工具。

因此,我们构建了一个能够弥合这一差距的服务器。pgEdge MCP 服务器可与任何运行 v14 或更新版本的标准 Postgres 数据库协同工作,并且它是从头开始设计的,专为那些"启动它看看会发生什么"不能被接受的部署策略的环境而打造。


pgEdge MCP Server v1.0 提供的内容

我们来谈谈具体包含的功能,因为功能列表比围绕它的营销语言更重要。

你首先会注意到的是模式内省 。服务器不仅仅是将表名列表交给大语言模型就完事了。它会提取主键、外键、索引、列类型、约束,甚至是分区表的层次结构。这意味着大语言模型可以真正理解你的数据模型是如何组合在一起的,而不是盲目地发出 SELECT * 查询并希望返回一些有用的信息。对于基于时间分区的数据库(其中可能有成百上千个子表挤满上下文窗口),它能识别出分区的父表并默认隐藏子表,保持模型工作环境的整洁。

安全 方面,这不是一个"我们稍后再添加身份验证"的情况。服务器支持 stdio、HTTP 以及带有 TLS 的 HTTPS,同时支持用户和令牌身份验证,并且支持热加载,这样你可以在不重启任何服务的情况下轮换凭证。只读模式默认强制执行,并且 1.0 版本进一步提供了针对绕过攻击的主动防御,会拒绝那些试图通过 PL/pgSQL DO 块或 set_config() 调用来操纵 transaction_read_only 设置的查询。最终效果是,你可以让大语言模型代理访问生产数据,而无需将整个系统的钥匙都交给它。

多数据库支持让你可以从同一台服务器连接到开发、预发布和生产环境,并在它们之间切换。这听起来很简单,但如果你知道大多数 MCP 设置需要为你接触的每个环境都进行单独的配置,就能体会到其价值了。


GA 版本的新增功能

pgEdge MCP Server v1.0 版本增加了一些直接来自测试期间开发者反馈的功能,其中一些从根本上改变了你使用该服务器的能力。

其中最大的可能是自定义工具。你现在可以通过用 SQL、Python、Perl 或 JavaScript 编写工具来扩展 MCP 服务器,在 YAML 文件中定义它们,并将其放入你的配置中。它们会与内置工具一起作为一流的 MCP 工具出现。这意味着,如果你的团队有定期运行的特定工作流程或分析任务,你可以将其打包成一个大语言模型可以直接调用的工具。对于那些希望将特定领域的数据库操作引入其 AI 工作流程的团队来说,这才是真正开始变得有趣的地方。

为了展示这在实践中的样子,我们附带了一个DBA 入门工具包 ,作为一个即插即用的 YAML 定义文件。它附带了三个预构建的工具:get_top_queries 用于分析最消耗资源的查询,analyze_db_health 用于运行一个七类别的健康检查,以及 recommend_indexes 用于提供两层的索引建议(可选 HypoPG 模拟)。可以把它看作是给你的大语言模型开箱即用地提供了一个坚实的 DBA 知识基础,这样它就能开始为性能优化工作提供帮助,而无需你从头开始教它一切。(请阅读博文《使用 pgEdge MCP Server 自定义工具复制 CrystalDBA》以了解更多信息)。

运维 方面,有几个值得关注的点。多主机连接支持 意味着服务器原生支持高可用和故障转移,通过 target_session_attrs 使用与 libpq 兼容的连接字符串,将读操作路由到备用节点,将写操作路由到主节点。当启用写访问时,写查询确认 会在服务器执行任何 DDL 或 DML 之前进行提示,并且服务器会设置 MCP 工具注解(destructiveHint, readOnlyHint),以便第三方客户端可以实现自己的确认流程。一键安装程序支持 Claude Code 和 Claude Desktop,可以自动化二进制文件下载、配置生成和客户端注册过程,这样你就不必为了入门而手动编辑 JSON 文件。

还有一系列你更多是感受到而非直接看到的变更。服务器现在使用制表符分隔值 而不是 JSON 作为查询结果,自动分页 ,并应用上下文窗口压缩,所有这些都显著减少了令牌的使用量。如果你运行的代理需要大量数据库调用,这将对你的 API 账单产生积极影响。


与你正在使用的工具协同工作

pgEdge MCP 服务器支持开发者如今真正在使用的工具:Claude Code、Claude Desktop、Cursor、Windsurf、VS Code Copilot。在模型方面,它与 Anthropic 和 OpenAI 的尖端模型,以及通过 Ollama、LM Studio 和其他任何支持 OpenAI API 的本地托管模型协同工作。生产级 CLI 客户端包含 Anthropic 的提示缓存功能,对于针对同一模式的重复交互,可将成本降低高达 90%。你不需要重新设计你的 AI 技术栈来使用它。


按你的方式部署

每个数据库产品都在谈论部署的灵活性,但以下是它的实际体现。如果你希望走完全托管 的路径,pgEdge Cloud 会在你的数据库集群旁部署 MCP 服务器,无需额外设置或维护。如果你想自己运行 ,GitHub Container Registry 上提供了 Docker 镜像,并且支持 Docker Compose 进行多实例部署,让你在自己的云环境中对配置和网络拥有完全控制权。如果你需要在本地部署,包括在完全不接触公共互联网的气隙环境中运行,该服务器可以编译成一个完全静态的二进制文件,无需依赖 C 编译器,因此在受限环境中不会遇到任何麻烦。

整个项目在 PostgreSQL 许可证下开源,并且订阅了 Enterprise Postgres 或 Distributed Postgres 的 pgEdge 客户无需额外付费即可获得支持。


开始使用

如果你想要托管路径,pgEdge Cloud 中的 MCP 服务器已准备就绪。启动一个数据库,启用 MCP 服务器,然后开始查询。

对于自托管部署,请查阅文档或立即下载。它与任何标准 Postgres v14+ 版本协同工作,因此你可以将其指向任何你已经运行的数据库。

如果你想在不进行任何设置的情况下就进行体验,GitHub Codespaces 演示提供了一个一键式的、基于浏览器的环境,其中已经加载了示例数据并准备就绪可供查询。

相关推荐
文静小土豆2 小时前
CPU 飙高 ≠ 服务器真的卡?
运维·服务器
gfdhy2 小时前
【Linux服务器】基础服务实战部署|Nginx+MySQL+PHP+WordPress,让服务器真正可用
linux·服务器·mysql·nginx·php·毕设
观测云2 小时前
观测云3月产品升级报告 | 网络设备自动发现、数据库深度分析上线,故障中心、仪表板、APM及管理能力等持续优化
网络·数据库·apm
xingyuzhisuan2 小时前
给4090服务器配电源:8卡并行需要多少瓦才稳定?
服务器·网络·云计算·gpu算力
志栋智能2 小时前
小而美的选择:低成本超自动化巡检工具
数据库·人工智能
荒川之神2 小时前
ORACLE逻辑备份
数据库·oracle
M158227690552 小时前
三格电子串口服务器:串口设备快速联网解决方案
运维·服务器
星辰_mya2 小时前
jvm之生老病死
jvm·数据库·面试·架构师
阿里小阿希2 小时前
ERP 资源大批量导入实践:PostgreSQL Staging 临时表 + 异步任务
数据库·postgresql