
最近,Apollo GraphQL 推出了其MCP服务器,使企业能够使用 GraphQL 安全高效地将 AI 代理与现有 API 集成。该平台通过减少开发开销、改善治理和加速 AI 功能交付,使团队能够扩大创新并更快地从 AI 投资中获得价值。
这一服务的核心是模型上下文协议(MCP)。它在大型语言模型(LLM)(如 ChatGPT 或 Claude)与企业系统之间建立了标准化接口。Apollo GraphQL MCP 服务器利用GraphQL创建了一个声明式的可扩展层,将 AI 代理与后端 API 连接起来,使它们能够执行数据查询、业务逻辑或协调多步操作等任务。Apollo GraphQL 首席技术官兼联合创始人Matt DeBergalis解释说:
API 是能力入口:向购物车添加商品、检查订单状态、安排预约、更新库存。当 AI 能够可靠地与这些系统交互时,我们就解锁了一种更强大的软件,使自然语言成为复杂业务操作的接口。通过提供 AI 语言理解和 API 基础设施之间的连接,MCP 使这一点成为可能。

Apollo GraphQL MCP 服务器协调 AI 模型对现有 API 的访问(图片来源)
对于协调复杂的、策略感知的多 API 工作流,GraphQL 是一个很好的抽象层候选者。它支持确定性执行、选择性数据检索和嵌入式策略执行——这些都是 AI 系统的核心要求,因为它们要与多个后端 API 交互并且必须提供一致且安全的结果。
GraphQL 与 MCP 的集成还有助于管理Token使用和响应准确性。通过使 LLM 只请求必要的字段,系统可以最小化开销并降低生成无关或误导性输出的风险——这对于性能和用户信任都至关重要。
GraphQL 的声明式特性和自文档化模式使 AI 代理能够有效地推理 API。LLM 可以探索模式元数据并动态生成查询,最小化手动配置工具的工作,支持更灵活的 AI 接口和适应性行为。
MCP 工具既可以是预定义的——使用静态 GraphQL 操作,也可以通过模式自省动态生成。静态工具提供可预测性;自省使 AI 能够进行开放式探索,包括渐进式模式学习和按需查询执行。
至关重要的是,团队可以通过Apollo连接器集成现有的 REST API,而无需重建或迁移服务。这意味着企业可以在尽可能降低干扰的情况下采用 AI 接口,使用 MCP 服务器在当前架构之上叠加智能。
作为一种协议,MCP 正在迅速成为 AI 开发者技术栈中的基础构建块。它标准化了语言模型访问外部工具和数据的方式,就像 HTTP 对 Web 所做的那样。随着其重要性的增长,HashiCorp、GitHub和Docker等主要参与者也开始推出他们的 MCP 兼容产品。这进一步表明,工具感知 AI 正成为常态,而不再是个例。
Apollo GraphQL 已经在GitHub上将 MCP Server 作为开源软件发布,遵循 Elastic License 2.0 协议。
针对此次发布,InfoQ 采访了 Apollo GraphQL 首席技术官兼联合创始人Matt DeBergalis。
InfoQ:您能否详细说明一下,在多团队或企业环境中提供 MCP 工具的治理模型?应该如何防止意外暴露或滥用敏感能力?
Matt DeBergalis:治理挑战是真实存在的——为了跟上 AI 的发展步伐,团队需要快速推出 MCP 工具,但他们也需要有这样的信心,就是这些工具不会暴露敏感数据或违反政策。我们的方法是用声明式方法实现 MCP 工具,将其作为编排层的一部分,用来抽象 API 和服务。当将 MCP 工具定义为 GraphQL 查询时,就声明了 AI 需要的数据,并让编排层处理如何获取它——包括跨多个系统的认证、筛选和策略执行的所有复杂细节。
这种声明式方法使治理变得可扩展。一个跨客户和发货系统的查询可以执行复杂的规则,如“仅向忠诚会员显示跟踪详情”。编排层提供确定性执行,因此,相同的工具其行为方式始终是不变的。团队获得了快速实验和快速交付的敏捷性,而且又不会牺牲未来。
InfoQ:在 AI-API 编排的早期采用者中,您看到了哪些特定的设计模式或架构反模式,是 GraphQL 和 MCP 正在帮助解决的?
DeBergalis:反模式是将 MCP 添加到每个 API 中,放弃了抽象层。这导致了一些挑战:非确定性执行、当 API 返回完整对象时 Token 使用效率低下、没有好的方法来执行跨系统策略,以及实现方式不健壮,编写起来很快,但随着 API、模型甚至 MCP 本身的演变,更新起来很困难。
解决方案是增加一个编排层,而 GraphQL 非常适合这个角色。它通过查询计划提供确定性执行,只返回所需的字段,以声明的方式强制执行策略,并允许快速迭代。GraphQL 和 MCP 是绝佳的组合——GraphQL 的声明式查询变成了 MCP 工具,为 AI 提供了一个清晰的接口,而编排层处理复杂性。这样,开放式标准 AI 技术栈就形成了。
InfoQ:Apollo MCP 服务器提供了哪些可观察性或调试工具,用于帮助开发人员追踪 AI 生成的查询和编排的 API 流?
DeBergalis:关键是查询计划——当 AI 调用 MCP 工具时,你可以看到准确的跨服务的确定性执行路径。声明性 GraphQL 查询显示了哪些 API 被调用,以什么顺序,以及带有什么样的参数。这不是一个黑盒子;这是一个你可以追踪、调试和优化的透明编排。
因为 GraphQL 是声明性的,所以你可以分析 AI 的行为模式,并根据实际使用情况改进你的 MCP 工具。对人类开发人员有效的可观察性同样适用于 AI 生成的查询。这种透明度是 AI 技术栈的基础——你需要信任并验证后台发生的事情。
InfoQ:在多域 MCP 部署中,AI 必须在由不同团队拥有的有界上下文中进行推理,你认为 Apollo Federation 扮演了什么角色?
DeBergalis:联合图成了 AI 的统一语义层。当团队拥有不同的领域——客户、库存、订单执行——联合图提供了一个一致的模型,AI 可以很方便地遍历。这就是 GraphQL 作为开放标准的力量:团队保持自主性,同时为共享语义理解做出贡献。
联合图的声明性质意味着 AI 能力可以快速进化而不中断。每个团队都可以更新他们的领域,AI 通过联合图自动获得新的能力。这种稳定性和敏捷性的结合是 AI 技术栈所需要的——开放标准让相互独立的团队能够快速前进,同时又在整体上保持一致。
声明:本文为 InfoQ 翻译,未经许可禁止转载。
评论