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

张开发
2026/4/10 1:29:05 15 分钟阅读

分享文章

DeepSeek 总结的pgEdge for Postgres 的 MCP 服务器
原文地址https://www.pgedge.com/blog/pgedge-mcp-server-for-postgres-is-now-ga-here-s-why-that-matterspgEdge 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/pgSQLDO块或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 演示提供了一个一键式的、基于浏览器的环境其中已经加载了示例数据并准备就绪可供查询。

更多文章