1. MCP(Model Context Protocol)
定义:MCP 是由 Anthropic 提出的一种标准化协议,用于让 LLM 安全、结构化地与外部工具或服务进行交互。
目的:提供一种通用接口,使模型能够请求执行外部操作(如查询数据库、调用 API、读取文件等),同时保持上下文一致性和安全性。
特点:
基于 JSON-RPC 或类似协议。
支持双向通信:模型发起请求,工具返回结果。
强调权限控制和上下文隔离,防止模型滥用工具。
旨在成为跨平台、跨模型的通用标准(类似 LSP 之于代码编辑器)。
示例场景:
模型通过 MCP 请求“获取用户最近的订单”,MCP 路由到电商后端服务并返回结构化数据。
✅ 本质:一种通信协议标准,用于模型与工具之间的安全交互。
2. 斜杠命令(Slash Commands)
定义:用户在聊天界面中输入以
/开头的命令(如/weather Beijing),触发特定功能。目的:提供一种用户驱动的快捷方式,直接调用预定义功能。
特点:
由用户主动触发,不是模型自主决定。
通常在前端解析,直接调用后端 API 或插件。
常见于 Slack、Discord、Notion 等协作工具。
在 LLM 应用中,可能作为“快捷技能入口”。
与模型关系:
模型可能不参与执行逻辑,仅作为 UI 层的一部分。
有些系统会将斜杠命令的结果注入对话,供模型参考。
✅ 本质:一种用户界面交互约定,用于快速触发功能。
3. 工具调用(Tool Calling)
定义:LLM 在生成响应过程中,自主决定调用外部工具(如计算器、搜索引擎、API)来获取信息或执行操作。
目的:增强模型能力,使其能处理实时数据、复杂计算或私有系统访问。
特点:
由模型推理驱动(基于 prompt 和上下文判断是否需要调用)。
需要模型支持结构化输出(如 OpenAI 的
function_calling、Anthropic 的tool_use)。工具通常以 JSON Schema 形式定义(名称、参数、描述)。
执行结果会返回给模型,用于生成最终回答。
示例:
用户问:“今天北京天气如何?” → 模型生成
{"name": "get_weather", "arguments": {"city": "Beijing"}}→ 系统调用天气 API → 返回结果 → 模型生成自然语言回答。
✅ 本质:一种模型驱动的扩展机制,属于推理过程的一部分。
4. Skills(技能)
定义:在智能体(Agent)或插件系统中,将特定功能封装为可复用的“技能”模块。
目的:模块化地扩展 AI 系统的能力,便于组合和管理。
特点:
通常包含:功能描述、输入/输出规范、执行逻辑。
可被工具调用机制使用(即 Skill 是 Tool 的一种实现形式)。
在微软 Semantic Kernel、LangChain、AutoGen 等框架中常见。
可能包含多步逻辑(如“订机票”技能 = 查询航班 + 选择 + 支付)。
与工具调用关系:
Skill 是功能实现,Tool Calling 是调用机制。
一个 Skill 通常对应一个可被调用的 Tool。
✅ 本质:一种功能模块的抽象,强调可复用性和封装性。
对比总结表
简单类比
斜杠命令 ≈ 你在微信里输入
/翻译 hello,直接出结果(你主动触发)。工具调用 ≈ 你问“hello 怎么翻译?”,AI 自己决定调用翻译工具。
Skills ≈ 翻译这个功能被打包成一个“翻译技能”模块。
MCP ≈ 所有这些工具调用都通过一个统一、安全的“快递协议”来传递请求和结果。
希望这个解释能帮你清晰区分这些概念!如果你有具体应用场景(如开发 Agent 或集成插件),可以进一步探讨如何选择合适的技术方案。
评论区