游乐游手机版
首页/AI热点日报/热点详情

一文说清MCP与函数调用核心区别究竟在哪里

类型:热点整理2026-07-10
关于MCP与Function Call的区别,近期在AI开发社区引发了大量讨论。此前我们在实际项目中大量采用Function Call模式,MCP刚兴起时,坦白讲我们也未完全厘清两者之间的本质差异。经过深入梳理,我们总结出一些关键区别,特此分享供参考。 Function Call 在大语言模型(LL

关于MCP与Function Call的区别,近期在AI开发社区引发了大量讨论。此前我们在实际项目中大量采用Function Call模式,MCP刚兴起时,坦白讲我们也未完全厘清两者之间的本质差异。经过深入梳理,我们总结出一些关键区别,特此分享供参考。

Function Call

在大语言模型(LLM)中,Function Call本质上是一种让模型与外部工具、API或系统进行交互的机制。它使模型不仅能生成文本,还能执行具体操作——例如查询数据库、调用计算接口等。其核心工作流程如下:

  1. 首先定义Function Call需要调用的工具(Tools)。
  2. 用户输入时,模型根据输入内容匹配对应的工具定义,决定执行哪个工具。调用时的参数根据用户输入动态生成。
  3. 工具可以调用外部API(如查询天气),或读取本地文件(例如企业黑话汇总)。
  4. 模型根据工具返回的结果直接生成回复,也可以依据结果决定是否需要调用其他工具。

MCP

官方定义的MCP架构如下所示:

该架构抽象程度较高,若结合Function Call来理解,会更为直观:

从图中可以明显看出,最大的变化在于:工具(Tool)的定义被移出了应用层(Application)。具体而言,原来由API服务提供商负责的工作,现在变为他们定义工具并封装成一个MCP Server。例如,高德地图可将其地理编码、逆地理编码、路径规划等API封装成工具,对外提供MCP Server服务。

这样一来,应用开发者只需在自己的Application中实现一个MCP Client,根据模型的指令调用相应的MCP Server即可。原Application现改称为MCP Host。

MCP 的优势

极大简化应用开发工作量

假设应用需要对接100个API,采用Function Call方案需要手动实现100个Tool。而在MCP模式下,这些Tool由服务商提供,应用侧只需实现一个MCP Client即可。两者工作量差距显而易见。

更容易标准化

企业内部若存在多个团队,Function Call模式下各团队需自行实现Tool,实现方式五花八门。MCP则彻底统一了这一过程,为标准化提供了坚实基础。

提升 Tool 的可靠性与可复用性

Tool由服务商统一实现,供全球开发者使用,相比于每个Tool由不同开发者各自实现与维护,复用性显著提升。同时,由于统一封装,可靠性也得到增强。

增强 Tool 的易用性

若应用逻辑本身不复杂,甚至无需自行开发MCP Host和MCP Client。借助Cursor、CLine等工具,直接调用MCP Server即可完成。对于没有编程经验的使用者而言,这一门槛降低是实质性的。

来源:https://www.53ai.com/news/LargeLanguageModel/2025051367239.html

相关热点

继续查看同栏目近期热点。

延伸阅读

补充最近整理过的热点入口。