【深度收藏】从“手“到“说明书“,一文看懂AI Agent的Function Calling、MCP和Skills
在 AI Agent 的开发浪潮中,我们经常听到 Function Calling、MCP (Model Context Protocol) 和 Skills 这几个概念。
很多开发者容易混淆:它们到底有什么区别?是层层递进的关系,还是相互竞争的关系?
如果让我用最通俗的语言来解释,这其实是一个关于**“手”、“接口”和“说明书”**的故事。
今天,我们就像剥洋葱一样,一层层揭开这三者的本质。
01 第一层:Function Calling —— AI 的“手”
一切故事的起点,都要从 Function Calling(函数调用) 说起。这是 AI Agent 的地基。
为什么需要它?
想象一下,大语言模型(LLM)本质上是一个只会“说话”的大脑。它通晓天文地理,但它无法直接通过网络去查天气,也无法去数据库里取数据。
传统的软件系统(API、数据库)是“死板”的,它们只听得懂结构化的指令(比如 JSON 代码)。而 LLM 擅长的是非结构化的自然语言(比如“帮我查查天气”)。
这两者之间,隔着一条鸿沟。
Function Calling 就是这座桥梁。 它的核心作用,就是把用户**“非结构化的需求”,翻译成机器能听懂的“结构化指令”**。
它是怎么工作的?
一个典型的流程就像餐厅点菜:
- 用户(顾客):“给我来份宫保鸡丁,不要辣。”
- LLM(服务员):它不直接炒菜,而是把你的话记下来,写成一张标准的菜单(JSON):```plaintext
{ “dish”: “kung_pao_chicken”, “spicy_level”: 0} - 系统(后厨):拿到这张结构清晰的菜单,执行炒菜动作(调用 API)。
- LLM(服务员):菜做好了,端给顾客:“您的宫保鸡丁好了。”
一句话总结:Function Calling 让 AI 拥有了与外部世界交互的“手”。
02 第二层:MCP —— 通用的“USB 接口”
既然有了 Function Calling 这双“手”,AI 似乎无所不能了?
别急,问题来了。
“万能充”的烦恼
现实世界中,你要连接的系统千奇百怪:GitHub、Slack、公司内部数据库、飞书、钉钉……
在 MCP 出现之前,开发者非常痛苦。每接一个新的系统,就得专门写一套代码来适配。就像以前的手机充电器,诺基亚、三星、摩托罗拉,接口全不一样,乱成一团。
MCP:AI 时代的 USB-C
MCP (Model Context Protocol) 的出现,就是为了结束这种混乱。
它由 Anthropic 发起,现在已经捐赠给了 Linux 基金会。它的核心思想只有一句话:大家别各自为战了,都按这个标准来!
MCP 就像是 USB-C 接口。
- 只要你的数据源(GitHub、本地文件、数据库)支持 MCP 标准;
- 任何一个 AI Agent 插上就能直接读写,根本不需要重新开发。
本质上: MCP = Function Calling + 一套标准的 JSON-HTTP 协议。
它解决了“工具集成成本高”的问题,实现了即插即用。
03 第三层:Skills —— 给 AI 的“操作手册”
有了“手”(Function Calling),也有了“标准接口”(MCP),AI 应该能完美干活了吧?
还是不行。
复杂的活儿怎么干?
试想这样一个任务:“帮我把这个项目发布一个新版本。”
这不仅仅是调用一个 API 就能搞定的。它需要一连串复杂的步骤:
- 检查版本号对不对。
- 运行代码检查。
- 合并分支。
- 打包上传。
- 发送通知。
如果你把这些逻辑全部写成死代码(Hard-code),那就太僵化了。一旦流程微调,就要改代码。而且,这浪费了 AI 最宝贵的能力——随机应变。
但如果你只给 AI 一句简单的 Prompt,它又很容易**“放飞自我”**,漏掉关键步骤。
Skills:用文字定义的 SOP
这时候,Skills 登场了。
Skills 的本质,是用自然语言写成的标准作业程序(SOP)。
它不像代码那样死板,也不像纯聊天那样随意。它就像是你给新来的实习生写的一本**“操作手册”**(Markdown 文档)。
比如,Lynxe 团队在用的 new_branch 流程,就是直接写在 Markdown 里的:
1) 确认本地的 VERSION 与 pom.xml 一致2) 执行 mvn package3) 进入 ui-vue3 运行 pnpm lint4) 退回目录,git merge upstream/main5) 运行 make ui-deploy6) git push 并打 tag
当 AI 接到任务时,它会先“阅读”这份手册,然后利用 Function Calling 的能力,一步步去执行脚本、调用命令。
Skills 的精髓在于: 它把**“流程控制权”交还给了 AI,但又给了它一份“说明书”**。
04 深度洞察:MCP 与 Skills 的“瑜亮情结”
很多文章会告诉你,MCP 和 Skills 是互补的。但如果我们深挖一层,会发现它们其实存在着隐秘的竞争关系。
为什么?因为它们都在解决同一个问题:如何搞定复杂的任务流?
- MCP 派(代码派):倾向于把逻辑封装在 Server 端。用代码写死流程,通过标准的接口暴露给 AI。
- 优点:稳定、准确。
- 缺点:重、开发成本高、不够灵活。
- Skills 派(文字派):倾向于把逻辑写在 Markdown 里。用文字定义流程,让 AI 动态决策调用哪些基础工具(Bash/Curl)。
- 优点:极其灵活、易于修改、利用了 AI 的理解力。
- 缺点:AI 可能会“幻觉”,执行不如代码稳定。
对比清单:
| 特性 | Function Calling | MCP | Skills |
|---|---|---|---|
| 角色 | 手 (基础能力) | USB 接口 (连接标准) | 说明书 (流程定义) |
| 解决痛点 | 人机语言不通 | 工具适配太累 | 复杂流程难控 |
| 核心载体 | JSON | Server 代码 | Markdown 文本 |
| 灵活性 | 高 | 低 (偏重标准) | 极高 (偏重适应性) |
05 我们的思考:回归本质 —— 一切皆函数
在 Lynxe (Spring AI Alibaba 的 Agent 框架) 的实践中,我们尝试了 Skills,发现它虽然爽,但有两个硬伤:
- 不够精确:纯文字描述容易让 AI 误解,导致“听不懂人话”。
- 是个孤岛:Skills 往往只能在聊天框里跑,很难嵌入到复杂的业务系统(比如审批流、ERP 表单)中。
“一切都是函数,函数才是第一公民。”
我们认为,未来的 Agent 不应该只是一个陪你聊天的 Bot。每一个 Agent 的能力(无论是查天气,还是复杂的发布流程),都应该被封装成标准的函数接口。
这样,Agent 既保留了 AI 处理不确定性的智慧,又拥有了传统软件的结构化和稳定性。它不再是一个玩具,而是能真正嵌入你业务系统里的**“数字员工”**。
最后唠两句
为什么AI大模型成为越来越多程序员转行就业、升职加薪的首选
很简单,这些岗位缺人且高薪
智联招聘的最新数据给出了最直观的印证:2025年2月,AI领域求职人数同比增幅突破200% ,远超其他行业平均水平;整个人工智能行业的求职增速达到33.4%,位居各行业榜首,其中人工智能工程师岗位的求职热度更是飙升69.6%。

AI产业的快速扩张,也让人才供需矛盾愈发突出。麦肯锡报告明确预测,到2030年中国AI专业人才需求将达600万人,人才缺口可能高达400万人,这一缺口不仅存在于核心技术领域,更蔓延至产业应用的各个环节。
那0基础普通人如何学习大模型 ?
深耕科技一线十二载,亲历技术浪潮变迁。我见证那些率先拥抱AI的同行,如何建立起效率与薪资的代际优势。如今,我将积累的大模型面试真题、独家资料、技术报告与实战路线系统整理,分享于此,为你扫清学习困惑,共赴AI时代新程。
我整理出这套 AI 大模型突围资料包【允许白嫖】:
-
✅从入门到精通的全套视频教程
-
✅AI大模型学习路线图(0基础到项目实战仅需90天)
-
✅大模型书籍与技术文档PDF
-
✅各大厂大模型面试题目详解
-
✅640套AI大模型报告合集
-
✅大模型入门实战训练
这份完整版的大模型 AI 学习和面试资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】

①从入门到精通的全套视频教程
包含提示词工程、RAG、Agent等技术点

② AI大模型学习路线图(0基础到项目实战仅需90天)
全过程AI大模型学习路线

③学习电子书籍和技术文档
市面上的大模型书籍确实太多了,这些是我精选出来的

④各大厂大模型面试题目详解

⑤640套AI大模型报告合集

⑥大模型入门实战训练

如果说你是以下人群中的其中一类,都可以来智泊AI学习人工智能,找到高薪工作,一次小小的“投资”换来的是终身受益!
应届毕业生:无工作经验但想要系统学习AI大模型技术,期待通过实战项目掌握核心技术。
零基础转型:非技术背景但关注AI应用场景,计划通过低代码工具实现“AI+行业”跨界。
业务赋能 突破瓶颈:传统开发者(Java/前端等)学习Transformer架构与LangChain框架,向AI全栈工程师转型。
👉获取方式:
有需要的小伙伴,可以保存图片到wx扫描二v码免费领取【保证100%免费】🆓

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐


所有评论(0)