网易首页 > 网易号 > 正文 申请入驻

MCP协议6600万次下载背后:Anthropic埋了3年的US

0
分享至

6600万次npm下载,27000个依赖包——这是MCP TypeScript SDK截至2026年4月的成绩单。但数字背后有个更狠的事实:AI模型干了这么多年,居然到今天才用上"通用接口"。

以前每接一个新数据源,你都要手写一套桥接代码。Anthropic 2023年憋出来的MCP(Model Context Protocol,模型上下文协议),本质上就是给AI造了个USB口:插上去就能用,拔下来就能换。现在谷歌、OpenAI都进场了,这协议从"Anthropic私货"变成了行业基建。

本文基于官方TypeScript SDK文档,把架构、工具、资源、提示词这些核心模块拆清楚。不聊概念,只聊你怎么用。

两层架构:McpServer和Server到底啥区别

SDK藏了个容易踩的坑——它有两套API。

Server是底层原语:手动处理JSON-RPC消息、协议版本协商、能力声明。适合你要完全控制通信流程的场景,比如自定义传输层或者调试协议细节。

McpServer是高层封装:工具注册、资源暴露、提示词管理,全部链式API搞定。99%的生产代码应该用这个。

打个比方:Server像TCP套接字,McpServer像Express框架。除非你在写框架本身,否则别碰底层。

初始化McpServer只需要三行:

const server = new McpServer({ name: "weather-server", version: "1.0.0" });

server.tool("getForecast", { city: z.string() }, async ({ city }) => { ... });

const transport = new StdioServerTransport(); await server.connect(transport);

工具定义用Zod做运行时校验,类型推导直接打通。你写一遍schema,TypeScript和运行时都认。

工具、资源、提示词:SDK的三板斧

MCP协议把AI能调用的东西分成三类,SDK的API设计完全对应这个分类。

工具(Tools):让AI执行动作。查天气、调API、写文件,都算。关键特性是Zod校验 + 结构化错误。你的工具抛错时,可以返回isError: true和具体message,AI会据此决定重试还是换策略。

工具还能加annotations(注解),告诉AI这个操作是"只读"还是"破坏性"的。比如删除操作标记destructiveHint: true,模型会自动多问用户一句确认。

资源(Resources):给AI提供上下文。分静态URI和动态模板两种。静态的像file:///config.json,动态的像file:///logs/{date}.txt。模板用URI Template语法,参数自动提取。

提示词(Prompts):预置的可复用指令模板。可以带参数,比如/summarize?style=brief。客户端发现这些提示词后,用户一键就能触发复杂工作流。

这三类在SDK里是平行API:server.tool()、server.resource()、server.prompt()。设计意图很明显——协议层面一视同仁,但你的业务逻辑自己拆清楚。

Sampling:服务器主动调用LLM的野路子

大部分MCP交互是"客户端请求→服务器响应"的单向模式。但有个高级功能打破了这规矩:sampling(采样)

场景是这样的:你的MCP服务器收到一个复杂查询,需要LLM帮忙拆解或者生成中间内容。这时候服务器可以反向调用客户端提供的LLM能力,拿到结果再继续执行。

流程变成:用户提问 → 服务器发现需要推理 → 发sampling请求给客户端 → 客户端调LLM → 结果返回服务器 → 服务器完成最终响应。

这个设计很微妙。它让MCP服务器不再是" dumb工具",而是能自主决策、自主调用AI的agent节点。但代价是复杂度:你需要处理异步采样请求、上下文窗口管理、可能的循环调用。

SDK的sampling API长这样:

const result = await server.requestSampling({ messages: [...], maxTokens: 500 });

客户端必须显式声明supportsSampling: true才会响应。这是个安全闸门——服务器不能随便烧用户的token。

传输层选型:stdio还是HTTP

SDK内置两种传输实现,选错会直接影响部署架构。

