掌握MCP与Skill:大模型小白/程序员的收藏必备学习指南
掌握MCP与Skill大模型小白/程序员的收藏必备学习指南本文深入解析AI Agent中MCP与Skill的核心区别MCP作为连接层解决AI能访问什么外部数据/工具Skill作为知识层解决AI知道怎么做什么方法论/指令。文章从设计哲学、技术架构、使用场景对比两者比喻MCP为AI的手连接外部Skill为技能书传授方法论强调其互补性。同时提供选择指南MCP适用于数据访问/操作Skill适用于流程化任务/规范并结合实际场景说明如何组合使用。用 AI Agent 工具Claude Code、Cursor、Windsurf 等的时候经常会遇到两个概念MCPModel Context ProtocolSkillAgent Skill它们看起来都是扩展 AI 能力的方式但具体有什么区别为什么需要两套机制什么时候该用哪个这篇文章会从设计哲学、技术架构、使用场景三个维度把这两个概念彻底讲清楚。一句话区分先给个简单的定位❝「MCP 解决连接问题让 AI 能访问外部世界」「Skill 解决方法论问题教 AI 怎么做某类任务」❞用 Anthropic 官方的说法❝“MCP connects Claude to external services and data sources. Skills provide procedural knowledge—instructions for how to complete specific tasks or workflows.”❞打个比方MCP 是 AI 的手能触碰外部世界Skill 是 AI 的技能书知道怎么做某件事。你需要两者配合MCP 让 AI 能连接数据库Skill 教 AI 怎么分析查询结果。MCPAI 应用的 USB-C 接口MCP 是什么MCPModel Context Protocol是 Anthropic 在 2024 年 11 月发布的「开源协议」用于标准化 AI 应用与外部系统的交互方式。官方的比喻是AI 应用的 USB-C 接口——就像 USB-C 提供了一种通用的方式连接各种设备MCP 提供了一种通用的方式连接各种工具和数据源。「关键点MCP 不是 Claude 专属的。」它是一个开放协议理论上任何 AI 应用都可以实现。截至 2025 年初已经被多个平台采用「Anthropic」: Claude Desktop、Claude Code「OpenAI」: ChatGPT、Agents SDK、Responses API「Google」: Gemini SDK「Microsoft」: Azure AI Services「开发工具」: Zed、Replit、Codeium、Sourcegraph到 2025 年 2 月已经有超过 1000 个开源 MCP 连接器。MCP 的架构MCP 基于 「JSON-RPC 2.0」 协议采用「客户端-主机-服务器」Client-Host-Server架构┌─────────────────────────────────────────────────────────┐ │ Host │ │ (Claude Desktop / Cursor) │ │ │ │ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │ │ │ Client │ │ Client │ │ Client │ │ │ │ (GitHub) │ │ (Postgres) │ │ (Sentry) │ │ │ └──────┬──────┘ └──────┬──────┘ └──────┬──────┘ │ └─────────┼────────────────┼────────────────┼─────────────┘ │ │ │ ▼ ▼ ▼ ┌───────────┐ ┌───────────┐ ┌───────────┐ │MCP Server │ │MCP Server │ │MCP Server │ │ (GitHub) │ │(Postgres) │ │ (Sentry) │ └───────────┘ └───────────┘ └───────────┘「Host」用户直接交互的应用Claude Desktop、Cursor、Windsurf「Client」Host 应用中管理与特定 Server 通信的组件「Server」连接外部系统的桥梁数据库、API、本地文件等MCP 的三个核心原语MCP 定义了三种 Server 可以暴露的原语1. Tools工具—— 模型控制可执行的函数AI 可以调用来执行操作。{ name: query_database, description: Execute SQL query on the database, parameters: { type: object, properties: { sql: { type: string } } } }AI 决定什么时候调用这些工具。比如用户问这个月的收入是多少AI 判断需要查数据库就会调用query_database工具。2. Resources资源—— 应用控制数据源为 AI 提供上下文信息。{ uri: file:///Users/project/README.md, name: Project README, mimeType: text/markdown }资源由应用控制何时加载。用户可以通过引用资源类似于引用文件。3. Prompts提示—— 用户控制预定义的提示模板帮助结构化与 AI 的交互。{ name: code_review, description: Review code for bugs and security issues, arguments: [ { name: code, required: true } ] }用户显式触发这些提示类似于 Slash Command。MCP 与 Function Calling 的关系很多人会问MCP 和 OpenAI 的 Function Calling、Anthropic 的 Tool Use 有什么区别「Function Calling」 是 LLM 的能力——把自然语言转换成结构化的函数调用请求。LLM 本身「不执行」函数只是告诉你应该调用什么函数参数是什么。「MCP」 是在 Function Calling 之上的「协议层」——它标准化了函数在哪里、怎么调用、怎么发现。两者的关系用户输入 → LLM (Function Calling) → 需要调用 query_database ↓ MCP Protocol ↓ MCP Server 执行 ↓ 返回结果给 LLM「Function Calling 解决决定做什么MCP 解决怎么做到。」MCP 的传输方式MCP 支持两种主要的传输方式传输方式适用场景说明「Stdio」本地进程Server 在本地机器运行适合需要系统级访问的工具「HTTP/SSE」远程服务Server 在远程运行适合云服务GitHub、Sentry、Notion大部分云服务用 HTTP本地脚本和自定义工具用 Stdio。MCP 的代价MCP 不是免费的午餐它有明显的成本「1. Token 消耗大」每个 MCP Server 都会占用上下文空间。每次对话开始MCP Client 需要告诉 LLM “你有这些工具可用”这些工具定义会消耗大量 Token。连接多个 MCP Server 后光是工具定义可能就占用了上下文窗口的很大一部分。社区观察到❝“We’re seeing a lot of MCP developers even at enterprise build MCP servers that expose way too much, consuming the entire context window and leading to hallucination.”❞「2. 需要维护连接」MCP Server 是持久连接的外部进程。Server 挂了、网络断了、认证过期了都会影响 AI 的能力。「3. 安全风险」Anthropic 官方警告❝“Use third party MCP servers at your own risk - Anthropic has not verified the correctness or security of all these servers.”❞特别是能获取外部内容的 MCP Server比如网页抓取可能带来 prompt injection 风险。MCP 的价值尽管有这些代价MCP 的价值在于「标准化和可复用性」「一次实现到处使用」同一个 GitHub MCP Server 可以在 Claude Desktop、Cursor、Windsurf 中使用「动态发现」AI 可以在运行时发现有哪些工具可用而不是写死在代码里「供应商无关」不依赖特定的 LLM 提供商Skill上下文工程的渐进式公开Skill 是什么Skill全称 Agent Skill是 Anthropic 在 2025 年 10 月发布的特性。官方定义❝“Skills are organized folders of instructions, scripts, and resources that agents can discover and load dynamically to perform better at specific tasks.”❞翻译一下Skill 是一个文件夹里面放着指令、脚本和资源AI 会根据需要自动发现和加载。「Skill 在架构层级上和 MCP 不同。」用 Anthropic 的话说❝“Skills are at the prompt/knowledge layer, whereas MCP is at the integration layer.”❞Skill 是提示/知识层MCP 是集成层。两者解决不同层面的问题。Skill 的核心设计渐进式信息公开Skill 最精妙的设计是「渐进式信息公开」Progressive Disclosure。这是 Anthropic 在上下文工程Context Engineering领域的重要实践。官方的比喻❝“Like a well-organized manual that starts with a table of contents, then specific chapters, and finally a detailed appendix.”❞就像一本组织良好的手册先看目录再翻到相关章节最后查阅附录。Skill 分三层加载「这个设计的好处是什么」传统方式比如 MCP在会话开始时就把所有信息加载到上下文。如果你有 10 个 MCP Server每个暴露 5 个工具那就是 50 个工具定义——可能消耗数千甚至上万 Token。Skill 的渐进式加载让你可以有几十个 Skill但同时只加载一两个。「上下文效率大幅提升。」用官方的话说❝“This means that the amount of context that can be bundled into a skill is effectively unbounded.”❞理论上单个 Skill 可以包含无限量的知识——因为只有需要的部分才会被加载。上下文工程Skill 背后的思想Skill 是 Anthropic “上下文工程”Context Engineering理念的产物。官方对此有专门的阐述❝“At Anthropic, we view context engineering as the natural progression of prompt engineering. Prompt engineering refers to methods for writing and organizing LLM instructions for optimal outcomes. Context engineering refers to the set of strategies for curating and maintaining the optimal set of tokens (information) during LLM inference.”❞简单说「Prompt Engineering」怎么写好提示词「Context Engineering」怎么管理上下文窗口里的信息LLM 的上下文窗口是有限的即使是 200k 窗口也会被大量信息撑爆。Context Engineering 的核心问题是「在有限的窗口里放什么信息能让 AI 表现最好」Skill 的渐进式加载就是 Context Engineering 的具体实践——只加载当前任务需要的信息让每一个 Token 都发挥最大价值。Skill 的触发机制Skill 是「自动触发」的这是它和 Slash Command 的关键区别。工作流程「扫描阶段」Claude 读取所有 Skill 的元数据名称 描述「匹配阶段」将用户请求与 Skill 描述进行语义匹配「加载阶段」如果匹配成功加载完整的 SKILL.md「执行阶段」按照 Skill 里的指令执行任务按需加载支持文件用户不需要显式调用。比如你有一个code-reviewSkill用户说帮我 review 这段代码Claude 会自动匹配并加载。「Skill 的本质是什么」技术上Skill 是一个「元工具」Meta-tool❝“The Skill tool is a meta-tool that manages all skills. Traditional tools like Read, Bash, or Write execute discrete actions and return immediate results. Skills operate differently—rather than performing actions directly, they inject specialized instructions into the conversation history and dynamically modify Claude’s execution environment.”❞Skill 不是执行具体动作而是「注入指令」到对话历史中动态修改 Claude 的执行环境。Skill 的文件结构一个标准的 Skill 长这样my-skill/ ├── SKILL.md # 必需元数据 主要指令 ├── reference.md # 可选详细参考文档 ├── examples.md # 可选使用示例 ├── scripts/ │ └── helper.py # 可选可执行脚本 └── templates/ └── template.txt # 可选模板文件SKILL.md是核心必须包含 YAML 格式的元数据--- name: code-review description: Review code for bugs, security issues, and style violations. Use when asked to review code, check for bugs, or audit PRs. --- # Code Review Skill ## Instructions When reviewing code, follow these steps: 1. **First check for security vulnerabilities...** 2. **Then check for performance issues...** 3. **Finally check for code style...**「关键字段」nameSkill 的唯一标识小写字母 数字 连字符最多 64 字符description描述做什么、什么时候用最多 1024 字符description的质量直接决定 Skill 能不能被正确触发。Skill 的安全考虑Skill 有一个潜在的安全问题「Prompt Injection」。研究人员发现❝“Although Agent Skills can be a very useful tool, they are fundamentally insecure since they enable trivially simple prompt injections. Researchers demonstrated how to hide malicious instructions in long Agent Skill files and referenced scripts to exfiltrate sensitive data.”❞因为 Skill 本质上是注入指令恶意的 Skill 可以在长文件中隐藏恶意指令窃取敏感数据。「应对措施」「只使用可信来源的 Skill」「审查 Skill 中的脚本」「使用allowed-tools限制 Skill 的能力范围」--- name: safe-file-reader description: Read and analyze files without making changes allowed-tools: Read, Grep, Glob # 只允许读操作 ---Skill 的平台支持Agent Skills 目前支持Claude.aiPro、Max、Team、EnterpriseClaude CodeClaude Agent SDKClaude Developer Platform需要注意的是「Skill 目前是 Anthropic 生态专属」的不像 MCP 是跨平台的开放协议。MCP vs Skill架构层级对比现在我们可以从架构层级来理解两者的区别┌─────────────────────────────────────────────────────────┐ │ 用户请求 │ └────────────────────────┬────────────────────────────────┘ ▼ ┌─────────────────────────────────────────────────────────┐ │ 提示/知识层 (Skill) │ │ │ │ Skill 注入专业知识和工作流程 │ │ 怎么做某类任务 │ └────────────────────────┬────────────────────────────────┘ ▼ ┌─────────────────────────────────────────────────────────┐ │ LLM 推理层 │ │ │ │ Claude / GPT / Gemini 等 │ │ 理解请求决定需要什么工具 │ └────────────────────────┬────────────────────────────────┘ ▼ ┌─────────────────────────────────────────────────────────┐ │ 集成层 (MCP) │ │ │ │ MCP 连接外部系统 │ │ 能访问什么工具和数据 │ └────────────────────────┬────────────────────────────────┘ ▼ ┌─────────────────────────────────────────────────────────┐ │ 外部世界 │ │ │ │ 数据库、API、文件系统、第三方服务 │ └─────────────────────────────────────────────────────────┘「Skill 在上层知识层MCP 在下层集成层。」两者不是替代关系而是互补关系。你可以用 MCP 连接 GitHub用 Skill 教 AI 如何按照团队规范做 Code Review详细对比表维度MCPSkill「核心作用」连接外部系统编码专业知识和方法论「架构层级」集成层提示/知识层「协议基础」JSON-RPC 2.0文件系统 Markdown「跨平台」是开放协议多平台支持否目前 Anthropic 生态专属「触发方式」持久连接随时可用基于描述的语义匹配自动触发「Token 消耗」高工具定义持久占用上下文低渐进式加载「外部访问」可以直接访问外部系统不能直接访问需要配合 MCP 或内置工具「复杂度」高需要理解协议、运行 Server低写 Markdown 就行「可复用性」高标准化协议跨应用复用中文件夹可以 Git 共享「动态发现」是运行时发现可用工具是运行时发现可用 Skill「安全考虑」外部内容带来 prompt injection 风险Skill 文件本身可能包含恶意指令什么时候用 MCP什么时候用 Skill用 MCP 的场景「需要访问外部数据」数据库查询、API 调用、文件系统访问「需要操作外部系统」创建 GitHub Issue、发送 Slack 消息、执行 SQL「需要实时信息」监控系统状态、查看日志、搜索引擎结果「需要跨平台复用」同一个工具在 Claude Desktop、Cursor、其他支持 MCP 的应用中使用用 Skill 的场景「重复性的工作流程」代码审查、文档生成、数据分析「公司内部规范」代码风格、提交规范、文档格式「需要多步骤的复杂任务」需要详细指导的专业任务「团队共享的最佳实践」标准化的操作流程「Token 敏感场景」需要大量知识但不想一直占用上下文结合使用很多时候两者是配合使用的用户Review PR #456 并按照团队规范给出建议 1. **MCP (GitHub) 获取 PR 信息** ↓ 2. **Skill (团队代码审查规范) 提供审查方法论** ↓ 3. **Claude 按照 Skill 的指令分析代码** ↓ 4. **MCP (GitHub) 提交评论**「MCP 负责能访问什么Skill 负责怎么做。」写好 Skill 的关键Skill 能不能被正确触发90% 取决于description写得好不好。差的 descriptiondescription: Helps with data太宽泛Claude 不知道什么时候该用。好的 descriptiondescription: Analyze Excel spreadsheets, generate pivot tables, and create charts. Use when working with Excel files (.xlsx), spreadsheets, or tabular data analysis. Triggers on: analyze spreadsheet, create pivot table, Excel chart好的 description 应该包含「做什么」具体的能力描述「什么时候用」明确的触发场景「触发词」用户可能说的关键词最佳实践官方建议「保持专注」一个 Skill 做一件事避免宽泛的跨域 Skill「SKILL.md 控制在 500 行以内」太长的话拆分到支持文件「测试触发行为」确认相关请求能触发不相关请求不会误触发「版本控制」记录 Skill 的变更历史关于 Slash Command文章标题是 MCP vs Skill但很多人也会问到 Slash Command简单说一下。「Slash Command」 是最简单的扩展方式——本质上是存储的提示词用户输入/命令名时注入到对话中。「Skill vs Slash Command 的关键区别是触发方式」Slash CommandSkill触发方式用户显式输入/命令Claude 自动匹配用户控制完全控制何时触发无法控制Claude 决定问自己一个问题「用户是否需要显式控制触发时机」需要 → Slash Command不需要希望 AI 自动判断 → Skill总结MCP 和 Skill 是 AI Agent 扩展的两种不同哲学MCPSkill「哲学」连接主义知识打包「问的问题」“AI 能访问什么”“AI 知道怎么做什么”「层级」集成层知识层「Token 策略」预加载所有能力按需加载知识记住这句话❝「MCP connects AI to data; Skills teach AI what to do with that data.」❞MCP 让 AI 能碰到数据Skill 教 AI 怎么处理数据。它们不是替代关系而是互补关系。一个成熟的 AI Agent 系统两者都需要。## 最后近期科技圈传来重磅消息行业巨头英特尔宣布大规模裁员2万人传统技术岗位持续萎缩的同时另一番景象却在AI领域上演——AI相关技术岗正开启“疯狂扩招”模式据行业招聘数据显示具备3-5年大模型相关经验的开发者在大厂就能拿到50K×20薪的高薪待遇薪资差距肉眼可见业内资深HR预判不出1年“具备AI项目实战经验”将正式成为技术岗投递的硬性门槛。在行业迭代加速的当下“温水煮青蛙”式的等待只会让自己逐渐被淘汰与其被动应对不如主动出击抢先掌握AI大模型核心原理落地应用技术项目实操经验借行业风口实现职业翻盘深知技术人入门大模型时容易走弯路我特意整理了一套全网最全最细的大模型零基础学习礼包涵盖入门思维导图、经典书籍手册、从入门到进阶的实战视频、可直接运行的项目源码等核心内容。这份资料无需付费免费分享给所有想入局AI大模型的朋友扫码免费领取全部内容部分资料展示1、 AI大模型学习路线图2、 全套AI大模型应用开发视频教程从入门到进阶这里都有跟着老师学习事半功倍。3、 大模型学习书籍文档4、AI大模型最新行业报告2025最新行业报告针对不同行业的现状、趋势、问题、机会等进行系统地调研和评估以了解哪些行业更适合引入大模型的技术和应用以及在哪些方面可以发挥大模型的优势。5、大模型大厂面试真题整理了百度、阿里、字节等企业近三年的AI大模型岗位面试题涵盖基础理论、技术实操、项目经验等维度每道题都配有详细解析和答题思路帮你针对性提升面试竞争力。6、大模型项目实战配套源码学以致用在项目实战中检验和巩固你所学到的知识同时为你找工作就业和职业发展打下坚实的基础。学会后的收获• 基于大模型全栈工程实现前端、后端、产品经理、设计、数据分析等通过这门课可获得不同能力• 能够利用大模型解决相关实际项目需求 大数据时代越来越多的企业和机构需要处理海量数据利用大模型技术可以更好地处理这些数据提高数据分析和决策的准确性。因此掌握大模型应用开发技能可以让程序员更好地应对实际项目需求• 基于大模型和企业数据AI应用开发实现大模型理论、掌握GPU算力、硬件、LangChain开发框架和项目实战技能 学会Fine-tuning垂直训练大模型数据准备、数据蒸馏、大模型部署一站式掌握• 能够完成时下热门大模型垂直领域模型训练能力提高程序员的编码能力 大模型应用开发需要掌握机器学习算法、深度学习框架等技术这些技术的掌握可以提高程序员的编码能力和分析能力让程序员更加熟练地编写高质量的代码。扫码免费领取全部内容这些资料真的有用吗这份资料由我和鲁为民博士(北京清华大学学士和美国加州理工学院博士)共同整理现任上海殷泊信息科技CEO其创立的MoPaaS云平台获Forrester全球’强劲表现者’认证服务航天科工、国家电网等1000企业以第一作者在IEEE Transactions发表论文50篇获NASA JPL火星探测系统强化学习专利等35项中美专利。本套AI大模型课程由清华大学-加州理工双料博士、吴文俊人工智能奖得主鲁为民教授领衔研发。资料内容涵盖了从入门到进阶的各类视频教程和实战项目无论你是小白还是有些技术基础的技术人员这份资料都绝对能帮助你提升薪资待遇转行大模型岗位。这份完整版的大模型 AI 学习资料已经上传CSDN朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】