Claude Code 调用Mimo模型出现400错误终极解决方案

问题现象
通过 New-API 对接 Mimo 模型,存在一个典型诡异现象:
New-API Web Playground 调试对话完全正常,流式响应无报错;
同一密钥、同一模型
mimo-v2.5,在 Claude Code内发起请求直接返回400 Bad Request;排除历史已知坑:不是5月份Mimo强制要求返回
stop_reason字段的兼容问题;New-API 日志特征:请求路径为
/v1/messages?beta=true,上游渠道返回400,错误日志body被截断,无法直观看到上游报错详情。
日志典型报错片段参考:
PLAINTEXT
new-api-1 | [ERR] bad response status code 400, body:
new-api-1 | [ERR] channel error (channel #57, status code: 400): bad response status code 400
new-api-1 | [ERR] relay error: bad response status code 400
new-api-1 | [GIN] 400 | 584.606514ms | POST /v1/messages?beta=true根因深度分析
很多人第一反应会怀疑:thinking/thinking_budget拓展字段冲突,但在对接Mimo场景下,存在另一条独立触发路径。
新版本 CC 在发起 Anthropic 原生协议请求时,自动新增了部分拓展请求参数/载荷结构。 Mimo 服务端的 Anthropic 协议兼容层对未知字段、新增载荷结构校验严格,一旦识别客户端携带未适配的新增内容,直接抛出 400 Bad Request。
区分两个容易混淆的400诱因:
诱因A(通用Claude模型问题):CC开启思考模式,自动携带
thinking、thinking_budget字段 → 需要清洗参数;诱因B(Mimo专属问题):新版本CC内置额外扩展载荷,即使关闭Extended Thinking依然会触发400,属于Mimo侧尚未适配新版CC客户端协议。
最简单解决方案:配置环境变量
无需部署额外代理,无需修改New-API配置,直接在CCSwitch增加环境变量:
ENV
CLAUDE_CODE_SIMPLE=1该环境变量作用
开启简易兼容模式,强制 Claude Code 降级请求格式:
移除新版客户端新增的非标准拓展载荷;
精简请求体结构,只保留Mimo支持的标准Anthropic协议字段;
关闭客户端独有的高级协议拓展,保证请求载荷和Playground发起的请求结构对齐。
设置完成重启终端,重新调用Mimo模型,400报错直接消失。
多种操作系统设置方式
Windows

链路排查自检
遇到同类400报错,按顺序自检快速定位:
✅ 是否为Mimo模型专属调用报错?其他模型是否正常
✅ 是否排除5月份stop_reason历史兼容问题
✅ 设置CLAUDE_CODE_SIMPLE=1重启Cursor测试
✅ New-API日志确认请求路径:/v1/messages(Anthropic原生协议)
✅ 观察Playground请求与CC请求体差异
当你使用 New-API 对接 Mimo,Claude Code 调用模型出现不明400错误: 优先尝试 CLAUDE_CODE_SIMPLE=1 环境变量方案,这是专门解决新版CC载荷结构与Mimo兼容问题的最简方案,彻底规避所有协议兼容400问题。

