2026 年秋招,MCP 已经不算加分题了。真正把人分层的是另一个问题:MCP 在 2026-07-28 那次改版到底动了什么。
能答出”握手和会话被砍掉、协议转向无状态”的人,和只会背”MCP 是 AI 的 USB-C”的人,在面试官眼里是两个层级。前者说明你在跟进协议演进,后者说明你半年前看过一篇公众号。协议层的题就是这样——它不考记忆,考的是你有没有把一个 server 真的部署到生产环境里过。
这一期把 MCP 与 Skill 标准拆开讲,顺带把 A2A 的边界说清楚。
开篇:这一专项在面试里的位置
考察定位与职级差异
| 职级 | 典型岗位 | 本专项的及格线 |
|---|---|---|
| P5 / 校招 | 大模型应用开发 | 说清 MCP 解决什么、一次调用经过哪些角色、能写个 stdio server |
| P6 | 大模型应用开发 / AI 工程化 | 讲透传输层与版本差异、工具治理、上下文预算;能排查”工具选不对” |
| P7 | Agent 架构师 / 技术专家 | 能做”要不要上 MCP”的决策;无状态化迁移方案、鉴权与多租户、网关治理 |
| 终面 | 各职级通用 | 讲清 MCP / Function Calling / Skill / A2A 的边界,给出判据而不是站队 |
协议类题目有个特点:它是 Agent 岗里少数能客观判对错的部分。上下文工程、记忆系统这类题可以自圆其说,协议题不行——Mcp-Session-Id 还在不在、错误码是多少,答错就是答错。所以面试官爱拿它做探底题:一面问一次,三面换个角度再问一次,看你是不是真的跟进了。
企业考察风格
- 字节:偏工程落地。不怎么问协议细节,问的是”你接了三十个 MCP server 之后线上出了什么问题”。工具数量、上下文膨胀、调用延迟是高频追问区。
- 阿里:偏架构与标准化。爱问协议分层、能力生命周期、多租户鉴权,以及”让你在公司内部推 MCP,你怎么说服各个业务方”。
- 腾讯:偏产品化与生态。Skill 与 MCP 的组合、连接器目录、用户授权体验出现频率高。
- 百度 / 美团:偏原理。JSON-RPC 2.0 的报文结构、流式返回怎么拼、模型侧工具 schema 怎么生成,会往细节里钻。
- 中小厂与独角兽:直接上机。给你四十分钟写一个 MCP server,能跑通就算过。
考点知识图谱
出题趋势预判
三个变化值得提前准备:
- 考点整体后移。当前规范版本是
2026-07-28(官方版本页),无状态化之后,“MCP 是什么”已经问不出区分度,取而代之的是”你怎么把老实现迁过去”、“跨调用状态放哪”。 - Skill 从特性变成标准。Anthropic 2025 年 10 月公开 Agent Skills,12 月把它作为开放标准发布(agentskills.io)。2026 年秋招已经进了 JD,问法集中在”Skill 和 MCP 是不是重复造轮子”。
- 安全从加分题变必答题。工具投毒、rug pull 这类词,去年只有做安全的人提,现在架构面直接问。原因很实在:企业接第三方 MCP server 是真的出过事故。
模块一:核心考点分层拆解
基础级(校招 / P5)
考点 A:MCP 解决的是什么问题
典型考题:三个应用要接二十个外部工具,你有几种做法?(腾讯·大模型应用开发 一面)
出题意图:看你脑子里有没有”集成成本”这个概念。这题是所有协议类题目的入口,答不好后面全废。
答题框架:把 N×M 说清楚——没有统一协议时,每个应用对每个工具各写一套适配,成本是 N×M;有 MCP 之后,应用侧只实现 client,工具侧只实现 server,成本降到 N+M。然后补上真正的关键点:MCP 换来的不只是省代码,是运行时动态发现,加一个 server 不用重新部署应用。
踩坑预警:把 MCP 说成”远程函数调用”是最常见的扣分。传输只是它的一层,能力声明(Tools / Resources / Prompts)与动态发现才是价值所在。
追问路径:① MCP 有没有解决不了的场景?(答不出”Agent 之间协作”会丢分)② 二十个工具全走 MCP 有什么代价?③ 工具方不愿意改造成 MCP server 怎么办?
考点 B:一次 tools/call 的完整链路
典型考题:用户说”帮我查上周的订单”,从这句话到拿到数据,中间经过哪些环节?(美团·AI 工程化 一面)
出题意图:考你是不是只在 PPT 上见过 MCP。真写过 server 的人,这条链路是能倒背的。
答题框架:用户 query 进模型 → 模型拿到工具 schema 决定调哪个 → MCP client 发 JSON-RPC 请求 → server 执行并回传结构化结果 → 结果作为 tool 消息回灌 → 模型生成答案。重点是两头:schema 从哪来(tools/list),结果怎么回灌(结构化 content,不是自然语言转述)。
踩坑预警:说”模型直接调用 API”直接扣大分。模型永远不执行函数,它只输出调用意图。
追问路径:① 结果里有图片或文件怎么传?② 调用失败了错误信息怎么回给模型?③ 一次请求里模型想调两个工具,能并发吗?
进阶级(P6)
考点 C:传输层与版本演进
典型考题:MCP 的传输方式有哪几种,你现在的项目选哪个,为什么?(字节·大模型应用开发 二面)
出题意图:这题是版本跟进度的探针。2025-11-25 及更早的版本靠 initialize 握手加会话,远程走 HTTP+SSE;2026-07-28 把握手和 Mcp-Session-Id 一起砍了,远程只剩 Streamable HTTP,HTTP+SSE 转入弃用。
答题框架:
| 传输 | 适用场景 | 现状 |
|---|---|---|
| stdio | 本地进程、桌面客户端、CLI 工具 | 主流,延迟最低,部署最简单 |
| Streamable HTTP | 远程服务、多租户、Serverless | 现行标准,必须带 Mcp-Method / Mcp-Name 头 |
| HTTP + SSE | 旧版远程 | 已弃用,至少还有 12 个月缓冲,新项目不要碰 |
接着补一句无状态化的动机:会话让负载均衡必须做粘性路由、必须搞共享会话存储,网关还得解析请求体才知道调的是哪个方法。请求自描述之后,这些负担全没了。
踩坑预警:把”已弃用”说成”已移除”。MCP 有明确的功能生命周期政策,标记 Deprecated 到真正 Removed 至少留 12 个月。分不清这两个词,说明你读的是解读文章不是规范。
追问路径:① 无状态之后跨调用状态怎么保留?② 老 server 不升级怎么办?③ server/discover 是必须调用的吗?
考点 D:工具治理与上下文预算
典型考题:接了二十个 server、总共八百个工具,模型开始乱选工具,你怎么处理?(阿里·Agent 架构师 二面)
出题意图:这是 2026 年最高频的落地难题。八百个工具全塞进上下文,光 schema 就吃掉几万 token,而且模型的选择准确率会随候选数量下降。
答题框架:先说分层,再说检索式按需注入,最后说度量。
工具描述这条要单独讲:描述是写给模型的接口文档,必须包含”什么时候用”、“什么时候别用”、“失败后改用哪个工具”。同一个 server 里出现两个语义相近的工具,是误选率飙升的头号原因。
踩坑预警:一上来就说”减少工具数量”。面试官想听治理手段,不是把功能砍掉。
追问路径:① 怎么量化”模型选错了”?② 分层之后工具检索本身出错怎么办?③ 工具列表能缓存吗,缓存多久?
考点 E:Skill 与渐进式披露
典型考题:SKILL.md 里为什么非要写 description,写详细点不行吗?(腾讯·AI 应用开发 二面)
出题意图:考你是不是把 Skill 当成了”更长的 prompt”。Skill 的全部设计围绕一件事:上下文是有限资源,按需加载。
答题框架:三层披露讲清楚——启动时只把全部 Skill 的 name + description 放进系统提示(百 token 量级);任务命中后再把 SKILL.md 正文读进上下文(官方建议控制在 5000 token 内);脚本、参考资料、模板按需读取,读脚本时甚至不必把脚本内容本身塞进上下文,直接执行即可。
规范约束也要能说出来:name 1-64 字符、只允许小写字母数字和连字符、必须与目录名一致;description 1-1024 字符、要同时说清”做什么”和”什么时候用”;可选字段有 license、compatibility、metadata、allowed-tools(实验性)。
踩坑预警:把 Skill 说成”调用外部服务的方式”。Skill 不做外部调用,它是上下文层的知识封装。
追问路径:① 一个 Skill 里塞太多内容会怎样?② 脚本是加载进上下文还是执行?③ 两个 Skill 都命中同一个任务怎么取舍?
架构级(P7)
考点 F:无状态化改造
典型考题:我们有个 server 依赖 session 保存中间状态,升级到 2026-07-28 之后怎么办?(字节·Agent 架构 三面)
出题意图:P7 的分水岭题。考的是你能不能在协议约束变化后给出工程方案,而不是抱怨规范变了。
答题框架:
- 先判断状态是不是真需要跨调用。多数所谓”会话状态”其实是每轮都能重算的,直接改成无状态。
- 真需要的话,让服务器铸造显式 handle,作为普通参数返回给模型,后续调用由模型把它当参数传回来。藏不住的状态才是好状态——模型看得见,重试时就丢不掉。
- 需要二次确认的场景改用 MRTR:响应标记
resultType: "input_required"并附带问题,客户端收集完用户输入后带着inputResponses重新发起原调用。
迁移清单要主动说出来:错误码从 -32002 改成 -32602;logging/setLevel 已被拒绝,日志级别改走请求元数据里的 io.modelcontextprotocol/logLevel;Roots、Sampling、Logging 与 DCR 都在弃用名单上。
踩坑预警:提议”在网关层用 cookie 把请求粘回同一实例”。这等于把刚拆掉的会话又加回来,面试官会直接判定你没理解这次改版的动机。
追问路径:① 无状态之后重试和幂等怎么做?② 长任务怎么知道进度?③ 客户端和服务器版本不一致时怎么协商?
考点 G:鉴权、多租户与审计
典型考题:公司内部要开放 MCP 接入,鉴权怎么设计?(阿里·Agent 架构师 三面)
出题意图:企业落地的真实瓶颈。技术上不难,难在你要同时满足”用户零操作接入”和”权限不能越权”。
答题框架:三条线并行——用户侧走 OAuth 2.0 / OIDC,企业场景用托管授权(EMA)让管理员在 IdP 侧统一开通,用户凭现有组权限自动继承;客户端身份从 DCR 迁向 CIMD(Client ID Metadata Document),DCR 已进入弃用流程;安全加固要做 issuer 校验(RFC 9207,防授权服务器混淆)和凭证与签发者绑定,凭证不能跨授权服务器复用。审计侧必须落三件事:谁在什么时候调了哪个工具、传了什么参数、结果多大。
踩坑预警:只谈”加个 token”。工具调用是模型发起的,而模型可能被提示注入操纵,所以参数校验必须在服务端做,最小权限要落到单个工具粒度。
追问路径:① 用户授权给 A 应用,B 应用能复用吗?② 第三方 server 偷偷改工具描述怎么办?③ 怎么防止一个工具被拿去读另一个租户的数据?
考点 H:长任务与可靠性
典型考题:一个工具要跑十分钟,你的 Agent 怎么处理?(美团·AI 工程化 三面)
出题意图:看你知道不知道 Tasks 扩展,以及有没有超时、重试、幂等这些工程常识。
答题框架:长任务走 io.modelcontextprotocol/tasks 扩展,改成 tasks/get 轮询加 tasks/update 更新,变更通知订阅 subscriptions/listen 流。工程侧三件事:超时必须可配且有上限;重试要有幂等键(读工具可以不严格,写工具必须严格);结果要能断点续取,重连后不能从头跑。
踩坑预警:用”同步请求挂十分钟”的方案。网关超时、负载均衡断连、用户刷新页面,任何一个都能让它崩。
追问路径:① 任务失败在哪一步怎么追溯?② 同一个任务被重复提交怎么办?③ 轮询频率怎么定?
开放级(终面)
考点 I:四者的边界与选型
典型考题:Function Calling、MCP、Skill、A2A,都是让 Agent 能干更多事,你能一句话讲清各自的职责吗?(终面通用题)
出题意图:考你有没有形成体系,而不是把四个名词各背一句定义。
答题框架:一句话——Skill 决定怎么想,MCP 决定用什么,Function Calling 决定怎么调,A2A 决定找谁合作。
| 维度 | Function Calling | MCP | Skill | A2A |
|---|---|---|---|---|
| 解决的问题 | 模型如何表达调用意图 | 工具接入标准化 | 领域知识封装 | Agent 间协作 |
| 运行位置 | 应用进程内 | 外部 server | Agent 上下文 | 对端 Agent |
| 是否外部调用 | 由应用执行 | 有 | 无 | 有 |
| 标准化程度 | 各厂商不一 | 开放标准 | 开放标准 | 开放标准 |
补判据而不是站队:工具少于十个且不复用,直接写 Function Calling 更省事;知识流程要沉淀复用,用 Skill;要接入外部系统且多方复用,上 MCP;跨组织跨框架的多 Agent 协作才考虑 A2A。
踩坑预警:说”A2A 会取代 MCP”。两者是纵向与横向的关系,2026 年 8 月 A2A 已并入 Linux Foundation 旗下的 Agentic AI Foundation,和 MCP 成了同一屋檐下的两个标准,定位更清楚了,不是竞争关系。
追问路径:① 一个 Skill 里能不能调用 MCP 工具?② A2A 生态现在成熟到什么程度?③ 如果只能选一个先落地,你选哪个?
考点 J:安全与合规
典型考题:第三方 MCP server 你能信多少?(各厂架构面高频)
出题意图:2026 年安全题的权重明显上升。答不出具体攻击面的候选人,会被判定为”只在本地玩过”。
答题框架:点名三类攻击面——工具投毒(工具描述里夹带模型能看见、用户不容易注意的指令,2025 年 4 月 Invariant Labs 披露的 Tool Poisoning Attack 就是这一类);rug pull(server 先以无害描述通过审核,事后改描述或改行为);混淆代理(server 拿着用户的授权去做用户没意图的操作)。防御对应四条:工具描述进版本管控与 diff 审计;高风险工具强制人工确认,且展示”将要做什么、影响什么”;工具返回内容当不可信输入处理,防间接提示注入;服务端做参数白名单校验。
踩坑预警:答”只装官方认证的 server”。认证不等于不变,rug pull 恰恰绕过了这个假设。
追问路径:① 工具描述变更怎么发现?② 模型被注入后要求删库,哪一层拦得住?③ 审计日志要记哪些字段才够事后复盘?
模块二:大厂经典真题精析
真题一:MCP 和 Function Calling 差在哪,什么时候该上 MCP
【真题来源】2026 字节跳动·大模型应用开发岗 二面(P6) 【题目原文】我们团队现在工具都是在代码里直接定义 schema 然后给模型,什么情况下你觉得应该换成 MCP?
评分标准(10 分)
| 档位 | 得分 | 表现 |
|---|---|---|
| 不及格 | 0-3 | 只说”MCP 是标准”,复述 USB-C 类比,答不出代价 |
| 及格 | 4-6 | 说清 N×M 到 N+M,提到动态发现 |
| 良好 | 7-8 | 补上引入代价:多一跳延迟、schema 吃上下文、鉴权与审计要重做 |
| 满分 | 9-10 | 给出可执行的判据,并能写出一次调用的报文 |
低分反面案例
- “MCP 就是把函数放到远程调用,本质一样。” —— 把协议降级成传输,没看见能力声明与动态发现。
- “工具多了就该上 MCP。” —— 没有阈值,也没有成本意识。
- “MCP 支持流式,Function Calling 不支持。” —— 事实错误,两者根本不在同一层。
高分回答范本
先说区别。Function Calling 解决的是模型怎么把调用意图结构化表达出来,执行发生在我的应用进程里,schema 是我写死的,加一个工具要改代码重新发版。MCP 把这件事挪到协议层——工具方实现 server,我实现 client,成本从 N×M 变成 N+M,而且工具是运行时发现的,加一个 server 不用发版。
但我不认为工具多了就该上。我的判据是三条:工具会被多个应用复用、工具归属方不是我(第三方在维护,我不想在自己代码里替它写 schema)、工具集合会频繁变化。占两条才值得上。反过来说,工具只有三五个、调用延迟敏感(在线推理链路里多一跳 30ms 不可接受)、或者参数结构需要和模型反复对齐调优的场景,直接写 Function Calling 更简单可控。
上 MCP 的代价也得提前算:一是工具 schema 会占上下文,接二十个 server 之后这部分就是几千 token;二是多一跳网络,超时和重试策略要重做;三是鉴权不能再用应用内部那套,得走 OAuth 加工具级权限;四是审计,模型发起的调用必须能追到人和参数。这些不做,MCP 只是把复杂度从代码搬到了线上。
面试官点评:满分答案的标志是给了判据而不是立场。这题不是让你选边,是看你能不能量化”什么时候不值得”。最后那段代价清单是分水岭——只讲收益不讲代价的回答,会让人怀疑你没真正落过地。
真题二:八百个工具撑爆上下文,模型开始乱选
【真题来源】2026 阿里·Agent 架构师 三面(P7) 【题目原文】我们内部平台接了二十多个 MCP server,工具总数八百多,现在模型选工具准确率掉到 60%,上下文也快满了,你怎么治?
评分标准(10 分)
| 档位 | 得分 | 表现 |
|---|---|---|
| 不及格 | 0-3 | 主张砍工具,或说”换个更强的模型” |
| 及格 | 4-6 | 想到分组 / 按需注入 |
| 良好 | 7-8 | 分层 + 工具描述规范 + 有度量指标 |
| 满分 | 9-10 | 分层与检索方案可落地,指标能闭环,且考虑了检索本身出错的兜底 |
低分反面案例
- “让业务方把工具精简到五十个以内。” —— 把工程问题推给组织协调。
- “用向量检索召回工具,取 top-5。” —— 只答了半句,没说检索错了怎么办。
- “降低 temperature 让模型更谨慎。” —— 参数玄学,直接暴露没做过工具调优。
高分回答范本
我会把它当检索问题而不是提示词问题。三层来治理:
常驻层放高频且低风险的工具,二十个以内,直接进 schema,保证主链路不依赖检索;检索层是剩下几百个,用工具描述的语义检索按需注入,命中后才把 schema 拼进上下文,并且要带兜底——检索没命中时必须显式回退到常驻层,再加一个”还有更多工具,请描述你需要什么”的元工具,不能默默什么都不给;隔离层给子 Agent 用,比如数据分析类的工具集单独给一个子 Agent,主 Agent 只拿到”可以委托给数据分析 Agent”这一个入口。
工具描述本身要重写一遍,统一格式:做什么、什么时候用、什么时候别用、失败后改用哪个。八百个工具里一定有成对的语义相近工具,这类是误选的主要来源,要么合并,要么在描述里写死区分条件。
度量上盯三个数:误选率(调了不该调的工具)、空结果率(参数合法但查不到,说明模型对工具边界理解错了)、平均轮次(持续上涨通常意味着工具描述在退化)。工具列表还能利用
tools/list返回的ttlMs和cacheScope做缓存,减少重复拉取,也让上游 prompt 缓存在断线重连后保持稳定——这点是 2026-07-28 之后才有的。
面试官点评:满分关键在承认检索会出错并给出兜底。大多数候选人能说到”语义检索召回工具”,但只有真正做过的人会想到”检索没命中时模型该怎么办”。另外主动提到 ttlMs / cacheScope 是版本跟进度的一个强信号。
真题三:无状态化之后,原来依赖 session 的服务怎么迁
【真题来源】2026 腾讯·AI 平台 三面(P7) 【题目原文】我们的 MCP server 用 session 存了用户上下文和中间结果,新规范把 session 砍了,你怎么改?
评分标准(10 分)
| 档位 | 得分 | 表现 |
|---|---|---|
| 不及格 | 0-3 | 说”那就不升级”,或提议在网关层做粘性会话 |
| 及格 | 4-6 | 知道有 handle 机制,能说出显式传参 |
| 良好 | 7-8 | handle + MRTR + 迁移清单(错误码、日志、弃用项) |
| 满分 | 9-10 | 先质疑状态必要性再给方案,且覆盖幂等与可观测 |
低分反面案例
- “在网关注入一个 session cookie 把请求粘到同一实例。” —— 典型的不理解改版动机。
- “把状态存 Redis,用 client id 做 key。” —— 能跑,但你重新发明了会话,成本一点没省。
- “新规范不兼容就先不升,等生态成熟。” —— 缺少技术判断力。
高分回答范本
第一步不是想怎么搬状态,是先问这些状态是不是真的需要跨调用。我见过的多数”会话状态”其实是每轮都能重算的,比如用户偏好、租户信息,完全可以从请求里带进来,
_meta字段本来就是干这个的。真搬之前先砍一轮,通常能砍掉一半。剩下确实需要跨调用保留的,比如多步表单填到一半的状态,让服务器铸造一个显式 handle 返回给模型,后续调用由模型把它当普通参数传回来。这个设计比藏在传输层里的会话好:模型看得见 handle,重试时不会把它弄丢;而且它可审计,日志里能直接看到状态流转。
需要追问用户或二次确认的地方,改成 MRTR:响应标记
resultType: "input_required"带上问题,客户端收集完答案后带着inputResponses重发原调用。原来依赖服务器反向发起的那些场景,都走这条路。迁移清单还有几项容易漏:错误码从
-32002改成-32602,客户端里硬编码匹配的地方要全查一遍;logging/setLevel在新版本上已经被拒绝,日志级别改走请求元数据;Roots、Sampling、Logging 和 DCR 都在弃用名单里,按官方生命周期政策至少还有 12 个月缓冲,但新代码不该再往上堆。最后补一条:无状态之后重试会变多,写工具的幂等键必须做,否则一次用户请求可能触发多次写操作。
面试官点评:满分点在于先做减法再做迁移,以及最后主动补上幂等。这题很多人栽在”把旧设计原样搬到新协议”,而官方改版的全部动机就是让状态显式化——你把它藏回传输层,等于没听懂题目。
真题四:设计一个企业内部的 MCP 网关
【真题来源】2026 美团·AI 工程化 三面(P7) 【题目原文】公司要给几十个业务方开放 MCP 接入,你来设计这层网关,说清楚鉴权、限流和审计。
评分标准(10 分)
| 档位 | 得分 | 表现 |
|---|---|---|
| 不及格 | 0-3 | 只说”加 API key” |
| 及格 | 4-6 | 有 OAuth、有按租户限流 |
| 良好 | 7-8 | 分层鉴权 + 参数校验 + 审计字段完整 |
| 满分 | 9-10 | 覆盖工具级权限、注入防御、描述变更审计、可观测闭环 |
低分反面案例
- “给每个业务方发一个 key,按月限流。” —— 没有用户维度的权限,模型拿着 key 什么都能做。
- “网关层做参数校验就行。” —— 只答了一层,且没说校验什么。
- “审计就是把日志打全。” —— 打全不等于能复盘。
高分回答范本
这层网关要做的事,本质是把”模型发起的调用”变成”可追责的操作”。四块:
鉴权分两层。用户层走 OAuth 2.0 / OIDC,企业内部用托管授权让管理员在 IdP 侧统一开通,用户凭现有组权限自动继承,做到终端用户零操作接入。客户端身份这块,DCR 已经进弃用流程,新接入一律走 CIMD。同时必须做 issuer 校验(RFC 9207)和凭证与签发者绑定,凭证不能跨授权服务器复用——这两条是防授权服务器混淆的,企业场景里 IdP 不止一个,很容易踩。
权限要落到单个工具粒度,而不是”这个应用能接这个 server”。读工具自动放行,写工具和涉及资金、删除的操作必须人工确认,确认界面要展示”将要做什么、影响什么”,只显示工具名没有意义。参数白名单校验放服务端,模型可能被提示注入操纵,不能信它输出的参数。
限流按租户加工具两个维度做,长任务单独配额。新规范里 Streamable HTTP 请求强制带
Mcp-Method和Mcp-Name头,正好可以在网关层直接按头做路由和限流,不用解析请求体——这是这次改版给基础设施带来的最大便利。审计必须记录:用户身份、租户、工具名、参数(脱敏后)、结果大小、耗时、是否触发人工确认。工具返回的正文也要留痕,用于事后查间接提示注入。另外我会加一条描述变更监控:第三方 server 的工具描述要进版本管控,diff 告警,这是防 rug pull 的关键——一个 server 通过审核之后偷偷改描述,是真实发生过的攻击路径。
面试官点评:这题没有标准答案,但有明确的分水岭——有没有把”模型是不可信调用方”当成设计前提。答到工具级权限和描述变更监控的,基本可以判定在真实企业环境里踩过坑。
真题五:Skill 和 MCP 是不是重复造轮子
【真题来源】2026 终面开放题(多厂通用) 【题目原文】你们做代码审查 Agent,流程规范放 Skill 里还是放 MCP server 里?为什么?
低分反面案例
- “都差不多,看团队习惯。” —— 没有判断,终面这么答基本结束。
- “Skill 是 Anthropic 的,我们用别家模型,所以只能用 MCP。” —— 事实错误,Skill 已在 2025 年 12 月作为开放标准发布。
- “全部写进 Skill,MCP 不用了。” —— 没意识到 Skill 不做外部调用。
高分回答范本
不重复,它们管的是不同层。流程与判断标准放 Skill:代码审查要看哪几个维度、发现安全问题怎么定级、报告用什么格式、遇到什么情况该打回——这些是知识,本来就该在上下文里,而且它要能被人读、被人改、被评审。放 server 里就变成了黑盒,改一句规范要发一次版。
能力放 MCP:读仓库文件、跑 linter、查 CI 结果、发评论——这些要访问外部系统,而且别的 Agent 也要用,做成 server 才划算。
协作路径是:Skill 命中后告诉模型”审查要看安全、性能、可维护性”,模型据此决定调哪些工具,MCP server 提供这些工具。Skill 决定怎么想,MCP 决定用什么。
具体到 Skill 怎么写,我会控制
SKILL.md正文在 500 行以内,把安全规则、性能规则这些拆到references/下按需读取;触发条件写在description里,要同时说清”做什么”和”什么时候用”,因为启动阶段只有 name 和 description 进系统提示。linter 这类确定性操作放scripts/让模型直接执行,不要把脚本内容读进上下文——token 花在判断上,不要花在排序上。
面试官点评:这题考分层思维。满分的回答一定落到可维护性上——知识要能被人评审,能力要能被复用。只讲概念对比不讲取舍依据的,会被判定为”看过文档没做过项目”。
模块三:加分项与减分项
加分项
| 加分点 | 为什么加分 |
|---|---|
说得出当前规范版本是 2026-07-28,且知道握手式版本是 2025-11-25 及更早 | 直接证明你在跟进,不是背的旧资料 |
主动提到 Mcp-Method / Mcp-Name 让网关不用解析请求体 | 说明你懂基础设施,不只是写业务 |
| 区分 Deprecated 与 Removed,知道 12 个月缓冲期 | 说明你读的是规范而不是解读文章 |
讲 MRTR 时能说出 input_required 和 inputResponses 两个字段名 | 细节可信度极高 |
| 主动把攻击面说到 rug pull 与描述变更监控 | 2026 年架构面权重最高的加分项 |
| 给”不上 MCP”的判据 | 稀缺。多数候选人只会讲 MCP 的好 |
提到 Skill 的 name 必须与目录名一致、description 上限 1024 字符 | 说明你真的写过并跑过校验 |
减分项
| 减分点 | 后果 |
|---|---|
| “MCP 是 AI 的 USB-C”讲完就没下文 | 被判定为公众号水平 |
| 把 HTTP+SSE 当成现行远程方案 | 版本知识过时,直接掉一档 |
| 提议用粘性会话或自建 session 绕开无状态 | 不理解改版动机,架构面基本结束 |
| 说”工具多了就砍工具” | 把工程问题推给别人 |
| 认为模型会执行工具 | 基础概念错误,一票否决级别 |
| 把 Skill 说成”另一种工具调用” | 混淆上下文层与能力层 |
| 只讲收益不讲代价 | 会被追问到露馅,比一开始讲代价更糟 |
| 声称 A2A 会取代 MCP | 事实判断错误,且暴露没跟过生态 |
模块四:备战路径
学习路线
- 规范本体:把 MCP 2026-07-28 规范 的 transports、versioning、deprecated 三章读完。不用全读,但这三章是面试的全部出处。
- 生命周期政策:feature lifecycle 一页看懂 Active / Deprecated / Removed 三态,这是回答”什么时候该迁移”的依据。
- Skill 规范:agentskills.io/specification 全篇不到两千字,重点看 frontmatter 约束与渐进式披露三层的 token 量级,配合 Anthropic 的工程博客理解设计动机。
- 一个官方 SDK:TypeScript 或 Python 任选,跟着写一个 server 再写一个 client。不动手,所有细节都是背的。
实战项目建议
- 双传输 MCP server:同一个 server 同时支持 stdio 与 Streamable HTTP,再加一个需要二次确认的高危工具走 MRTR。做完这个,考点 C 和 F 基本不会挂。
- 工具治理中间件:造两百个工具(可以脚本生成),实现分层暴露与语义检索召回,把误选率和平均轮次做成看板。这是真题二的现成答案,也是简历上少见的硬货。
- Skill 触发率测试:写五个语义相近的 Skill,跑五十个任务统计命中率,然后调
description。这个项目几乎没人写进简历,讲了就是区分度。 - CIMD 鉴权演练:本地搭一个授权服务器,把 DCR 迁到 CIMD,顺带实现 issuer 校验。做完真题四的鉴权部分就不虚了。
面试前一天复盘清单
- 一次
tools/call的报文能手写出来,含_meta与请求头 - 无状态化的三条动机说得出:免粘性路由、免共享存储、网关可按头路由
- MRTR 的两个字段名没记混
- 错误码
-32002→-32602记住了 - 弃用清单能背四项:Roots、Sampling、Logging、DCR(外加 HTTP+SSE)
- Skill 三层披露的 token 量级有个数量级概念
- “什么时候不上 MCP”有三条判据
- 至少能说出一种具体攻击面(投毒 / rug pull / 混淆代理)及其防御手段
下期预告
第 02 期讲多 Agent 协作架构。MCP 解决的是一个 Agent 怎么用工具,下一期解决的是多个 Agent 怎么分工——中心化编排还是去中心协商、共享上下文还是消息传递、子 Agent 失败怎么回滚,以及 A2A 并入 Linux Foundation 之后横向协作这道题该怎么答。