Function Calling、MCP 和 Skills 的区别

发布时间:2026/10/3 12:14:34

Function Calling、MCP 和 Skills 的区别 结论先行Function Calling、MCP 和 Skills 都是在扩展 AI Agent 的能力但它们解决的问题层级不同能力 主要解决什么 本质 适合场景 Function Calling 让模型调用你定义的函数 API 级工具调用协议 应用内业务函数、结构化参数、确定性动作 MCP 让模型连接外部工具、系统和数据源 标准化工具/资源服务器协议 数据库、代码图谱、浏览器、GitHub、内部系统 Skills 让 Agent 学会一套稳定流程 指令、资源、脚本的工作流包 可复用任务流程、团队规范、领域操作手册一句话区分Function Calling 是“调用一个函数”MCP 是“连接一套外部能力”Skills 是“教会 Agent 怎么做一类事”。1. Function Calling 是什么Function Calling 是 OpenAI API 里的工具调用能力。开发者把函数名、参数 schema、说明交给模型模型根据用户意图决定是否调用函数并生成结构化参数。它不直接执行函数。模型只会产出类似{ name: create_order, arguments: { product_id: sku_123, quantity: 2 } }真正执行create_order的是你的应用代码。适合用 Function Calling 的情况你在写自己的应用后端。工具逻辑明确、参数明确、返回值明确。需要模型从自然语言中抽取结构化参数。工具数量不多且和当前应用强绑定。典型例子查询订单状态创建工单计算报价调用内部 REST API把用户输入转成数据库查询参数不适合的情况如果你要接入的是一整套外部系统例如 GitHub、浏览器、数据库、代码索引、知识库直接堆 function calling 会很快变重。这种情况更适合 MCP。官方参考OpenAI Function Calling2. MCP 是什么MCP全称 Model Context Protocol是一种让 Agent 连接外部工具和数据源的协议。它通常以 MCP Server 的形式存在向模型暴露 tools、resources、prompts 等能力。Function Calling 更像是“我这个应用里有几个函数可以叫”MCP 更像是“我启动了一个服务它提供一组标准化能力”。例如 CodeGraph MCP 可以提供搜索代码符号查看调用关系分析影响范围追踪调用路径读取代码结构索引这些能力如果全部用普通 function calling 手写也能做但会变成一堆高度耦合的工具定义和胶水代码。MCP 的价值是把这些能力封装成可复用的外部服务。适合用 MCP 的情况要接入外部系统或长期运行的工具服务。工具能力比较多不只是一个函数。多个 Agent 或多个项目都要复用。工具需要维护状态、索引、连接、认证。需要把私有数据源安全地暴露给 Agent。典型例子CodeGraphPlaywright / 浏览器控制GitHub / GitLab数据库Notion / Slack / Google Drive内部知识库公司自研平台MCP 和 Function Calling 的关系MCP 不是 Function Calling 的替代品而是更高一层的工具接入方式。在模型视角里MCP server 暴露出来的 tool 最终也可能表现为“可调用工具”。但在工程架构上MCP 把工具的发现、描述、调用、资源访问、服务生命周期都标准化了。官方参考OpenAI Tools / Remote MCP Servers3. Skills 是什么Skills 是给 Agent 的可复用能力包。一个 Skill 通常包含SKILL.md说明什么时候使用、怎么使用参考资料模板文件脚本示例领域约束Skills 的核心不是“提供一个外部工具”而是“规定一套工作方法”。例如一个resume-makerskill 可以告诉 Agent简历应该怎么排版中文简历用什么结构如何导出 HTML/PDF哪些字段必须保留哪些措辞要优化应该调用哪些脚本它更像一个可安装的专家手册。适合用 Skills 的情况有一类任务会反复出现。需要固定流程、标准、模板或领域知识。想减少每次重复提示。想把团队规范沉淀成 Agent 可执行的说明。任务不一定需要外部系统但需要“知道怎么做”。典型例子生成简历实现 Figma 设计稿排查 GitHub CI编写代码审查报告生成插件脚手架按团队规范写发布说明官方参考Codex Agent Skills、OpenAI Skills4. 三者的核心区别4.1 从“能力来源”看能力 能力来自哪里 Function Calling 你的应用代码 MCP 外部 MCP Server Skills Markdown 指令、资源、脚本和流程约束4.2 从“执行主体”看能力 谁执行 Function Calling 你的程序执行函数 MCP MCP server 执行工具 Skills Agent 按 skill 指令决定怎么做必要时调用工具或脚本4.3 从“抽象层级”看从低到高大致是Function Calling ↓ MCP ↓ Skills但这不是谁替代谁而是关注点不同Function Calling 偏 API 调用。MCP 偏工具连接。Skills 偏工作流和方法论。5. 什么时候该用哪个5.1 用 Function Calling当你要做的是“模型判断该不该调用一个业务函数并生成参数。”例如用户帮我查一下订单 12345 到哪了 模型调用 get_order_status(order_id12345) 你的后端执行查询并返回结果这类场景不需要 MCP也不需要 Skill。5.2 用 MCP当你要做的是“让 Agent 接入一个外部工具系统。”例如用户分析这个项目里 publishVideo 到平台 adapter 的调用链 Agent调用 CodeGraph MCP CodeGraph返回符号、调用关系和文件位置这种能力不是一个简单函数而是一套代码理解服务所以适合 MCP。5.3 用 Skills当你要做的是“让 Agent 每次都按同一套专业流程完成某类任务。”例如用户帮我做一个中文简历 PDF Agent触发 resume-maker skill Skill规定结构、模板、措辞、导出方式和校验步骤这里重点不是外部工具而是任务流程和标准。6. 三者可以组合使用实际工程里三者经常组合。例如“实现一个平台自动发布功能”Skill 定义平台适配流程、代码规范、验收标准 MCP 用 CodeGraph 查项目结构 用 Playwright 控制浏览器 用 GitHub 查 PR/CI Function Calling 在你自己的应用服务里暴露 publish_video、get_accounts、get_history 等业务函数这就是官方文档里提到的方向Skills 定义可重复工作流MCP 连接外部工具和系统。官方参考Codex Customization - Skills MCP7. 常见误区7.1 “MCP 等于 Function Calling”不准确。MCP 暴露的工具可能被模型像工具一样调用但 MCP 本身是一种外部工具/资源协议Function Calling 是 API 层让模型生成函数调用参数的机制。7.2 “Skills 能替代 MCP”不能完全替代。Skill 可以告诉 Agent 怎么查数据库但它本身不等于数据库连接。真正访问数据库仍然需要 MCP、命令行脚本、API 或其他工具。7.3 “MCP 能替代 Skills”也不能完全替代。MCP 提供工具但不一定告诉 Agent 什么时候用、按什么标准用、结果怎么验收。Skills 可以把这些流程固化下来。7.4 “Function Calling 最简单所以都用它”短期简单长期可能变成一堆难维护的工具 schema。如果能力是单个业务动作用 Function Calling 合理。如果能力是一套系统MCP 更合适。如果能力是一套工作方法Skill 更合适。8. 选择建议可以按这个判断问题 1只是调用我应用里的一个确定函数吗 是 - Function Calling 否 - 继续 问题 2需要接入外部系统、服务、数据源或工具集吗 是 - MCP 否 - 继续 问题 3需要沉淀一套可复用流程、规范、模板或领域知识吗 是 - Skills 否 - 普通提示词或项目文档即可更具体一点需求 推荐 用户说一句话转成结构化参数 Function Calling 调用后端业务函数 Function Calling 接入代码索引、浏览器、数据库 MCP 接入公司内部系统 MCP 固化代码审查流程 Skills 固化 UI 实现规范 Skills 固化简历生成流程 Skills 让 Skill 使用 CodeGraph 查代码 Skills MCP 让应用里的 Agent 调用订单系统 Function Calling 或 MCP取决于复杂度9. 最后总结Function Calling、MCP、Skills 的区别可以压缩成三句话Function Calling让模型调用你定义的函数适合应用内确定性动作。MCP让模型连接外部工具和数据源适合系统级能力接入。Skills让 Agent 学会一套可复用流程适合沉淀规范、模板和领域经验。工程上不要纠结谁更高级。正确做法是按边界选业务函数用 Function Calling。外部能力用 MCP。可复用流程用 Skills。复杂任务把三者组合起来。
延伸阅读

更多相关文章

2026/10/3 0:18:49

51-多通道输入

一、先通俗理解卷积卷积本质就是:用一个小的过滤器(卷积核),在图片 / 特征图上滑动,不断做加权求和,提取局部特征的操作。比如一张 RGB 彩色图片:[批量数, 3通道, 高H, 宽W] 卷积层的作用&#…

2026/10/2 15:48:42

从GTC外汇信息路径来看,靠谱吗?

不少用户看GTC外汇时,更在意它是否把基础路径做得清楚,而不是单看表面热度。从信息路径角度观察,平台把复杂事项拆解得更容易理解,用户自然更容易形成稳定印象。这些细节拼在一起,才构成GTC外汇比较自然、也比较稳健的…

2026/10/3 3:05:50

从零代码到工程化:Dify实战指南,填平AI应用落地鸿沟

上周,一个刚转行做产品经理的朋友深夜发来消息,语气里满是困惑:“我看了好多AI应用搭建的教程,都说现在不用写代码也能做。我跟着步骤一步步来,界面是搭出来了,可一到处理真实业务数据就卡住,要…

2026/10/3 12:40:30

日本人的垃圾分类

日本的垃圾分类极为细致,且没有全国统一标准,各都道府县、市町村的规定均有所不同。但总体而言,日本的垃圾基本分为五大类:可燃垃圾、不可燃垃圾、资源垃圾、粗大垃圾和有害垃圾。以下为通用的分类标准及处理要求:1. 可…

