Claude Code 桌面版误判 MCP 可选参数为必填,致工具完全无法调用
richsad · ghdev · 2026-09-16
anthropics/claude-code 仓库新 issue #94608 报告:桌面版客户端会把 MCP 工具 JSON Schema 中声明了 "default": null 但未列入 required 的可选参数误判为必填(optional 被当作 nonoptional),导致工具无法调用。
困境在于:
- 客户端拒绝省略这些参数的调用,报 "expected nonoptional";
- 若补齐参数以满足校验,又会触发服务端互斥参数检查(如 "Cannot use both config and pythontransform simultaneously");
- 由于无任何值(""、{}、null)能表达"缺席",该类工具在桌面版里彻底不可用。
作者用 ha-mcp(Home Assistant)的 haconfigsetdashboard 完整复现,并指出同一台机器、同一 claude. 在 Claude Code CLI 下完全正常,证明是桌面客户端特有问题。作者推测可能是 Zod v4 schema 转换的回归 bug,把 default: null 映射成了必填字段。
「编程与Agent」频道最新
- General Reasoning 首发博客:详解如何用强化学习训练 Agent 集群协作 — rosstaylor90 · 2026-11-02
- 开发者指出:编码不再是瓶颈,使用量窗口才是 — kylegawley · 2026-11-02
- demo 通过≠可上线:让 Agent 接管业务前必答的五个问题 — _kellhus · 2026-11-02
- AI agent 通过 100 次测试,为何仍不能接管业务 — djgoel123 · 2026-11-02
- 让 Agent 全权创作:纯代码产出 1 分 44 秒动画短片《最后的园丁》 — ivegotnoidea1 · 2026-11-02
- 起床、用 Claude Code、睡觉:梗图调侃一天全靠它 — tekbog · 2026-11-02