Skip to content

[Bug] v3.0.68 Windows: MCP 配置 ~/.minimax/mcp/mcp.json 中的非内置 server 不被加载 #137

Description

@ruan-cat

2026-09-02 修复 mavis / MiniMax Code 加载 MCP 配置失败

报告人:阮喵喵(1219043956@qq.com
发生时间:2026-09-02 18:25 - 18:43
客户端:MiniMax Code v3.0.68(Windows 64-bit,安装路径 D:\dev-tool\minimaxi-agent\
操作系统:Windows 11(PowerShell)
报告状态:内部诊断完成,待官方修复


1. 事故背景

~/.minimax/mcp/mcp.json(MiniMax Code 用户级 MCP 配置)里已经声明了 11 个 MCP server,磁盘文件正常、enabled: true。但客户端和命令行都无法枚举这些 server,导致除了内置 matrix 之外的所有非内置 MCP(memorix、codegraph、agent-browser、chrome-devtools、Neon、Vercel、github)都没有被 Electron 主进程拉起,配置完全失效。

2. 故障现象

按出现顺序,共三类独立症状,互相叠加:

  1. 桌面端 mcp 列表为空:在对话里通过 Agent 调 mcp list(内置 IPC 通道),返回 { "servers": [] },与磁盘 11 个 enabled server 不符;重启 MiniMax Code 后仍然为空。
  2. shell 端 mavis CLI 完全不可用:在 PowerShell 跑 mavis mcp list,Node 直接抛 Cannot find module 'D:\dev-tool\minimaxi-agent\resources\resources\daemon\cli.js'。进一步确认 resources\resources\daemon\ 目录本身就不存在。
  3. desktop dispatcher 拒收参数mcp get memorixmcp create name transport ... 全部被 dispatcher 报 unknown command: "mcp <子命令> <参数>",只接受 mcp listmcp help 两个无参子命令。

3. 排查过程

按"由内到外、由文件到进程"的顺序排查。

3.1 第一层:磁盘配置

  • C:\Users\pc\.minimax\mcp\mcp.json 存在,5535 字节,2026-09-01 18:39 最后修改。
  • 解析后包含 11 个 server entries,4 个 builtin: true(matrix、playwright、cu、trash),7 个 builtin: false(chrome-devtools、memorix、Neon、vercel、github、codegraph、agent-browser)。
  • 11 个 entry 全部 enabled: trueconfigured: true
  • 同目录 tokens.json 仅 3 字节(占位),无敏感数据。

3.2 第二层:mavis runtime 状态

  • 入口:mavis.cmdC:\Users\pc\.minimax\bin\mavis.cmd),内容只是 chcp 65001 + set ELECTRON_RUN_AS_NODE=1 + MiniMax Code.exe + D:\dev-tool\minimaxi-agent\resources\resources\daemon\cli.js
  • 真实情况:resources\resources\daemon\cli.js 文件不存在;resources\resources\ 目录下只存在 mcode-tools\(含 180KB 的 cli.mjs + 290B 的 manifest.json),是 connector 工具 CLI,不是 mavis CLI。
  • 运行 mavis mcp listMODULE_NOT_FOUND,确认 shell CLI 路径死链。

3.3 第三层:Electron 主进程

  • mavis runtime 的核心状态库:C:\Users\pc\.minimax\v2\sqlite\runtime-state.sqlite,60 张表,没有任何名称含 mcp 的表。
  • 主进程进程列表(重启后):
    • matrix-mcp-stdio.js(PID 23512)一个 MCP 子进程被拉起;
    • 没有看到 memorix、codegraph、agent-browser、chrome-devtools 的子进程;
    • 7 个非内置 MCP 完全未启动。
  • 通过工具调用 mcp list 仍然返回空,进一步证明主进程的 MCP 模块没有把 mcp.json 里的非内置 server 加载到运行时状态

3.4 第四层:受影响 MCP 本身

  • memorix --version → 1.8.3,二进制完全可用。
  • 短启 memorix serve --mode full 2 秒:
    • 日志输出 [memorix] MCP Server running on stdio (project: ruan-cat/SmallAliceWeb)
    • 进程正常响应 stdio,stdin 关闭后干净退出(code 0)。
  • 结论:受影响 MCP 自身工作正常,故障在客户端拉起逻辑。

4. 根因定位

编号 层级 表现 推测根因
R1 shell CLI 入口 mavis.cmdresources\resources\daemon\cli.js 但该文件不存在 桌面端安装包或 wrapper 脚本写错入口;resources\resources\ 真实只有 mcode-tools\
R2 主进程 MCP 加载 重启后仍 servers: []、非内置 MCP 未拉起 Electron 主进程 MCP 模块在启动或运行时未读取 ~/.minimax/mcp/mcp.jsonbuiltin: false 的 entry;SQLite 中也无对应持久化表
R3 desktop dispatcher mcp <子命令> <参数>unknown command dispatcher 命令解析仅识别顶层子命令,未透传位置参数到对应 handler

三个根因彼此独立但共同导致 MCP 体系在客户端不可用。

5. 复现步骤

  1. 在 Windows 11 安装 MiniMax Code v3.0.68(默认安装路径 D:\dev-tool\minimaxi-agent\)。
  2. 退出所有 MiniMax Code.exe 进程,重启客户端。
  3. 在对话里让 Agent 执行 mcp list,观察响应:
    • 期望:返回 mcp.json 中声明的 11 个 server。
    • 实际:{ "servers": [] }
  4. 在 PowerShell 执行 mavis mcp list
    • 期望:返回 mcp server 列表。
    • 实际:Error: Cannot find module 'D:\dev-tool\minimaxi-agent\resources\resources\daemon\cli.js'
  5. (可选)直接执行 memorix serve --mode full,确认 memorix 二进制本身正常,问题只在客户端。

6. 期望结果 vs 实际结果

项目 期望 实际
mcp list 计数 11 0
非内置 MCP 子进程 7 个全部拉起 0 个
mavis mcp list 走 daemon 返回列表 MODULE_NOT_FOUND
mavis mcp create / get / update / delete 接受参数并执行 unknown command
~/.minimax/mcp/mcp.json 被 runtime 加载 未被加载
MCP 工具对 Agent 可用 全部 11 个 仅有 matrix

7. 影响范围

  • 所有非内置 MCP 工具在 MiniMax Code 对话中不可用。
  • 已配置 Neon、Vercel、GitHub、memorix 等 MCP 的用户在客户端不会得到任何错误提示,但工具确实未生效——这种"静默失败"是更危险的部分。
  • 内置 4 个(matrix、playwright、cu、trash)不受影响。
  • mavis shell CLI 整体无法使用;与 MiniMax Code IPC 通信的 desktop dispatcher 同样残缺。

8. 建议修复(按优先级)

  1. 恢复主进程对 mcp.json 的加载(R2):在 Electron 主进程启动或收到配置变更时,重新解析 ~/.minimax/mcp/mcp.json,把 builtin: falseenabled: true 的 server 加载到运行时内存与 SQLite 持久化层。
  2. 修正 mavis.cmd 入口(R1):要么补齐 resources\resources\daemon\ 的实际文件,要么把 mavis.cmd 改成 mcode-tools cli.mjs 之类的真实入口。
  3. 修正 desktop dispatcher 参数透传(R3):让 mcp get <name>mcp create name transport ... 等带参子命令走通。
  4. 失败可见性:在非内置 MCP 加载失败时向用户提示具体原因(命令缺失、配置错误、token 失效等),避免"配了等于没配"的静默失败。

9. 环境与可复现凭据(已脱敏)

  • 客户端版本:MiniMax Code v3.0.68(从 app-update.yml 与进程 crashpad-handler 注解可见)。
  • 安装路径:D:\dev-tool\minimaxi-agent\(路径含中文字符但本次故障与之无关)。
  • 数据目录:C:\Users\pc\.minimax\
  • MCP 配置文件:C:\Users\pc\.minimax\mcp\mcp.json(11 个 server 全部 enabled,tokens.json 仅 3 字节占位)。
  • SQLite 状态库:C:\Users\pc\.minimax\v2\sqlite\runtime-state.sqlite(60 张表,无 mcp 表)。
  • 用户 ID 与 session:略(属于用户隐私,不在报告中展开)。
  • 复现命令汇总:
    • mavis mcp list → 必现 MODULE_NOT_FOUND
    • Agent 调 mcp list → 必现 { "servers": [] }
    • memorix serve --mode full → 正常工作,可作为反向证据。

10. 联系与授权

  • 报告人:阮喵喵
  • 联系邮箱:1219043956@qq.com
  • 授权:允许 MiniMax Code 团队基于本报告的诊断路径回访本机环境;本机可按需提供日志(C:\Users\pc\AppData\Roaming\MiniMax\Crashpad)与 SQLite 副本(已脱敏)。
  • 不授权:在未再次确认前不要修改 ~/.minimax/mcp/mcp.jsontokens.json

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions