什么是 Function Call、MCP、Skill 与 CLI

随着 AI 技术的快速发展,几个概念频繁出现在开发者的视野中:Function CallMCP (Model Context Protocol)SkillCLI。它们看似独立,实则相互关联。本文用图解的方式帮你理清这些概念。

# 1. Function Call — 让 AI 调用工具

Function Call(函数调用)是 AI 模型与外部世界交互的基础机制。当模型需要执行某个操作(如查询天气、搜索信息、控制设备)时,它通过 Function Call 来调用预先定义的函数。

# Function Call 的工作流程

  1. 用户输入:用户提出需要执行操作的问题
  2. 模型判断:AI 判断是否需要调用函数,生成调用指令
  3. 函数执行:外部系统执行对应函数
  4. 结果返回:执行结果反馈给模型
  5. 自然语言输出:模型整合结果,生成最终回答

# 2. MCP — 标准化 AI 与工具的连接

MCP (Model Context Protocol) (opens new window) 是 Anthropic 提出的开放协议,旨在标准化 AI 模型与外部工具、数据源的连接方式。类比 Web 时代的 HTTP 协议,MCP 就是 AI 时代的"连接协议"。

# MCP 的核心优势

优势 说明
统一接口 不同工具使用相同的协议连接 AI
即插即用 工具开发者只需实现 MCP Server
安全隔离 AI 无法直接访问系统资源
可扩展 轻松添加新的工具和数据源

# MCP 架构组件

# 3. Skill — AI 的技能包

Skill(技能)是在 MCP 架构上封装的高级能力单元。它将多个 Function Call 组合成一个完整的业务能力,比如"预订机票"、"发送邮件"、"管理日程"。

# Skill vs Function Call

维度 Function Call Skill
粒度 单个函数 多个函数组合
复杂度 简单操作 复杂业务逻辑
复用性 基础单元 业务封装
示例 getWeather() BookFlight(from, to)

# 4. CLI — 命令行接口

CLI(Command Line Interface)是传统程序员与系统交互的方式。通过终端命令,可以执行脚本、调用工具、管理文件。

# AI 时代的 CLI

在 AI 时代,CLI 成为了连接 AI 与系统的桥梁:

# Claude Code 中的 CLI

Claude Code (opens new window) 是 Anthropic 官方推出的 CLI 工具,它将 MCP、Function Call、Skill 整合在一起:

# 5. 四者关系总结

# 数据流向

  1. 用户 → 自然语言 → AI 模型
  2. AI 模型 → Function Call → Skill
  3. Skill → MCP 协议 → MCP Server
  4. MCP Server → CLI / 系统工具 → 执行
  5. 结果 → 层层返回 → AI 模型用户

# 结语

Function Call、MCP、Skill、CLI 构成了 AI 与现实世界交互的基础设施。理解它们的关系,能帮助我们更好地利用 AI 工具,提升开发效率。

在未来,随着 MCP 协议的普及和 Skill 生态的完善,AI 将成为真正的"超级助手",而这些概念也会变得更加重要。