来源:互联网 更新时间:2026-06-27 07:26
前记:最近Claude的Skills功能在圈子里激起不少讨论,很多人都在琢磨——Skills是不是可以替代MCP?带着这个疑问深入研究了MCP的实现原理,又上手试了试Skills。结论其实很明确:这不是替代关系,而是协作关系。
Skills是Claude提供的一种模块化、可复用的能力扩展机制。简单来说,就是把某个领域的专业知识、标准流程和操作规范封装成一个能力单元,让模型能够自动理解和执行。
和一次性Prompt不同,Skills更像是给大模型配置的“专家级操作手册”或者说“标准作业流程(SOP)”。它要解决的核心问题只有一个:让模型在特定场景下稳定、一致、可控地输出高质量结果。
有几个关键特征值得关注:
安装过程其实很简单,先安装claude-code:
npm install -g @anthropic-ai/claude-code
然后安装pptx skill:


接着就可以用这个技能直接写PPT了:





有意思的是,写完这个PPT之后,claude-code还自动安装了其他需要的skills:

Anthropic官方对这两个概念的定义其实很清晰。简单说:
核心作用:给大模型接入外部能力
关注重点:数据、工具、系统接口
解决问题:模型去哪拿数据?能调用哪些系统和工具?
本质定位:能力供给层 / 能力接口层
没有MCP,模型“知道怎么做”,但“拿不到数据、干不了活”。
核心作用:规范大模型的做事方式
关注重点:任务方法论、业务逻辑、执行步骤
解决问题:这类事情应该按什么流程做?输出应该长什么样、包含哪些要点?
本质定位:行为规范层 / 方法论固化层
没有Skills,模型“能干活”,但“每次干法不一样、结果不稳定”。
MCP是给模型“工具和数据”,Skills是教模型“如何正确使用这些能力”。
放到真实场景里更好理解:
MCP接入监控系统、数据库、日志平台;
Skills规定故障分析要先看什么、再分析什么、最后怎么下结论。
下图很形象地说明了MCP和Skills的关系——协作而非竞争。

Model Context Protocol(MCP)并不是一个简单的“工具调用协议”,它是一套面向智能体(Agent)场景的通用通信框架。通过清晰的分层设计,把「协议语义」与「通信方式」彻底解耦——同一套Agent协议既能跑在本地进程,也能运行在浏览器、微服务乃至实时双向系统中。
从架构上看,MCP可以清晰拆分为三层:
这三层的边界非常明确:
协议层只关心「消息语义与会话状态」,
传输层只关心「消息如何收发」,
上层应用完全不需要感知底层通信细节。
协议层的核心是BaseSession。它不是简单封装JSON-RPC,而是解决了Agent场景下最关键的几件事:
可以理解为:BaseSession把“字节流通信”升级成了“可靠的会话通信”。
在BaseSession之上,MCP分别为客户端和服务端补齐了角色语义:
initialize请求这种设计使MCP的通信过程具备明确的生命周期和状态约束,而不是“随便发消息”。
从通信流程上看,MCP的完整交互可以抽象为三个阶段:
initialize,双方交换协议版本与能力集,通过initialized确认完成。
这一流程确保了MCP在复杂Agent场景下仍然具备可控的通信秩序。
MCP在传输层提供了多种实现,以适配不同部署与性能需求,但所有传输方式都严格遵循同一套协议层逻辑。
可以看到,传输层的差异只影响“怎么连”,不影响“怎么用”。
从整体设计来看,MCP的核心价值在于:
这也是MCP能成为Agent时代“通用通信底座”的关键原因。
在MCP中,并不是所有能力都通过“工具调用”来完成。为了清晰划分谁来控制、谁来决策、谁来执行,MCP将Agent可用的能力抽象为三类核心原语:
这三者共同构成了MCP中模型、客户端与服务端之间的职责边界。
资源(Resources)是MCP中用于向LLM暴露上下文数据的核心原语之一。它的本质不是“能力”,而是可被读取的背景信息。
资源可以是任意类型的数据,包括但不限于:
file:///home/user/docs/report.pdf
postgres://db.example.com/customers/schema
screen://localhost/display
logs://recent?timeframe={duration}
客户端只需填充参数即可构造具体资源URI。
支持资源的MCP Server需要在初始化阶段声明能力,例如:
{
"capabilities": {
"resources": {
"subscribe": true,
"listChanged": true
}
}
}
subscribe:是否支持订阅单个资源的变更listChanged:资源列表变化时是否主动通知客户端资源的设计目标是:为模型提供“事实背景”,而不是“执行能力”。如果你希望服务端主动驱动模型行为,那么应该使用Tools,而不是Resources。
工具(Tools)是MCP中唯一允许模型直接触发“动作”的原语。与资源不同,工具不是被读取,而是被调用(call)。
模型控制(Model-controlled),用于执行:
需要特别注意的是:模型只是“决定是否调用工具”,真正的调用由客户端完成。这正是MCP所强调的:
每个工具包含以下信息:
name:唯一标识description:功能说明inputSchema:参数结构(JSON Schema)annotations(可选):行为说明在MCP中:
tools/listtools/call整个过程完全协议化、可审计、可拦截。
在MCP中,Prompt是继Resources和Tools之后的第三个核心原语,但它关注的不是数据,也不是执行,而是——如何把用户意图组织成“模型更容易理解和执行”的输入结构。
Prompt本质上是由服务器端预先定义的一组可复用对话模板与交互流程。
prompts/list、prompts/get统一管理典型Prompt定义结构如下:
{
name: string;
description: string;
arguments: [{
name: string;
description: string;
required: boolean;
}];
}
例如在教学或企业知识场景中:
Prompt解决的是“经验如何被标准化复用”的问题。
最后用三句话总结MCP的核心原语设计:
这三者共同构成了MCP中安全、可控、可产品化的Agent能力体系。
以下分别对MCP的三个核心原语做了实战演示,代码已上传到GitHub,感兴趣的同学可以查看具体代码,代码是用Ja vaScript写的。
代码仓库:https://github.com/wangjoey2012-sudo/mcp-demos



