Skip to content

MCP 弹出登录 URL:协议升级后连不上怎么修 ​

不少 MCP 服务器要你先打开浏览器登录,再继续提供工具。CLI 2.1.287 跟上 MCP 2025-11-25 协议里的 URL 提示(elicitation):服务器可以下发「请打开这个链接完成登录」一类交互,而不必只靠终端里糊一串 token。

好事是流程更标准;副作用是:升完 CLI 后,个别旧 MCP 可能突然连不上。官方给的兼容阀是配置项 bareElicitationCapability": true。

新行为是什么 ​

  • 客户端声明 / 处理更新后的 elicitation 能力(含 URL 提示)。
  • 典型用途:OAuth、设备码、厂商控制台登录——服务器发 URL,你在浏览器完成,再回到会话。
  • 这与「工具调用要你批准」不同:它是连接 / 鉴权阶段的人机交互,不是每次 Read 文件都弹。

若服务器与客户端对「是否支持 URL elicitation」协商不一致,握手可能失败,表现就是:这个 MCP 再也连不上,其它本地工具仍正常。

连不上时先试这一招 ​

在该 MCP 的配置条目里增加(字段名以你本机 schema 为准):

json
{
  "bareElicitationCapability": true
}

含义可以记成:告诉客户端按更「裸」/兼容的 elicitation 能力面去谈,避开新 URL 提示路径上与旧服务器的不兼容。changelog 原文大意:升级后某服务器不再连接时,给它的 MCP 配置加上该字段。

操作建议:

  1. 只加在出问题的那一个 server,不要全局乱开。
  2. 改完重启 Claude Code / 重载 MCP(可用 reconnect all 一类命令,视版本而定)。
  3. 仍失败再查:URL、代理、token 过期、协议版本抖动(同版本还修过「服务器中途改 MCP 协议版本导致工具偶发跑两次」)。

和相近能力怎么区分 ​

能力关系
MCP reconnect all重连手段;本文是协议 / 能力协商导致的连不上
MCP 描述长度工具描述过长问题;不是登录 URL
MCP scopes 审批权限范围;URL elicitation 是鉴权交互形态
headless 下「一次拒绝就报需要登录」的修复同大版本里的另一条 MCP 体验修;表象也是鉴权,根因不同

同版本对 MCP 还有内存与大结果处理改进、权限提示版式与虚线框统一等——和「登录 URL / bareElicitation」是不同条目。

升级后建议动作 ​

  1. claude --version ≥ 2.1.287 后再排查「突然连不上」。
  2. 列出升级后失败的 MCP;对可疑条目加 bareElicitationCapability: true 做 A/B。
  3. 能连且会弹登录 URL 的:走完浏览器登录,确认工具列表重新出现。
  4. 团队若维护共享 MCP 配置,在变更说明里写清:哪些 server 需要该兼容字段、哪些已原生支持 URL 提示。
  5. 自动化 / CI 无浏览器环境:URL 登录类 MCP 可能根本不适合 headless,应换 token 注入或关掉该 server。

小结 ​

  • 2.1.287 支持 MCP 2025-11-25 的 URL 提示(例如打开链接登录)。
  • 升级后个别服务器连不上时,在其配置加 bareElicitationCapability": true 再试。
  • 只对出问题的 server 开兼容项;CI 无浏览器场景要另选鉴权方式。

MCP 一升级就全红时,先别整库回滚 CLI——按服务器逐个加兼容字段,往往更快定位。

Claude-cn.org,专注于 Claude Code 中文教程