StdioTransport:标准输入输出,进程间通信。适合本地CLI工具、桌面应用内嵌、或者任何"服务器和客户端跑在同一台机器"的场景。简单、无网络依赖、调试直接打console。

StreamableHTTP:HTTP长连接,支持SSE(Server-Sent Events)流式响应。适合远程部署、多客户端并发、或者需要穿越防火墙的场景。2025年3月协议更新后,这个传输支持真正的无状态扩展——每个请求独立鉴权,服务端可以随便水平扩容。

有个细节容易忽略:HTTP传输的path配置。默认是/mcp,但你可以改。如果你把多个MCP服务器挂在同一个域名下,用path区分比开多个端口干净。

生产环境建议直接上StreamableHTTP + 反向代理。stdio看着省事,但跨机器部署时你会重新写一遍网络层。

自动补全与结构化日志:被低估的生产力

SDK有两块功能文档没强调,但实际开发很香。

Completions(自动补全):工具参数、资源URI、提示词参数,都可以注册补全回调。用户在客户端输入时,实时拿到建议列表。实现方式类似LSP的completionProvider:

server.setCompletionHandler("resource", "file", async (uri) => { return { values: await listFiles(uri) }; });

Structured Logging:SDK内置JSON格式日志,级别从debug到error。关键是可以附加任意metadata,比如请求ID、用户ID、工具名。接入ELK或者Datadog时,过滤和聚合直接可用。

这两块属于"用上就回不去"的基础设施。补全降低用户犯错率,结构化日志降低你排查问题的血压。

Agentic AI Foundation现在接手维护MCP, Anthropic、Google、OpenAI都在委员会里。但协议的真正考验才刚开始:当各家的大模型都想扩展这个协议时,标准会不会膨胀到失控?

SDK的下一个大版本据说要支持工具链(chained tools)和更细粒度的权限模型。但现在的问题是:你的MCP服务器,准备好从"demo玩具"变成"生产负载"了吗?

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
斯诺克巨星邀请赛:小特不败夺冠!进账462万奖金,吴宜泽险垫底

斯诺克巨星邀请赛:小特不败夺冠!进账462万奖金,吴宜泽险垫底

刘姚尧的文字城堡
2026-05-11 07:57:47
损失难以估量!世界杯若失去中国观众,国际足联将直面3大压力

损失难以估量!世界杯若失去中国观众,国际足联将直面3大压力

云舟史策
2026-05-11 07:10:07
武大声明翻车,是因为它在不该精明的地方太精明

武大声明翻车,是因为它在不该精明的地方太精明

牛角说
2026-05-11 10:20:34
北京走了一百多w的年轻人

北京走了一百多w的年轻人

微微热评
2026-05-11 08:46:02
俄加强对普京的保护措施,欧洲情报机构猜测,可能与绍伊古有关

俄加强对普京的保护措施,欧洲情报机构猜测,可能与绍伊古有关

阿甘天天传
2026-05-10 23:20:20
2:3!日本女团惜败国乒,张本美和赛后采访满是心有不甘与心碎!

2:3!日本女团惜败国乒,张本美和赛后采访满是心有不甘与心碎!

田先生篮球
2026-05-10 23:07:16
没有外援就拔刀相向?神权杖硬刚枪杆子,塔利班进入内斗阶段!

没有外援就拔刀相向?神权杖硬刚枪杆子,塔利班进入内斗阶段!

寰球经纬所
2026-05-10 10:55:10
女子硕士入学清华后参与智力测验,仅得25分,回应:无论是学习、工作、创业,我都没有遇到困难,但我居然智力中下

女子硕士入学清华后参与智力测验,仅得25分,回应:无论是学习、工作、创业,我都没有遇到困难,但我居然智力中下

扬子晚报
2026-05-11 07:48:21
中国境内唯一一支外国军队,赶了50年赶不走,至今仍驻扎在北京

中国境内唯一一支外国军队,赶了50年赶不走,至今仍驻扎在北京

