随着代理系统变得越来越复杂,企业能力在这些系统中作为工具出现,建立明确且一致的规则对于自主工作流程的成功至关重要。
模型上下文协议 (MCP) 为代理、LLM 和企业系统提供通用语言。将 MCP 纳入 AI 数据战略的企业将能够构建新功能,确保信任和可审计性,并适应快速发展的创新。竞争优势将源于周到的设计、强大的可操作性和学习意愿。
这篇文章介绍了 MCP 作为 AI 原生集成标准的工作原理、其主要特性、与 API 的关系、相对于 RAG 系统的优势、实施策略以及组织的运营考虑因素。
什么是 MCP?它为何重要?
MCP 于 2024 年底推出,是一种开放的 AI 原生协议,用于描述外部工具、函数、API 和数据集,使 LLM 能够自行决定如何以及何时使用它们。它基于数十年 API、SOAP、REST 和 OpenAPI/Swagger 的经验教训——但至关重要的是,它是为机器而非人类的消费和推理而设计的。
MCP 支持功能发现,代理或 LLM 可以确定哪些操作是可行的,以及成功执行这些操作所需的上下文。它通过详细的描述提供丰富的语义,帮助 LLM 理解如何使用、何时以及为何使用一项功能。MCP 通过一致的接口公开各种资源(API、数据库和内部工具),从而提供一致性。它还通过提供一个抽象层来支持可组合性,该抽象层用于在复杂的代理工作流中连接、组合和编排服务和数据源。
示例:Excel 即服务
假设一位业务用户想要通过 AI 助手操作 Excel 电子表格中的数据。传统方法需要专门构建的 API 连接器或自定义提示“配方”,用于执行每个操作,例如添加行、重新计算列或设置格式。这种集成非常繁琐。
借助 MCP,Excel 服务可以通过 MCP 公开其功能(包括其存储的数据类型和提供的功能)。代理可以读取这些信息,推断可用的操作,并执行诸如“添加季度增长率列”之类的任务,而无需进行自定义集成工作。
MCP 与 API 的关系和区别
MCP 可以被视为一次进化的飞跃。传统的 API 充当系统交互的“名词和动词”,而 MCP 不仅阐明了存在哪些操作,还阐明了如何以丰富、灵活的方式(适合 AI 代理)使用它们。
API 和 MCP 都提供了定义客户端可以对系统执行哪些操作的契约。它们都可以组合起来,以编排更复杂的工作流程。两者都依赖于良好的设计,因为设计不良的 API 或描述不良的 MCP 端点会导致混乱、功能无法使用或下游问题。
然而,它们之间存在着关键的区别。API 是为人类开发人员设计的,而 MCP 是为能够读取并“推理”详细描述和上下文的 AI 模型设计的。API 通常需要手动编写,而 MCP 则明确面向能够实时决定使用哪些工具以及如何使用的代理推理系统。MCP 可以轻松地以自由形式的叙述(而不仅仅是形式参数)来描述语义关系和上下文——这有助于 LLM 驱动的决策。
假设用例:ERP 集成
一家零售商的 ERP 系统包含数十个 API(库存、定价、订单)。以前,开发人员必须学习每个 API,阅读文档,编写代码,并处理各种边缘情况。
通过 MCP,一个描述良好的界面即可展现业务优先的功能:“检索当前库存水平”、“检查缺货订单”、“将价格上调 5%”。负责“准备低库存警报报告”的 LLM 代理可以使用语义描述来发现、组合和排序这些功能,即使这些功能是跨 API、数据库或遗留系统实现的。
超越检索增强生成:人工智能应用集成的下一步
检索增强生成 (RAG)帮助模型在推理时检索外部信息,并通过最新或特定于企业的上下文来增强其响应能力。然而,RAG 主要关注的是数据检索,而非操作。
MCP 更进一步,提供了工具契约,使 LLM 不仅能够查找信息,还能调用操作。它通过描述提供语义指导,阐明工具的功能、使用时机、副作用以及预期的输入/输出类型。MCP 支持统一的编排,使 LLM 能够以单一、一致的方式理解后端并与之交互,无论后端是 REST API、直接 SQL 接口还是其他接口。
示例:自动化支出管理
想要实现月度费用审批自动化的企业可以使用 LLM 代理,该代理会检查已提交的请求(使用 RAG),然后使用 MCP 公开的 SQL 数据库工具来审计预算消耗,在发现异常时调用 MCP 的“通知管理器”功能,并在 MCP 公开的 ERP 系统中记录记录。该代理无需使用脆弱的脚本或点对点集成,而是在丰富的 MCP 描述指导下动态导航功能。
MCP设计和操作化的重要性
对于 API 而言,成功通常取决于清晰、以开发者为中心的设计。而使用 MCP,您编写的模型会关注每一个字词。LLM 能够处理详尽的文档、示例和细微差别,因此,全面性和清晰度会带来回报。
一个好的薪资 MCP 端点不仅仅是被描述为“update_salary”。其文档解释道:“使用此功能调整员工薪酬。典型场景:年度加薪、特别奖金。要求:employee_id、new_salary、reason。触发通知给人力资源和财务部门。”
一个糟糕的例子是“可调用对象:update(eid,val)”,它没有提供任何上下文,可能会被 LLM(或人类)误用或忽略。
陷阱:糟糕的设计会延续下去
与 API 一样,后端结构与业务流程之间缺乏一致性会导致混乱。将原始数据库模式表达为 MCP 端点,或用技术术语公开每个方法,都违背了初衷。LLM 可以弥补一些歧义,但无法完全克服清晰度或业务上下文的缺失。
资源考虑
AI 操作并非免费:每个令牌和每次调用都需要计算资源,进而也需要资金。如果客服人员天真地重复或过度调用,后端可能会不堪重负,预算也可能超支。
缓解策略包括使用精确的、以任务为中心的 MCP 端点,在 MCP 描述中指示成本、副作用或推荐的使用模式,并根据需要实施缓存或限制,同时将这些限制告知代理。
新的测试、监控和管理模式
测试确定性 API 很简单,但由 MCP 支持的代理 AI 引入了可变性:相同的请求可能会根据上下文、负载或细微的提示差异产生不同的工具链。
MCP 世界中的 QA 包括合成任务生成以创建代表性任务并自动化测试运行、边缘案例分析以监控无效的工具选择或资源问题,以及冻干模式以将可靠的工具链“冻结”为固定序列或新的 MCP 端点。
自动化的连续体:代理和程序
并非所有问题都需要自由形式的代理编排。许多企业工作流程一旦发现,最好进行硬编码,以提高效率和可预测性。相同的 MCP 基础架构可以同时支持这两种方法,在需要的地方提供灵活性,在其他地方提供确定性。
企业战略的最终考虑
MCP 属于 AI 数据库,因为它通过减少逐案定制集成的需要来加速集成,通过详细描述的功能来提高透明度和信任度,通过防止“失控”的计算费用来降低成本,并通过带来适应性来确保架构的未来性。
可行的步骤包括从小处着手,通过 MCP 公开关键 API 或工具,通过详细说明功能使用的原因、时间和后果来进行清晰的设计,迭代和冻结成功的工作流程,规划包括成本和资源监控在内的运营,并通过试点和分析进行边做边学。
常见问题
人工智能中的数据战略是什么?
人工智能中的数据战略是指组织如何收集、管理、存储和使用数据来驱动人工智能系统的全面规划。它涵盖数据治理、质量控制、集成方法以及像 MCP 这样的工具,使人工智能系统能够有效地访问和使用组织数据。良好的人工智能数据策略能够确保人工智能代理能够发现、理解并合理利用所有可用的数据资源和工具,从而实现业务价值。
什么是 AI-first 数据策略?
AI 优先的数据策略优先考虑专为 AI 消费而非人类消费而设计的数据系统。它致力于通过实施 MCP 等协议,使 AI 系统能够理解上下文、发现功能并采取适当的行动,从而使数据具备 AI 就绪性。这种方法强调语义丰富性、跨不同数据源的一致性以及服务的可组合性,从而使 AI 代理能够高效工作,而无需大量的人工干预或针对每个用例进行自定义集成。
数据策略的一个例子是什么?
数据策略的一个实际例子是企业实施 MCP 来统一对其各个系统的访问。例如,零售商可能会制定一个全面的数据策略,该策略包括:
- 通过 MCP 接口公开库存、定价和订单系统
- 为每项功能创建清晰的语义描述
- 对人工智能代理交互实施适当的测试和监控
- 建立数据访问和操作的治理协议
- 开发成本控制机制以防止失控的计算费用
- 创建一个流程来识别成功的 AI 工作流程,并对其进行“冷冻干燥”以提高效率
- 构建具有一致元数据标准的集中式数据湖
- 在信息进入人工智能系统之前建立数据质量控制流程
这种方法可以使企业逐步构建人工智能功能,同时保持对代理与关键业务系统交互方式的控制。