【人工智能】AI基础知识(第五节:MCP)

一. MCP是用来解决啥问题

MCP(Model Context Protocol,模型上下文协议)的提出,旨在解决AI Agent如何调用外部软件功能的问题。在日常工作或Vibe Coding中,我们常常需要让Agent执行超出其内置工具范围的操作,例如操作Figma设计工具或控制Google浏览器。虽然Agent本身已预置了诸如write-file、read-file等基础工具,但当需求涉及第三方软件时,就需要通过MCP来建立连接。简言之,MCP为Agent安全、规范地使用其他软件提供的功能提供了协议支持。

二. MCP如何解决问题

MCP的核心作用是建立AI Agent与外部软件之间的标准化沟通桥梁。它通过定义一套明确的协议,规范了双方如何交互:软件以何种形式向Agent提供其功能,Agent又以何种格式发起请求,以及软件完成任务后如何将结果返回给Agent。

为了便于理解,我们可以用一个比喻:假设你有一位能力全面的朋友叫“大牛”,他擅长编程、测试和撰写设计文档。你想借助他的专长来完成工作,于是双方签订了一份合作协议(即MCP)。这份协议明确规定了:大牛将按照约定为你提供代码开发、测试和文档编写等服务;而你则需要遵循协议中的具体条款来安排和验收工作。你们之间达成的这份合作协议,就是MCP在现实中的类比。

下面是根据“大牛”技能描述的用例图:

用户(你)

大牛(外部能力提供者)

提供代码开发服务

提供测试服务

提供设计文档撰写服务

交付可运行代码

交付测试报告

交付设计文档

完成软件开发任务

“大牛”技能用例图

该图展示了用户(你)与“大牛”之间的协作关系:“大牛”作为外部能力提供者,通过MCP协议为用户提供三项核心服务(编程、测试、文档撰写),最终共同完成软件开发任务。

三. MCP功能被大模型使用

MCP 的功能是如何被大模型实际调用的呢?我们可以通过以下典型交互流程来理解:

  1. 用户发起请求:用户(通过 Agent)向大模型发出指令,例如“请根据这个链接 XXX 的内容,实现相应的代码”。
  2. 工具信息传递:Agent 将可用的工具信息(包括其内置工具以及通过 MCP 协议连接的外部软件功能)一并发送给大模型。
  3. 大模型决策:大模型分析请求和工具信息,识别出其中包含的 Figma MCP 工具,并决定调用该工具来完成任务。
  4. 调用外部软件:Agent 根据大模型的指令,通过 Figma 的 MCP 接口调用 Figma 软件的具体功能。
  5. 结果处理与反馈:Figma 软件执行操作(例如获取页面元素信息),将处理后的结果数据返回给大模型。大模型接收这些信息后,开始进行分析、思考,并生成最终的响应或执行下一步操作。
  6. 结果返回用户:大模型完成分析和思考后,将最终的处理结果或生成的响应通过 Agent 返回给用户,完成整个交互闭环。

这个过程清晰地展示了 MCP 如何作为桥梁,让大模型能够安全、规范地利用外部软件(如 Figma)的能力来扩展其功能边界。

为了更直观地展示上述交互流程,我们可以用时序图来描述用户、Agent、大模型和外部软件(以 Figma 为例)之间的协作关系:

外部软件 (Figma) 大模型 Agent 用户 外部软件 (Figma) 大模型 Agent 用户 发起请求(如“按链接XXX实现代码”) 1. 转发用户请求(提示词) 2. 发送工具信息(内置工具 + MCP) 3. 分析请求与工具,识别 Figma MCP 4. 通知调用 Figma MCP 5. 通过 MCP 接口调用 Figma 功能 6. 执行操作(整理页面元素信息) 7. 返回处理后的结果数据 8. 分析、思考,生成响应或下一步指令 9. 返回最终结果或响应 10. 将结果返回给用户 MCP 调用时序图

该时序图清晰地刻画了从用户发起请求,到 Agent 传递工具信息,大模型决策并指示调用 MCP,外部软件返回结果,最终大模型通过 Agent 将结果返回给用户的完整闭环。

四. MCP的命令

在 Claude Code 的对话框中,输入 /MCP 命令后,系统会显示当前 Agent 已配置的所有 MCP 列表。此外,在设置界面中也可以找到管理 MCP 的入口,用于添加或移除特定的 MCP 连接。

同时,用户还可以查看每个 MCP 的实时状态,明确区分哪些 MCP 当前可用,哪些暂时不可用,便于进行连接管理和故障排查。

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