MCP和Function Calling

MCP

MCP(Model Context Protocol,模型上下文协议) ,2024年11月底,由 Anthropic 推出的一种开放标准,旨在统一大模型与外部数据源和工具之间的通信协议。MCP 的主要目的在于解决当前 AI 模型因数据孤岛限制而无法充分发挥潜力的难题,MCP 使得 AI 应用能够安全地访问和操作本地及远程数据,为 AI 应用提供了连接万物的接口。

如下图示意,可以将 MCP 理解为一个 "AI 的 USB 接口",提供了一个连接标准,使 Agent/LLM(如 Claude、ChatGPT、Qwen)能够方便、安全的访问各种外部工具和数据(比如 Gmai、Slack、本地文件等)。

MCP 就是制定了一套标准,充当 AI 模型的"万能转接头",让 LLM 可以使用不同工具。如下图示,这样你应该更容易理解"中间协议层"的概念。

MCP 提供给 LLM 所需的上下文:Resources 资源、Prompts 提示词、Tools 工具。

更具体的说 MCP 的优势在于:

  • 生态:MCP 提供很多现成的插件,你的 AI 可以直接使用。
  • 统一性:不限制于特定的 AI 模型,任何支持 MCP 的模型都可以灵活切换。
  • 数据安全:你的敏感数据留在自己的电脑上,不必全部上传(因为我们可以自行设计接口确定传输哪些数据)。

Function Calling

将模型连接到外部数据和系统,平铺式的罗列 Tools 工具。Function Call是大模型与真实世界交互的"桥梁" ,从语言理解 => 具体行动

Function Calling在大模型中的作用:

  • 扩展模型能力
    大模型本身无法直接操作外部系统(如数据库、计算工具),但通过调用预设函数,可以完成:实时数据获取(天气、股价、新闻);复杂计算(数学运算、代码执行);操作外部系统(发送邮件、控制智能设备)
  • 结构化输出
    模型可将用户自然语言请求转化为结构化参数,传递给函数。例如:用户说"明天北京天气如何?" → 模型调用 get_weather(location="北京", date="2025-05-06")
  • 动态决策流程
    模型可根据上下文决定是否/何时调用函数,甚至链式调用多个函数(如先查天气,再推荐穿搭)。

MCP与Function Calling区别

已经有了MCP还需要Function Calling么?

简单、原子化任务使用Function Calling会更方便

  • 查询天气 get_weather(city="北京")
  • 计算数学公式 calculate(expression="3+5")
  • 发送单条通知 send_email(to="user@example.com")

Function Calling优势:

开发快捷:无需配置 MCP Server,直接通过模型 API 调用预定义函数。

低延迟:单次请求-响应,无需协议层开销。

MCP 可能成为主流,但 Function Calling 作为底层能力仍将存在

相关推荐
镜象科技22 分钟前
AI情感大模型应用场景全解:从校园到医院再到企业的落地地图
人工智能
Joshua-a1 小时前
工程数学-理解卷积的含义_线性时不变系统的冲激响应与卷积
人工智能·深度学习
song5011 小时前
React Native for OpenHarmony 实战:三方库 react-native-css-transformer 的鸿蒙化适配指南
css·人工智能·深度学习·react native·transformer
老金带你玩AI6 小时前
ChatGPT dots,到底能替你操多少心?
人工智能
AliCloudROS6 小时前
计算巢 X DeepSeek Harness — 云端智能体工作台
人工智能·阿里云
深蓝AI7 小时前
GitHub的Push一年涨4.9倍:AI Agent为什么逼它重做Git存储?
人工智能·github
stereohomology7 小时前
大模型的观点谨:StoryTold 「Crafting Apps」四件套 · 深度总览
人工智能·llm
运维行者_7 小时前
网络性能监控怎么做?从自动发现到根因分析的4个环节
运维·服务器·网络·人工智能·支持向量机
Su米苏7 小时前
Spring AI 中MCP 与普通 @Tool的区别
java·人工智能·spring
美狐美颜sdk7 小时前
直播APP源码可以直接接入视频美颜sdk吗?技术方案详解
android·人工智能·音视频·美颜sdk·直播美颜sdk