本文深入介绍了MCP底层实现的一些框架及协议,也讲了Claude最近备受关注的Skills功能,希望能帮助大家更清楚地理解MCP和Skills各自的价值。
最后聊几句关于大模型Token的感想。
上次参加腾讯架构师同盟的沙龙,腾讯CodeBuddy的林强老师提到一个很实在的观点:大模型能力之所以还没渗透到生活各个场景,很大一个原因是Token成本太高。光看下边这张截图就知道——用claude-code安装pptx skills加上一些依赖,最后做一个简单的5页PPT文档,Token消耗就相当惊人。当前Token成本依然偏高,所以对个人来说,一些不重要的任务暂时还不适合用AI来解决。

这周尝试搭建一个企业价值投资分析的智能体,搭建过程中也一直在想:如果这个智能体后续需要自动运行,Token消耗又是一个必须正视的问题。
俄罗斯最大yandex入口外贸日报直达链接
Bubbly无法连接服务器修复方法
美好的简约网名男生(精选100个)
盖乐世社区怎么删除帖子?盖乐世社区个人发布内容撤回步骤
问题:CIA币好不?Cia Protocol币今日上线:价格预测、代币经济学和未来潜力
欧易OKX官方网站直达入口 2026欧易官方App安卓版v7.1.0下载安装
新浪人工智能热点小时报丨2026年06月20日02时_今日实时人工智能热点速递
国际贵金属走低,现货黄金价格跌0.49%
倒数日怎么注册 倒数日账号注册教程
币安Binance交易所官方入口 币安App下载安装与实名注册教程
高质量网名伤感男生英文(精选100个)
《梦幻西游》特殊鬼怪怎么抓-隐藏变异鬼应对要点
动漫《KiraKira 光之美少女 A La Mode》剧情介绍
Siren (SIREN)币价格预测 2026-2050:SIREN 股价会很快达到 1.5 美元吗?
漫威新剧《钢铁侠和他的超能朋友们》今日炸更11集,Thor和Loki惊喜客串
以太坊(ETH)未来数周或持续呈现低迷态势,多重因素制约价格走势
古风网名二个字男生(精选100个)
宝马水鸟摩托车的官方指导价是多少
三个字的带七男生网名(精选100个)
文雅简易网名男生可爱(精选100个)
手机号码测吉凶
本站所有软件,都由网友上传,如有侵犯你的版权,请发邮件haolingcc@hotmail.com 联系删除。 版权所有 Copyright@2012-2013 haoling.cc