游乐游手机版
首页/AI教程/文章详情

阿里面试官详解Agent Skills、MCP与Function Call区别

时间:2026-06-08 15:49
先问一个问题:当你听说MCP、Function Call和Agent Skills这几个概念时,是不是也有点懵?这三者到底有啥区别,又各自扮演什么角色? 想象一下,可爱又疯狂的乌萨奇(Usagi)最近入职了一家高端家政公司,担任“全自动智能管家”。为了让乌萨奇能完美打理你的家,工程师们面临三个难题:

先问一个问题:当你听说MCP、Function Call和Agent Skills这几个概念时,是不是也有点懵?这三者到底有啥区别,又各自扮演什么角色?

想象一下,可爱又疯狂的乌萨奇(Usagi)最近入职了一家高端家政公司,担任“全自动智能管家”。为了让乌萨奇能完美打理你的家,工程师们面临三个难题:一是怎么让乌萨奇的手插进各种品牌的电器插座(比如海尔、小米);二是怎么让乌萨奇看懂不同电器的操作面板(有的叫“启动”,有的叫“Start”);三是怎么让乌萨奇学会“大扫除”这种复杂的连招,而不是只会在地板上打滚。

这个故事,恰恰能帮你理清MCP、Function Call和Agent Skills三者之间的关系。

先说几个核心判断

MCP(Model Context Protocol,模型上下文协议)——由Anthropic提出的开放协议,旨在标准化AI如何接入外部数据(如Google Drive、GitHub、本地文件)。通俗点说,它就像家里的三孔插头/USB接口,规定了形状、电压,让电器和插座能接上。

Agent Skills——通常指AI智能体所具备的具体功能模块,包括调用API、执行代码、使用工具等。通俗点说,就像电器的具体功能:扫地机器人的“扫地”、空调的“制冷”。

Function Call——是通过特定格式的指令来调用某个具体函数的过程。它解决的是“怎么说”的问题。

一个装修房子的例子

假设你买了一台全自动管家(也就是AI Agent)。

Agent Skills(管家本身会的活儿)
这是管家大脑里自带的本领。比如管家会缝衣服、会做饭、会记账。但问题是,如果管家没见过你家的智能洗衣机,他空有一身“洗衣服”的本领,却不知道怎么启动那台机器——因为接口对不上。

MCP(万能转换头/协议)
这是你家装修时统一的一套标准插座。不管你买的是海尔的洗衣机,还是小米的灯泡,只要它们都支持MCP标准插头,管家只要把手插上去,就能瞬间“读取”这台机器的所有状态,并控制它。你不需要教管家“如何控制海尔”,也不用教他“如何控制小米”——插头一插,自动就能沟通了。

Function Call(说明书)
虽然管家的手插进了洗衣机的MCP插座(物理连通了),但管家还得知道洗衣机能听懂哪些指令。洗衣机的“说明书”上写着:“你想洗衣服,请喊start_wash(mode="快速", temperature=40)”“你想甩干,请喊spin_dry(speed=1200)”。这个“喊出特定格式指令”的过程,就是Function Call。

三者的关系可以用一句顺口溜来概括:

Skills是我想干活,MCP是我能摸到活,Function Call是我告诉活儿该怎么干。

深入理解MCP

MCP的出现,是为了打破“孤岛”。在没有MCP之前,如果你想让Claude读你的Notion,开发者得写一套代码;想让ChatGPT读,又得写一套。标准化的优势在于:只要你的数据库或工具支持MCP协议,任何支持该协议的AI客户端(如Claude Desktop、Cursor等)都能瞬间拥有读取该数据的能力。

MCP的内容包含三个核心要素:

  • 资源(Resources)——应用控制。数据源,为AI提供上下文信息,由应用决定什么时候去加载。
  • 提示词(Prompts)——用户控制。用户显式触发这些提示,比如用户说“请使用XXX MCP搜索网络数据”。
  • 工具(Tools)——模型控制。比如可执行的函数,AI可以调用来执行操作。AI决定什么时候调用这些工具,比如需要查询数据库时,就会调用数据库查询工具。

MCP与Function Calling的关系

Function Calling,本质上是LLM自带的一项能力——把人类的自然语言,翻译成结构化的函数调用请求。LLM本身不执行函数,它只告诉你应该调用什么函数、参数是什么。

