人工智能 频道

如何构建企业级MCP注册表:AI代理时代的集成中枢

  MCP注册表正迅速成为AI代理的“新集成目录”。要让它真正服务于企业,你需要语义发现、强健的治理,以及开发者友好的控制平面。

  就像SaaS鼎盛时期的集成目录一样,模型上下文协议(MCP)服务器如今正成为连接AI代理与企业系统的核心纽带。

  在这个新范式下,开发者不再手动编写API调用代码,用户也不再需要点击“一键集成”并在图形界面中输入凭据。取而代之的是,AI代理系统会主动查找可用的MCP服务器,并自主调用MCP工具。为了引导这一过程,MCP注册表应运而生——它既是对可用MCP服务器的目录化整理,也是指导AI代理工作流的关键方式。

  “MCP注册表正日益成为代理系统的集成目录。”开放数据交付平台Incorta的首席机器学习工程师Ebrahim Alareqi表示,“它们为开发人员和平台团队提供了一个集中清单,用于组织可用的工具、代理及其功能。”

  MCP注册表缩短了集成时间,成为AI代理的发现入口。但无论你是直接使用现成的MCP注册表,还是自建一套,都面临着技术上的严峻挑战:如何实现工具发现的语义化?如何为安全自主使用加上护栏?

  “一个好的MCP注册表绝不仅仅是工具目录。”云计算咨询公司Asperitas Consulting的代理AI支持负责人Derek Ashmore指出,“它应该是你控制平面的一部分。”在他看来,MCP注册表需要具备:强健的身份与发现机制、带策略感知的元数据、全生命周期控制、安全护栏,以及支撑可观测性的数据。

  下面,我们将深入探讨一个坚实、功能完备的MCP注册表应该长什么样,剖析其核心特征与要求,审视面向企业的新兴实施建议,并明确何时该选择私有注册表而非公共注册表。

  什么是MCP注册表?

  MCP注册表是MCP服务器的“单一事实来源”。它是一个经过批准、符合合规要求的MCP服务器及MCP工具的目录,组织内部可以将其暴露给AI代理。通过将AI代理指向MCP注册表端点,企业能够为AI工作流提供对工程、业务和SaaS系统经授权的读写访问——这些系统已经过批准并配置为企业级使用。

  目前,市场上已出现多种MCP注册表:从开放目录到精心维护的注册表,再到更面向企业的实现。最典型的例子是官方MCP注册表——一个开源的MCP服务器目录,提供用于搜索和发现的实时REST API。它遵循MCP注册表规范,该规范定义了构建可互操作MCP注册表的标准化方法。

  其他公共资源更像是静态列表,如MCP.so、Glama.ai、Mastra.ai、OpenTools等目录。有趣的是,开源工具MCP-Get还提供了一个命令行交互选项。

  越来越多的数字服务也开始将MCP目录嵌入自己的平台。例如,Docker和微软正在构建聚焦自身平台生态的精选MCP目录;GitHub托管了一个便于安装的MCP服务器目录,并已开始为内部注册表配置添加控制项;MACH联盟(一个专注可组合商业的行业联盟)也在推广符合MCP的注册计划。

  除此之外,MCP注册表正超越公共目录——企业开始构建私有的、自托管的注册表,用于受控的内部MCP使用。虽然私有企业MCP注册的例子仍在兴起,但它们无疑得到了基础设施平台新功能的助推。例如,由Azure API中心提供支持的“MCP中心”演示了如何在Azure中构建MCP注册表;Lunar.dev的自定义MCP服务器注册表也允许管理员创建自己范围内的私有MCP注册表。

  MCP注册表的核心价值

  “MCP注册表最大的好处是可发现性。”云基础设施代理平台Infracodebase的创始人Justin O'Connor说。Infracodebase托管了一个公共MCP注册表,用于将AI代理连接到云提供商。

  “MCP服务器通常分散在团队和系统之间,注册表为你提供了一个清晰的地方,让人们找到已有的东西。”这使得AI代理能够以更少的试错成本发现工具。

  其他人也认同:改进的可发现性是自主代理急需的要素。Incorta的Alareqi说:“MCP的设计初衷就是确保代理拥有足够的上下文来产生正确的响应,而注册表正是其自然延伸。”

  O'Connor补充道,一个精心构建的MCP注册表能带来统一性,促进采用、复用和治理,因为它可以被视为已批准能力的官方清单。因此,MCP注册表的功能类似于软件领域的包注册表。

  在这种方式下,MCP注册表可以作为源头,在将MCP服务器暴露给代理之前进行审查和更新。O'Connor说,虽然MCP注册表不会取代每个MCP服务器自身的核心身份验证要求,但它确实有助于来源安全和供应链安全。

  企业级MCP注册表的核心要素

  尽管与传统软件集成目录有相似之处,MCP注册表拥有一些独特的要素。“如果你把AI或MCP注册表仅仅当作另一个静态目录,那你就做错了。”云原生基础设施公司Solo.io的副总裁兼全球现场首席技术官Christian Posta警告说。

  除了静态工具目录,高质量MCP注册表还需要许多其他要素。总体而言,它们可以归结为:丰富的工具元数据、面向开发人员的功能,以及增强的安全护栏。MCP注册表的有效性还取决于底层的MCP和API安全实践。

  丰富的工具元数据

  首先,MCP注册表需要包含与MCP协同运行的基础信息。Infracodebase的O'Connor说:“一个坚实的MCP注册表必须支持协议所需的基本要素。”这包括:如何连接服务器、传输类型、服务器URL,以及所需的配置(如环境变量或密钥)。

  接下来是帮助发现工具的详细信息。MCP注册表必须为AI代理提供自动发现合适底层MCP工具的方法。根据Posta的说法,使工具可被发现需要支持语义搜索的资源,例如嵌入工具名称、描述和输入模式,以及清晰的摘要。理想情况下,这个体验层还应支持渐进式披露,以优化上下文窗口。

  Incorta的Alareqi补充道:“代理需要上下文。围绕功能、模式、副作用、成本、延迟和故障模式的元数据,是让代理选择正确工具的关键。”

  基础设施编排平台Itential的技术传播总监William Collins也强调语义线索及其他元数据对发现至关重要。他建议,这些元数据应该超越端点描述,包含丰富的语义标签、带有破坏性变更信号的版本管理,以及明确的能力范围。

  开发者控制

  尽管代理会以编程方式使用MCP注册表,但注册表仍需由人类开发者(很可能是平台工程师)来维护。因此,MCP注册表应提供添加新服务器、删除服务器和设置权限的控制项。

  为了简化这一点,有效的MCP注册表的一个关键方面是良好的开发者体验。身份安全公司Silverfort的产品管理总监Ido Halevi说:“这意味着清晰的文档、其他团队的使用示例,以及跨代理的积极维护和采用等可靠性信号。”

  强大的注册表还应提供超越基础工具列表的上下文。可观测性平台Honeycomb的开发人员关系工程经理Jessica Kerr说:“团队需要知道MCP服务器是否被维护、它的使用范围,以及它需要什么样的风险或特权。”例如,Kerr建议添加轻量级审核控件,用以标记“可靠”与“实验性”MCP服务器。

  安全护栏

  由于MCP注册表的概念非常新,安全标准和指南仍在形成中。“这有点像狂野的西部。”统一API平台Merge的联合创始人兼首席技术官Gil Feig说。

  因此,Feig强调需要强大的安全护栏和特权边界。“在评估MCP注册表时,要寻找那些具有内置规则、主动警报和实时日志的强大身份验证、可观测性和数据治理能力的注册表。”

  授权上下文尤为重要,要确保代理只使用组织允许的MCP工具,并且有权访问敏感材料。Posta表示,MCP注册表需要掌握代理的身份、其意图以及它代表哪个用户行事的信息。

  O'Connor补充说:“注册表应倾向于正确分隔用户会话的服务器,以免数据在用户之间泄露。”他指出,支持每个用户身份验证的现代OAuth模式有助于确保访问与权限匹配。

  同样,Halevi强调了超越纯粹工具发现的强制执行的必要性。“没有执行,你只是在分类风险。”注册表应该帮助控制哪些代理可以访问哪些工具,并在工具被调用时动态强制执行权限。

  底层的原生API处理

  尽管有原生API处理,注册表的能力是有限的。核心身份验证的细节因MCP服务器而异,每个服务器都需要与标准API连接同样的安全严谨性。

  AI工具调用平台Arcade.dev的联合创始人兼首席执行官Alex Salazar说:“在服务器层面,MCP服务器必须从底层开始构建强大的安全功能。”MCP注册表无法取代核心MCP服务器安全基础,如基于OAuth的身份验证、妥善的令牌和密钥处理,以及可观测性。

  网络安全公司AppOmni的AI总监Melissa Ruzzi补充道:“问题在于,许多AI应用程序没有任何原生API处理。因此,它们把MCP注册表当作控制MCP认证的手段,这不是好做法。”

  另一些护栏从一开始就不属于注册层面。企业技术咨询公司Cognizant的AVP软件架构师Dan Fink说:“安全护栏和特权边界实际上是底层代理的责任,而不是注册表这种交换层的功能。”为了真正执行这一点,你需要额外的层——这些层要么太重,要么引入全新的代理作为中介,要么只是容易被伪造或过时的简单标签。

  出于这些原因,有些人将MCP注册表本身视为一个抽象层,它只定义高级功能,然后映射到底层范围、角色和API。

  Itential的Collins说:“注册表应该表达护栏,让编排层能够强制执行它们。这样,注册表就不会成为瓶颈和单点故障。”在他看来,注册表中强制执行的护栏包括特权边界、身份验证要求和风险分类。

  Asperitas Consulting的Ashmore说:“企业MCP注册应该稍微抽象,而不是与每个工具特权一一对应。”他补充说,与直接反映每个底层权限的抽象层相反,薄抽象层还允许你跨工具标准化权限名称、复用角色模板和分离用户类型。

  生命周期与性能

  作为安全护栏的标签,MCP注册是引入供应链安全功能和监控的位置。

  Arcade的Salazar说:“这包括在服务器可被发现之前对其进行审查,实施安全扫描和漏洞检查,以及控制哪些内容可以发布或发现。”注册表还应跟踪性能指标和错误。

  除了动态工具发现和治理,云原生API平台Kong的首席技术官兼联合创始人Marco Palladino认为,跨AI数据路径的可观测性是企业级MCP注册表的必要条件。“企业需要集中查看工具使用情况、运行状况和故障情况,以支持监控、优化、成本管理和合规性。否则,组织将面临支离破碎的集成和日益增长的运营风险。”

  除了上述领域,专家们认为企业级MCP注册表还应具备以下属性:

  •   特定服务器内工具的指纹识别

  •   私有注册表与公共注册表之间的桥接能力

  •   基于先前表现、Token成本等属性的排名或评分

  •   防止命名冲突的命名空间验证

  •   捕捉错误的验证层

  •   跟踪服务器可用性和性能的健康监控

  •   选择公共还是私有MCP注册表

  在实施MCP注册表时,组织有两种选择:使用公共MCP注册表,或者创建私有的自托管注册表。两者之间各有取舍。

  AppOmni的Ruzzi说:“在使用之前,公共MCP注册表必须经过充分的安全风险评估。”私有注册表通常更安全,但风险程度取决于它们的实现方式。

  云托管提供商Vultr的首席营销官Kevin Cochrane说:“公共注册生态系统仍然不成熟。我们可能需要一个‘MCP界的Hugging Face’——一个值得信赖的权威机构来验证列表并制定一致的标准。”在没有这一层的情况下,团队应对小型第三方注册表保持谨慎。

  相反,私有MCP注册表可以帮助企业管理其组合。Cochrane说:“将私有MCP注册表放在AI运行时的核心位置。这应该是平台工程团队拥有的核心基础设施,对MCP服务器的构建、测试、部署和监控进行治理。”

  Infracodebase的O'Connor补充说,这种精心策划的注册表能在特定工具上产生信任。“随着时间的推移,注册表也成为信任边界,特别是在公共环境中,因为它塑造了人们愿意将工具引入工作流程的意愿。”

  对许多人来说,起点可能是两者的结合——比如分叉一个开源的MCP注册表样本,然后根据自身需求进行扩展。

  Cognizant AI实验室软件工程副主任Andrei Denissov说:“另一种方法是将已发布的OpenAPI规范,用你选择的语言生成骨架服务实现。”

  构建MCP注册表的实战提示

  MCP注册的实验尚处于早期。然而,一线的开发人员已经积累了一些经验教训,并识别出好设计与坏设计的模式。

  一个教训是:你真正意识到需要注册表的时间,比你想象的要快得多。Silverfort的Halevi说:“与企业规模部署MCP的团队合作时,模式是一致的:注册表变得比组织预期的更早成为必需品。”

  随后,那些实施MCP注册表的人很快明白:基础的MCP目录只是拼图的一部分——企业需要的远不止MCP工具发现。Halevi说:“他们还需要每个代理的授权模型、有保证的人机链接归因、对代理行为的深度可观测性,以及内联执行。”

  Halevi补充道,在大规模运行许多MCP服务器时,发现之外的其他要求也开始变得同等重要:MCP服务器编排、密钥管理、版本对齐以及配置变更管理。

  平衡代理自主权与控制权

  在企业中,经过批准的MCP使用已被证明极其强大。以Workato为例:当它开放企业MCP功能后,短短60天内,内部员工的Claude聊天量增长了700%。支持工程师、财务分析师、销售线索等角色正在构建新的工作流,以切实的方式推动Workato的业务发展——这很大程度上归功于MCP。

  然而,要获得这样的成果,必须平衡代理的自主权与控制权。这正是MCP注册表能够大放异彩的地方。对于企业而言,MCP注册表的质量不仅取决于能否在目录中列出每一个MCP服务器。它取决于信任、安全和智能控制——例如,防止跨组织代理工作流中聊天流的数据泄露。

  因此,那些决定“全力投入”MCP的企业,应该认真将MCP注册表视为核心基础设施,并为其配备所有标准架构层面的企业级特性——版本控制、生命周期管理、可观测性,一应俱全。正如Alareqi所说:“它应该像对待任何其他严肃的软件一样对待。这意味着强大的版本控制、生命周期管理和可观测性。”

0
相关文章