可乐爱微笑
2026-05-07 02:35:38
状元签到手却要卖?奇才交易状元签理由曝光,神思路性价比拉满

状元签到手却要卖?奇才交易状元签理由曝光,神思路性价比拉满

夜白侃球
2026-05-11 11:10:16
林诗栋哭了!扑入王皓怀中+跳上球台 奥运冠军大喊:完了 不能站

林诗栋哭了!扑入王皓怀中+跳上球台 奥运冠军大喊:完了 不能站

念洲
2026-05-11 08:46:13
青岛俩儿子非亲生:女主照片曝光,第三者势力大,更多细节被爆料

青岛俩儿子非亲生:女主照片曝光,第三者势力大,更多细节被爆料

汉史趣闻
2026-05-11 10:03:11
拉什福德任意球破门,费兰建功定乾坤,巴萨2-0复仇皇马勇夺29冠

拉什福德任意球破门,费兰建功定乾坤,巴萨2-0复仇皇马勇夺29冠

钉钉陌上花开
2026-05-11 05:10:06
特朗普时隔9年再度访华;首次访华两国曾签下2535亿美元大单,今年2月特朗普还在赞叹访华期间中国仪仗队强大阵容、整齐划一

特朗普时隔9年再度访华;首次访华两国曾签下2535亿美元大单,今年2月特朗普还在赞叹访华期间中国仪仗队强大阵容、整齐划一

极目新闻
2026-05-11 10:22:20
i60月销持续破万,埃安以大单品开启上行新周期

i60月销持续破万,埃安以大单品开启上行新周期

《新车新技术》
2026-05-09 18:00:09
出售公民信息千元一条,国家反诈平台成内鬼摇钱树

出售公民信息千元一条,国家反诈平台成内鬼摇钱树

高恒说
2026-05-10 16:58:40
忍无可忍!马刺主帅怒批裁判不作为,文班肘击前被卸胳膊画面曝光

忍无可忍!马刺主帅怒批裁判不作为,文班肘击前被卸胳膊画面曝光

新杀猪的秀才
2026-05-11 11:47:53
​围观也能赔上千亿:中东这把火,把印度烧成了最惨的局外人

​围观也能赔上千亿:中东这把火,把印度烧成了最惨的局外人

局势帝
2026-05-10 18:00:40
女子因18元奶茶被亲姐拉黑,崩溃大哭:离婚带娃5年,都看不起我

女子因18元奶茶被亲姐拉黑,崩溃大哭:离婚带娃5年,都看不起我

辣媒专栏记录
2026-05-11 08:21:59
无法共情,理解不了

无法共情,理解不了

求实处
2026-05-10 22:34:56
2026-05-11 13:03:00
野生运营
野生运营
懂点产品,懂点AI,正在努力给平淡日子搞点新花样。
2504文章数 33关注度
往期回顾 全部

科技要闻

黄仁勋:你们赶上了一代人一次的大机会

头条要闻

姑娘海底捞吃完饭遭多名男子殴打 两颗门牙被一拳打断

头条要闻

姑娘海底捞吃完饭遭多名男子殴打 两颗门牙被一拳打断

体育要闻

那个曾让詹姆斯抱头的兄弟,40岁从大学毕业了

娱乐要闻

谢霆锋没想到,王菲靠张艺谋重返巅峰

财经要闻

"手搓汽车"曝光:伪造证件、电池以旧代新

汽车要闻

全球化成国内车企未来胜负手,谁是出海最强"水手"?

态度原创

家居
时尚
教育
数码
军事航空

家居要闻

多元生活 此处无声

轻松拿捏又甜又酷的造型,试试这些轻熟穿搭,温柔有女人味儿

教育要闻

奔赴一场英法教育之旅,遇见更好的未来

数码要闻

联想YOGA Air 14 Ultra笔记本官宣5月19日发布

军事要闻

伊朗革命卫队深夜警告

无障碍浏览 进入关怀版