而MCP是运行在函数调用之上的协议层。MCP标准化了函数在哪里、怎么调用、怎么发现的问题。

两者的关系可以理解为:Function Calling是“翻译官”,MCP是“交通规则”。

MCP的传输协议

MCP支持两种主要的传输方式:

传输方式 适用场景 说明
「Stdio」 本地进程 Server在本地机器运行,适合需要系统级访问的工具
「HTTP/SSE」 远程服务 Server在远程运行,适合云服务(GitHub、Sentry、Notion)

常见的MCP服务

文件系统与版本控制

  • Filesystem(官方实现):允许AI在本地受限目录下列出文件、读取内容、写入代码、搜索文本(支持grep风格搜索)。它是Cursor和Claude Code的核心能力。
  • Git:提供对本地仓库的深度访问,包括查看diff、检索提交日志、列出分支以及执行简单的Commit操作。
  • GitHub:支持跨仓库搜索、管理Issue、审查Pull Request、读取远程文件内容,常用于自动化处理GitHub Workflow。

数据库与存储

  • Postgres / MySQL / SQLite:允许AI查看表结构(Schema)、解释索引,并执行只读查询以分析数据。
  • Neo4j / Redis:针对图形数据库和键值存储的专项连接器。
  • Supabase:管理云端后端资源,操作数据库和存储。

云原生与容器

  • Docker:管理本地容器、镜像、网络和数据卷。AI可以帮你查看日志或诊断容器启动失败的原因。
  • Kubernetes:查看集群状态、Pod日志及配置,适合进行云原生开发排错。
  • AWS / Azure / GCP:部分第三方服务器支持查询云资源状态(如S3存储桶、EC2实例等)。

浏览器自动化与监控

  • Puppeteer / Playwright:允许AI启动浏览器、导航到页面、截图、点击元素并抓取动态生成的内容。
  • Sentry:读取错误堆栈追踪(Stack Traces),让AI针对特定的生产环境报错进行代码修复。

搜索与知识检索

  • Fetch:即时将在线文档(如React/Next.js的最新API文档)转化为Markdown供AI学习。
  • Exa / Ta vily:AI优化的搜索引擎,专门用于查找技术博客和最新的库版本信息。
  • arXiv:检索最新的计算机科学论文,适合研究算法和前沿技术。

深入理解Agent Skills

Skills是模块化的能力扩展包,让AI Agent从“通用助手”变成“领域专家”。

可以把Skills理解为:

  • 入职培训手册——告诉Agent如何完成特定任务
  • 工具箱——提供脚本、模板、参考资料
  • 领域知识库——存储专业知识和最佳实践

有了Skills,就不用每次在让AI写代码时都强调一遍:“不要给我使用蓝紫色渐变!!!”

一个标准的Skill长这样:

my-skill/
├── SKILL.md           # 必需:元数据 + 主要指令
├── reference.md       # 可选:详细参考文档
├── examples.md        # 可选:使用示例
├── scripts/
│   └── helper.py      # 可选:可执行脚本
└── templates/
    └── template.txt   # 可选:模板文件

SKILL.md是核心,必须包含YAML格式的元数据:

---
name: code-review
description: >
  Review code for bugs, security issues, and style violations.
  Use when asked to review code, check for bugs, or audit PRs.
---
# Code Review Skill

## Instructions
When reviewing code, follow these steps:
1. First check for security vulnerabilities...
2. Then check for performance issues...
3. Finally check for code style...

关键字段:

  • name:Skill的唯一标识,小写字母+数字+连字符,最多64字符
  • description:描述做什么、什么时候用,最多1024字符——description的质量直接决定Skill能不能被正确触发。

总结一下

核心要点概括

  • MCP(接口标准):解决“怎么连”。它是万能插座,让AI能摸到外部的数据和工具。
  • Skills(办事逻辑):解决“怎么做”。它是AI的一套复合绝招,包含思考步骤、参考文档和执行脚本。
  • Function Call(沟通语法):解决“怎么说”。它是AI调用工具时必须遵守的特定代码格式(说明书)。

详细对比

