Appearance
5.8 MCP·选型决策:MCP vs Tool vs Skill vs 直接调 API
🕐 内容截至 2026-07
"让 AI 能干这件事"有好几种做法,很多人搞混。这一节给你一个清晰的决策框架:什么时候用 MCP、什么时候用应用内 Tool、什么时候用 Skill、什么时候直接写代码。
先分清这四个是什么
| 方式 | 一句话 | 谁在用这个 AI |
|---|---|---|
| 直接调 API/函数 | 你代码里写死的逻辑,AI 不参与决策 | —(不涉及 AI 决策) |
| 应用内 Tool(Function Calling) | 在你自己的应用里,让 AI 调用你定义的函数 | 你 App 里的 AI |
| MCP | 把能力做成标准协议服务,任何支持 MCP 的客户端都能用 | Claude Code、别的 AI 工具、你的 App |
| Skill | 教 AI "怎么做某件事" 的说明书(流程/规范/知识),不新增外部能力 | Claude Code 等支持 Skill 的客户端 |
💡 一句话抓住区别:
- Tool / MCP = 给 AI 新的能力(去查库、调接口、操作系统)
- Skill = 给 AI 新的知识/流程(该按什么步骤、什么规范做)
- MCP vs 应用内 Tool = 同样是"能力",区别在给谁用:只给自己 App 用 → 应用内 Tool;要跨客户端复用 → MCP
决策流程图
你要解决的是"AI 缺一种能力"还是"AI 不知道怎么做"?
├─ 不知道怎么做(缺流程/规范/领域知识)
│ → Skill(或写进 System Prompt / CLAUDE.md)
│
└─ 缺一种能力(要查数据、调接口、操作外部系统)
│
├─ 这能力只在"我自己的应用"里用,我全程掌控代码
│ → 应用内 Tool(Function Calling,见 1.4)
│
└─ 这能力要给 Claude Code / 多个 AI 客户端 / 团队 复用
→ MCP Server(见 5.6 / 5.7)
而如果根本不需要 AI 来决定要不要做(流程是确定的):
→ 直接在代码里调 API,别绕 AI(最简单可靠,见 4.8 补偿性代码)几个常见纠结,直接给答案
Q:我想让 Claude Code 能查我们公司数据库。 → MCP。因为客户端是 Claude Code(不是你自己写的 App),要让它获得"查库"这个外部能力,标准做法就是写个数据库 MCP Server(见 5.9)。
Q:我在自己做的客服 App 里,想让 AI 能查订单。 → 应用内 Tool。你掌控整个 App 和 AI 调用循环,直接用 Function Calling(1.4)最简单,没必要套 MCP 协议。
Q:我想让 Claude Code 每次都按我们团队的部署清单/代码规范来做。 → Skill(或 CLAUDE.md)。这是"怎么做"的知识,不是新能力,不需要 MCP。
Q:我有个固定流程:每晚导出数据→生成报表→发邮件。 → 直接写代码(脚本/定时任务)。流程是确定的,不需要 AI 临场决策,别为了用 AI 而用 AI。
Q:既要新能力、又要教它怎么用好这个能力? → MCP/Tool 提供能力 + Skill/Prompt 教方法,两者叠加。能力和知识是两件事。
一个判断口诀
确定的流程 → 写代码(最可靠)
AI 不知道怎么做 → Skill / Prompt(给知识)
自己 App 要能力 → 应用内 Tool(给能力)
跨客户端要能力 → MCP(给能力 + 可复用)⚠️ 最常见的过度设计:为一个只有自己 App 用的功能套 MCP。MCP 的价值在"跨客户端复用"和"接入 Claude Code 这类你不掌控的客户端"。只在自己应用里用,应用内 Tool 更轻。
🛠️ 实战练习:给三个需求选方案
判断下面各用什么(先想再看):
- 让 Claude Code 能查你们的 Jira 工单
- 你的 AI 写作 App 里要让 AI 能联网搜索
- 让 Claude Code 生成符合公司 OpenAPI 规范的接口代码
- 每周一自动汇总上周 PR 数量发到群里
参考答案
- MCP(客户端是 Claude Code,需要"查 Jira"这个外部能力,且可复用)
- 应用内 Tool(你自己的 App,掌控调用循环,Function Calling 即可)
- Skill(这是"怎么写"的规范知识,不是新能力)
- 直接写代码/定时任务(确定流程,无需 AI 决策)
📌 关键结论
- Tool/MCP 给"能力",Skill 给"知识/流程",先分清你缺的是哪种
- 同是能力:只在自己 App 用 → 应用内 Tool;跨客户端/接入 Claude Code → MCP
- 流程确定、不需要 AI 临场决策的,直接写代码最可靠,别硬套 AI
- 能力和知识常需叠加:MCP/Tool 提供能力 + Skill/Prompt 教它用好
- 别为只给自己用的功能过度套 MCP——MCP 的价值在跨客户端复用
下一节:5.9 MCP·案例集