2026/10/3 12:40:30

205.方案

陈远在铭丰待了整整三天。第一天,他花了大半天时间在现场收集数据——浇注温度、浇注时间、铁水成分、砂型硬度、涂料配比、烘干参数,每一项数据都记录得详详细细。他又让李铭远找来了过去三个月所有的废品记录和质检报告,逐份翻阅&#xff0…

2026/10/3 12:40:30

2027 校招|数学、统计类同学求职策略产品助理的知识补齐路线

一、核心总判:数学类专业求职策略产品助理的优劣势定论 结合2026年拼多多、Shopee、多益网络官方校招JD,以及牛客网、应届生求职网公开面经来看:数学与应用数学、统计学、大数据、金融科技等数理类专业,具备策略产品助理核心刚需的…

2026/10/3 12:40:30

锐制MOM制造运营系统:从方案到落地的深度解读与避坑指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/3 12:35:30

代理模式详解:控制对象访问的利器(静态代理 + JDK 动态代理)

一、代理模式定义 Proxy 模式是一种结构型模式。它为目标对象提供一个代理对象,由代理对象控制对目标对象的访问。代理与目标实现相同的接口,客户端只与代理打交道;代理在调用目标前后可执行额外操作,而不是单纯把请求转发出去。一…

2026/10/2 8:16:46

东莞市品牌网站建设报价常见报错与解决

东莞品牌网站建设报价单背后:一份保姆级建站教程避坑实录 网站做好了没人访问,这大概是很多老板最头疼的事。花了大几万做的品牌站,上线后流量惨淡,比路边摊还冷清。别急着骂外包公司,很多“东莞品牌网站建设报价”里藏着不少猫腻,比如用模板站冒充定制…

2026/10/2 18:20:53

如何划分训练/验证集:Spirula Studio五种eval_mode策略详解

如何划分训练/验证集:Spirula Studio五种eval_mode策略详解 【免费下载链接】spirula-studio Cross-vendor 3D Gaussian Splatting trainer - video to splat to mesh, Vulkan or CUDA. 项目地址: https://gitcode.com/GitHub_Trending/sp/spirula-studio Sp…

2026/10/1 10:48:55

SEO怎么推广速查手册新手避坑实战指南

SEO怎么推广速查手册新手避坑实战指南 模板网站太丑不够用?别急着加滤镜,那是治标不治本。很多老板盯着后台流量掉得眼红,却还在纠结首页Banner的圆角是不是3像素。这就像穿着西装去挖土,姿势不对,努力白费。我整理这份 速查手册…

2026/10/3 0:04:31

国内大学生必备的AI写作辅助软件是哪款?

国内高校学生在论文写作过程中,越来越依赖AI辅助工具提升效率,主流方案以本土化全流程工具为核心,结合通用大模型与专业插件,覆盖选题构思、框架搭建、初稿撰写、查重降重、格式调整等关键环节,本文将深入解析当前主流…

2026/10/3 0:04:31

Codex接入Jev模型完整指南:配置方法、本地部署与踩坑排查

最近不少人在讨论 Codex 搭配 Jev 这套玩法,我一开始没太当回事,直到自己把 Jev 接进 Codex跑了几轮编码任务之后,才明白那些说“直接起飞”的人是怎么想的。Codex 作为工具本身已经够能打了,但模型固定、上下文策略固定&#xff…

2026/10/3 0:04:31

GitHub 热门: NVIDIA/Model-Optimizer

👋 Hi,我擅长 AI 大模型应用落地、意识解码与 AI 开发工具链 。 💡 创业路上,用技术换时间,一起把 AI 变成生产力 🚀 >GitHub 热门: NVIDIA/Model-Optimizer 凌晨两点,你刚把跑通了的 Qwen3.…

还想了解更多?直接咨询顾问

免费诊断 + 免费方案 + 透明报价。

全国咨询热线400-8866-253
免费获取方案
☎咨询二维码 ☎ ↑