维度 MCP(连接器) Agent Skills(技能包) Function Call(指令)
本质 通信协议(Protocol) 功能封装(Package) 动作触发(Action)
层级 底层:基础设施层 高层:业务逻辑层 中层:解析转换层
组成部分 Server, Client, Resources SKILL.md, 脚本, 示例 函数名, 参数(JSON格式)
装修类比 全屋通用插座。不管是哪家的电器,插上就能通电通信。 管家的专业技能(如“全屋深度保洁”)。包含一连串复杂的干活流程。 电器的使用说明书。必须按照特定的按键顺序才能启动机器。
你的感受 换个AI客户端(如从Claude换到Cursor),数据依然能通。 换个Agent框架,技能可能失效,因为每个框架的SKILL.md格式不同。 AI自动把你的话翻译成代码:clean(mode="deep")

三者的“合力”过程

以“帮我订一张去北京的机票”为例:

  1. Skills(大脑发动):Agent识别到你的需求,启动了它的“出差助手Skill”。这个Skill里写着:先查票、再比价、最后下单。
  2. MCP(建立连接):Agent通过MCP协议连接到了你的“携程接口服务”和“个人行程日历”。
  3. Function Call(下达指令):Agent按照携程要求的格式,喊出一句:search_flight(from="上海", to="北京")

一句话总结:如果你想让AI更聪明、会处理复杂流程,你需要给它写Skills(也就是那个文件夹结构)。如果你想让AI能访问更多外部软件/数据,你需要给这些软件配上MCP。如果你在写代码定义AI怎么调用你的函数,你就是在处理Function Call。

来源:https://juejin.cn/post/7619233116405956648
上一篇OpenClaw睡后全自动完成老板交代的任务 下一篇技能热潮退去后重新理解AI Agent的未来发展方向
本站内容用于信息整理与展示,如有侵权或内容问题请及时联系处理。

相关推荐

补充同频道和同主题内容,方便继续浏览更多相关内容。

同类最新

继续查看同栏目最近更新的文章。

更多
Kimi App手机电脑联动下载安装及浏览器兼容教程
AI教程 · 2026-06-09

Kimi App手机电脑联动下载安装及浏览器兼容教程

本文介绍了Kimi智能助手从手机端到电脑端的下载与安装方法,重点阐述了不同平台(包括iOS、Android、Windows、macOS)的获取途径。同时,详细说明了如何通过浏览器直接访问网页版,并针对主流浏览器的兼容性进行了分析,旨在帮助用户根据自身设备选择最便捷、稳定的使用方式。

HeyGen稳定安装步骤:先配置创意团队环境再注册开通
AI教程 · 2026-06-09

HeyGen稳定安装步骤:先配置创意团队环境再注册开通

HeyGen的稳定安装与高效使用,关键在于前期团队环境的统一规划与后期账号流程的顺畅完成。团队需明确设计规范、素材管理及权限分工,为工具运行打下基础。随后,通过官方渠道完成注册、验证及订阅开通,确保服务稳定。最后进行基础功能测试与团队培训,即可快速投入实际创作流程。

Mochi 1从零搭建本地服务与工作流导入指南
AI教程 · 2026-06-09

Mochi 1从零搭建本地服务与工作流导入指南

本文介绍了在成功完成Mochi1本地服务的基础搭建后,如何继续处理工作流导入这一关键后续步骤。内容涵盖工作流文件准备、导入操作的具体流程、常见问题的排查与解决,以及导入后的配置优化与测试验证,旨在帮助用户将预设的自动化流程顺利集成到本地环境中,确保工具发挥完整效能。

InvokeAI Linux用户安装配置与节点处理指南
AI教程 · 2026-06-09

InvokeAI Linux用户安装配置与节点处理指南

本文详细介绍了在Linux系统上安装和配置InvokeAI的完整流程。内容涵盖从环境准备、依赖安装到模型下载与加载的关键步骤,并重点解析了核心组件“处理节点”的安装与使用方法。指南旨在帮助用户顺利完成部署,并理解其工作流程,以便更好地利用这一AI图像生成工具进行创作。

Dify保姆级部署指南:服务安装与模型接入下载
AI教程 · 2026-06-09

Dify保姆级部署指南:服务安装与模型接入下载

本文详细介绍了开源AI应用开发平台Dify的部署流程。内容涵盖从服务器环境准备、Docker安装、Dify核心服务启动,到如何接入OpenAI、Azure等云端大模型API,以及如何配置Ollama等本地模型。最后,还提供了使用ModelScope社区下载特定模型文件并集成到本地环境中的具体操作方法,旨在帮助用户快速搭建属于自己的AI应用开发与测试平台。