如果把大模型比作一位善于理解语言的助手,那么它天生擅长解释、归纳和生成内容,却并不能直接查询企业数据库、获取实时天气、创建工单或操作云资源。要让它完成这些动作,就需要一条可靠的“外部能力连接通道”。MCP 正是在这个背景下出现的。
一、MCP 的一句话定义
MCP 的全称是 Model Context Protocol,中文常译为“模型上下文协议”。它是一套让大模型应用与外部工具、数据源交换信息的标准协议。
通俗地说:API 是某个系统提供的能力入口;MCP 则为“让 AI 发现、理解和调用这些能力”提供了一种更统一的交互方式。
阿里云百炼将 MCP 描述为大模型和外部工具之间的信息传递通道,智能体和工作流都可以通过它接入官方或自定义服务。阿里云百炼:模型上下文协议(MCP)
二、为什么仅有 API 还不够?
传统程序调用 API 时,开发者会提前写好调用逻辑:调用哪个地址、需要哪些参数、返回结果如何处理。这种方式非常可靠,但前提是流程在编写代码时已经确定。
而智能体面对的是自然语言。例如用户说:“帮我查一下从杭州到上海的路线,再把行程摘要整理出来。”系统可能需要:
- 识别“路线查询”和“行程整理”是两个不同任务;
- 找到具备地图能力的工具;
- 按工具要求组织出发地、目的地等参数;
- 调用工具并读取结果;
- 用自然语言向用户说明结果。
如果每个工具都有不同的接入方式,开发者需要为每个智能体重复编写工具描述、参数转换和返回格式处理。MCP 的价值在于给这类“工具发现与调用”建立共同语言,使工具可以更标准化地被 AI 应用接入。
三、四个概念,一张关系图
| 概念 | 它是什么 | 主要负责什么 |
| API | 某个系统暴露的能力接口 | 提供具体功能,例如查订单、发消息、读数据 |
| 插件 | 面向应用的能力封装 | 让特定应用更方便地调用外部服务 |
| MCP 服务 | 遵循 MCP 协议的工具服务 | 向 AI 应用描述并提供可调用的工具 |
| 智能体 | 能理解任务、选择工具并组织结果的应用 | 决定何时调用什么能力,以及如何回应用户 |
它们不是互相替代,而是可以层层协作。一个已有的 REST API 可以被包装为 MCP 服务;智能体再通过 MCP 调用它。对用户来说,最终看到的是一句自然语言请求被完成;对系统来说,背后仍然是明确的参数、权限和执行结果。
四、MCP 不等于“让模型随意访问一切”
这是最需要澄清的误解。MCP 只是连接协议,并不会自动授予模型权限,也不会保证每次调用都是正确的。
一个成熟的工具接入至少要回答四个问题:
- 能做什么? 工具描述应说明用途和输出,而不只是给一个模糊名称;
- 需要什么参数? 日期、地区、对象 ID 等输入要有明确类型和范围;
- 谁能调用? 鉴权、角色权限和数据范围仍由服务端控制;
- 失败怎么办? 超时、限流、参数不完整和上游异常都需要可预期的处理方式。
因此,模型生成的工具调用应被视作“候选指令”,而不是最终授权。特别是发送消息、修改数据、删除资源、提交订单等有副作用的操作,必须经过服务端校验,并在必要时让用户确认。
五、一个小例子:查询与执行为什么要分开
假设一个助手接入了两个能力:
查询订单状态:根据订单号返回状态、金额和更新时间
取消订单:根据订单号发起取消操作
用户说:“看看 10086 这个订单能不能取消。”
合理的执行顺序应当是先查询,再判断订单状态是否允许取消,最后向用户说明影响并获取确认。它不应该看到“取消”两个字就直接调用取消订单工具。
这里,MCP 解决的是“如何把工具能力提供给智能体”;而“先查后改”“是否需要确认”“当前用户有无权限”仍属于应用逻辑与业务规则。把这两层分开,才能既获得自然语言交互的便利,又不把风险交给模型猜测。
六、官方服务、自定义服务与已有 API
在阿里云百炼中,MCP 服务大致可以从三个方向理解:
- 官方或市场服务:适合快速体验已有能力,例如联网搜索、地图、文档处理等;
- 自定义 MCP 服务:适合已有符合 MCP 协议的服务,或需要部署自有工具的场景;
- 将已有 API 接入:适合企业已经有 RESTful API,希望让智能体安全调用内部能力的情况。
阿里云百炼文档列出了自定义服务的多种方式,包括脚本部署、从 AI 网关导入,以及从阿里云 OpenAPI 导入。自定义 MCP 服务说明
选择时不必追求“所有工具都改成 MCP”。如果一个固定流程只会由后端程序调用,普通 API 已足够;如果一个能力需要被不同智能体、不同开发工具以统一方式发现和调用,MCP 的收益会更明显。
七、MCP、工作流和智能体如何分工?
这三个概念也常被放在一起讨论。可以这样理解:
- MCP 负责连接外部能力;
- 工作流 负责把固定步骤按既定顺序执行;
- 智能体 负责面对开放问题时理解意图、选择工具与组织结果。
例如“每天 9 点读取销售数据并发送日报”是固定任务,适合工作流;“根据用户问题选择查询订单、查政策或查库存,再组织回答”更适合智能体;两者都可以通过 MCP 使用外部工具。
百炼支持在智能体和工作流应用中接入 MCP 服务;官方文档同时提醒,某些服务会涉及第三方 API 费用或不同的部署、调用模式,因此接入前应确认能力范围、凭据和成本。官方 MCP 服务说明
八、第一次接入 MCP,建议从只读能力开始
对于 OPC中国 的小团队或个人实践,一个稳妥的起点是选择低风险、可验证的只读任务,例如:
- 查询公开天气或路线;
- 检索已授权的产品文档;
- 读取指定范围内的项目状态;
- 根据输入生成图表或摘要草稿。
先观察三件事:工具是否被正确选择、参数是否完整、返回结果是否被准确理解。等这条链路稳定后,再逐步接入创建工单、发送通知等有副作用的能力。
在提示词中明确写出工具名称、用途和调用时机也很重要。百炼的外部调用说明提到,模型需要明确指令才能准确调用 MCP 服务;若模型能正常对话却不调用工具,应优先检查工具描述与提示词,而不是一味增加工具数量。MCP 外部调用说明
九、三个常见误解
误解 1:MCP 是一种新的大模型
不是。MCP 是协议,不负责生成语言或推理;它让模型应用更容易使用外部能力。
误解 2:接入 MCP 后,不再需要 API
不是。MCP 服务底层仍可能调用 API、数据库或云资源。MCP 更像标准化的适配层。
误解 3:工具越多,智能体越强
不一定。工具越多,选择难度和安全管理成本也越高。优先保留职责清楚、描述完整、可审计的少量工具,通常比堆叠大量相似能力更可靠。
结语
MCP 的意义,不是让 AI 获得无限权限,而是让“模型理解语言”和“系统执行动作”之间有一条更标准、更可管理的连接通道。
理解 API、插件、MCP 和智能体的分工后,就能更清楚地设计 AI 应用:让模型负责理解和选择,让协议负责连接,让服务端负责权限和执行。对 OPC中国 来说,这种清晰分层比追逐概念更能带来稳定的自动化能力。