type
Post
status
Published
date
Jan 29, 2026
slug
ai-01
summary
tags
AI
category
学习笔记
icon
password
MCP 和 Skills 不是竞争关系,而是解决不同问题的工具。如果把 AI Agent 比作操作系统,MCP 就是 USB 协议(标准化连接外部系统的方式),Skills 就是应用程序(封装专业知识和工作流程的操作手册)。
一句话总结:Skills 描述工作流程,MCP 提供执行引擎。但很多时候,操作系统自带的引擎就够用了。
主要内容要点
- 问题背景:2024 年之前,不同 AI 应用连接不同工具需要定制化集成,10 个 AI 应用连 20 个工具理论上需要 200 个集成
- MCP 的作用:定义标准协议,让任何 AI 都能即插即用地连接任何工具,将 M×N 问题变成 M+N 问题
- 发布时间:2024 年 11 月由 Anthropic 开源
- 分发方式:面向外部用户,通过 URL 接入
- 问题本质:每个 MCP Server 连接时必须一次性加载所有工具定义到上下文
- 真实数据:
- GitHub MCP Server:27 个工具,消耗约 18,000 tokens
- Playwright MCP Server:21 个工具,消耗约 13,600 tokens
- 有开发者配置 7 个 MCP Server,未开始对话就消耗 67,000 tokens(占上下文窗口 33%)
- 后果:上下文被挤占后,AI 选错工具、传错参数的概率显著上升;连接 2-3 个以上 MCP Server,准确性就会明显下降
- 发布时间:2025 年 1 月
- 工作原理:MCP 工具不再预加载,而是按需发现和加载
- 触发条件:当工具定义超过上下文 10% 时自动启用
- 效果:将上下文消耗从 77,000 tokens 降到 8,700 tokens,减少 85%
- 局限性:只是补丁,未解决 MCP 设计的根本问题
设计哲学:渐进式披露(Progressive Disclosure)
三层加载机制:
- 第一层(元数据):启动时加载,只有名称和简短描述,每个 Skill 约 100 tokens
- 第二层(完整指令):相关时加载,建议控制在 5,000 tokens 以内
- 第三层(参考资料):需要时按需加载,理论上可包含无限内容
比喻:像招聘新员工时不是一次性给所有文档,而是先给岗位说明,遇到问题时再告诉去翻哪本手册
典型结构:
核心优势:
- 脚本代码本身不加载到上下文,只有执行结果返回
- 通过 Agent 内置的 bash 工具执行,不需要 MCP
- 支持 Python、Bash、JavaScript 等多种语言
- 脚本执行 = 零上下文成本 + 确定性结果
应用场景:文件读写、数据处理、格式转换、本地 API 调用等
维度 | MCP | Skills |
类比 | USB 协议 | 应用程序 |
核心能力 | 连接外部系统 | 编码专业知识 |
工具来源 | 外部 MCP Server | 内置工具 + 自带脚本 |
上下文消耗 | 预加载,成本高 | 渐进式披露,按需加载 |
网络访问 | ✅ 支持 | ❌ 仅本地执行 |
分发方式 | URL 接入,面向外部用户 | 文件复制,面向内部团队 |
适用场景 | 远程 API、实时数据、对外服务 | 本地流程、专业方法论、内部工具 |
方案一:Playwright MCP
- 流程:Markdown → Python 解析 → Playwright MCP 操作浏览器 → 填充编辑器 → 保存草稿
- 问题:
- Playwright MCP 有 22 个工具,工具定义占用 8,000-10,000 tokens
- 每次浏览器交互返回页面快照(数千 tokens)
- 发布一篇文章可能消耗 50,000+ tokens
方案二:Skills + CDP 脚本
- 改进:使用 TypeScript 脚本直接调用 Chrome DevTools Protocol
- 脚本自己完成所有操作:解析 Markdown、打开页面、填充内容、上传图片、保存草稿
- AI 只需调用脚本并传入文件路径
- 上下文消耗:仅几百 tokens
关键洞察:MCP 让 AI 一步步操作(每步都要理解、决策、执行),而脚本把整个流程封装(AI 只需"开始"和"结束")
补充细节
随着 Skills 普及,MCP 需求会大幅减少
真正需要 MCP 的场景:
- 连接远程 CRM 系统获取客户数据
- 调用第三方 SaaS API(Slack、Notion、Jira)
- 查询云端数据库
- 访问需要认证的外部服务
- 做服务让外部用户都能用
不需要 MCP 的场景(Skills 可完成):
- 读写本地文件
- 处理 PDF/Word/Excel
- 运行代码分析
- 执行 Git 操作
- 生成图表和可视化
- 优化自己或团队的工作流
未来格局:
- 少数通用 MCP Server 处理远程连接
- 大量 Skills 编码专业知识和本地工作流
- Skills 承担绝大部分"教 AI 怎么做事"的工作
- 谁来用?
- 自己/团队内部 → Skills
- 外部用户/客户 → MCP
- 怎么分发?
- 接受"文件放到目录"的安装方式 → Skills
- 希望用户输入 URL 就能用 → MCP
- 要解决什么问题?
- 编码领域知识、定义工作流程 → Skills
- 连接外部服务、对外暴露 API → MCP
- 两者配合使用:用 Skills 编码领域知识,用 MCP 连接外部服务
- 优先学习 Skills:更轻量、更高效、更容易上手,能解决日常大部分问题
- 开发建议:优先用 Skills 封装工作流程,复杂逻辑用脚本而非让 AI 一步步操作,只在必须连接远程系统时才用 MCP
- Anthropic 工程博客案例:用"代码执行 + MCP"把 150,000 token 的工作流压缩到 2,000 tokens
- Skills 类比:像 Slack 的斜杠指令(slash commands),内部工具,按需使用
- 一个工具定义大概 500-800 tokens