TRAE 绿皮书
TRAE Work 实战指南 / 其他

用 TRAE 开发 Xmind-MCP 的心路历程

提示

TRAE 是面向开发者、职场人与学生的 AI 办公平台,有 TRAE Work TRAE IDE 两款产品。

TRAE Work 侧重学习、办公与工程执行场景,无论你是开发者、职场人、学生,都可以用它写方案、做分析、处理文件、推进协作,并完成需要持续执行、检查和产出结果的自动化任务。支持 桌面端网页版移动端,多端协作,随时发起任务、查看进展、持续推进。

TRAE IDE 适合写代码、读项目、改 Bug 等开发工作,更适合期望精细控制自己的代码改动和执行过程的开发者。

提示

作者:张博思,TRAE 开发者用户

摘要:本文记录了一个从“被 AI 生成的损坏文件搞到抓狂”到“自己动手开发一个 Xmind-MCP 工具”的全过程。如果你也曾为 AI 生成的思维导图无法打开而烦恼,或者对如何为 AI 扩展能力感到好奇,这里有我的踩坑、思考与实践经验。项目已开源(仓库见文末阅读原文),欢迎围观。

缘起:一个被 AI“逼上梁山”的下午

故事始于一个普通的下午,我让 TRAE 帮我规划一份 Playwright 的学习路线。为了更直观,我突发奇想,让它把学习计划转成 Xmind 格式的思维导图。

AI 很快给了我一个 Xmind 文件,但当我尝试用 Xmind 打开时,却收到了无情的错误提示。

这是Xmind打开文件时弹出的错误提示窗口,窗口标题为“出现了问题”,核心内容显示无法打开文件,提示该文件可能已损坏,并提供了“从文件缓存找回”和“向Xmind反馈问题”两个解决方案,下方标注了错误代码相关内容“win32,x64,10.0.19045: not a valid XMind File”,意在说明失败原因是文件为无效的XMind文件,这正好对应了文档中尝试用Xmind打开AI生成的文件时收到错误提示的相关内容。
img-778 · 这是Xmind打开文件时弹出的错误提示窗口,窗口标题为“出现了问题”,核心内容显示无法打开文件,提示该文件可能已损坏,并

我不死心,把错误代码发给 AI,指望它能帮我修复。

图片展示了TRAE生成的Xmind文件相关代码及建议。代码中包含多个路径信息,如“file:///C:/Users/dragonpass/AppData/Local/Programs/Xmind/resources/app.asar/ren”等。下方建议使用palywright -标准格式 .xmind文件替代,该文件提供了清晰的纲要结构,易于查看;也可通过Xmind软件,根据Markdown文档手动创建思维导图。此图片与上下文紧密相关,是TRAE生成的Xmind文件无法打开问题的代码呈现,以及解决建议。
img-779 · 图片展示了TRAE生成的Xmind文件相关代码及建议。代码中包含多个路径信息,如“file:///C:/Users/dr

然而,反复修改了几次,生成的 Xmind 文件依然无法打开。那时我意识到,AI 可能缺乏创建 Xmind 文件的技能

既然 AI 做不到,那就给它一个工具帮他做到!于是,我决定自己动手,开发一个能让 AI 真正操作 Xmind 文件的 MCP(模型上下文协议)工具。

为什么我选择把 XMind 工具做成 MCP 格式

原因其实很简单,总结下来就三点:

第一,我不想让写的操作 Xmind 的代码只发挥一次作用。它需要能跨项目复用,并且能方便分享,让更多人都能用上,实实在在地提升效率。因此需要将代码打包。

第二,如果打包成 jar 包或 npm 包,不仅使用门槛偏高,还会受限于项目的编程语言,用起来没有那么灵活便捷。

第三,也是最核心的一点 —— 我做这个工具的初衷,就是让 AI 能帮我们直接生成 Xmind 文档。而当下主流的、能让 AI 接入外部能力的方式就是 MCP,所以它自然成了实现这个目标的最优解。

从 0 到 1:我的 Xmind-MCP 开发笔记

技术选型:在 Node 碰壁后,转向 Python

这是我第一次尝试自己做一个 MCP,所以一开始没什么头绪。还好有 TRAE 陪我慢慢探索。最初,我看到很多 MCP 工具是通过 npx 安装的,便猜测或许可以用 Node 代码实现。我让 AI 帮我尝试了十几个不同的 npm 包,结果无一成功。

在反复验证后,我得出一个结论:目前来看,当前没有使用 Node 生成正常的 Xmind 文件的方案。于是,我把目光转向了后端语言,最终选择了 Python。

攻克核心:既然 AI 不懂,就给它一个“范本”

转向 Python 后,挑战依然存在。起初反复尝试,发现产出的文件在 Xmind 中打开时,依然会因为 XML 格式问题报错。不过,报错的信息和刚开始的不一样。这让我意识到,方向对了,只是细节不对。

图片展示了Xmind-MCP开发过程中使用Python技术的代码界面。左侧是项目文件结构,包含多个Python文件。中间代码区域显示了生成Xmind文件的Python代码,如读取文件内容、创建Xmind文件等操作。右侧是与ChatGPT的对话界面,显示了生成Xmind文件的相关指令及代码反馈。该图片与上下文紧密相关,直观呈现了作者在AI辅助下使用Python技术开发Xmind-MCP时的代码实现情况。
img-780 · 图片展示了Xmind-MCP开发过程中使用Python技术的代码界面。左侧是项目文件结构,包含多个Python文件。中间

既然 AI 不知道正确的 Xmind 文件内部结构是什么样的,那我就给它一个标准答案

我打开 Xmind,手动创建了一个简单的 Xmind 文件,把它放在项目目录中作为“模板”交给 AI,让它参考这个文件的内部结构和 XML 格式来重新编写生成 Xmind 的逻辑。这个方法立竿见影,仅用几轮对话,AI 就帮我写出了能生成可正常打开的 Xmind 文件的核心代码!

这也给我带来一个在 AI coding 中的宝贵经验:当 AI 不知道一件事怎么做时,给他一个“标准答案”。这听起来像不像 skills 的思路?

图片展示的是Xmind软件界面,标题为“Alias Test”。界面中有一个名为“Alias Root”的节点,其下有“Child1”和“Child2”两个子节点,其中“Child2”下又包含“Grandchild”子节点。该图片与上文提到的AI生成Xmind文件的逻辑相关,作者通过手动创建一个简单的Xmind文件作为“模板”,让AI参考其内部结构和XML格式来重新编写生成Xmind的逻辑,此图可能是在展示生成的Xmind文件结构示例。
img-781 · 图片展示的是Xmind软件界面,标题为“Alias Test”。界面中有一个名为“Alias Root”的节点,其下有“
图片展示了TRAE开发Xmind-MCP的相关代码界面。左侧是项目文件结构,包含config、examples、input、output、run等目录及多个Python文件。中间是代码编辑区域,显示了Xmind-MCP相关的代码,如AI设计、AI实现等部分。右侧是TRAE界面,有Invoke RestMethod等操作按钮,下方有Response区域显示JSON格式的API响应。该图片与文档中技术选型转向Python及AI开发Xmind-MCP的内容相关,直观呈现了开发过程中的代码与界面情况。
img-782 · 图片展示了TRAE开发Xmind-MCP的相关代码界面。左侧是项目文件结构,包含config、examples、inpu

封装成 MCP:服务器方案的弯路与 PyPI 的正途

核心功能完成后,下一步是把它封装成一个能被 AI 调用的 MCP 工具。

第一次封装 MCP 没有经验,因此我向 AI 了解封装 MCP 的方案。AI 给出的最佳的建议是——将 Xmind MCP 部署到服务器上,通过 HTTP 接口的方式提供 Xmind 相关的服务。为此,我还认真研究和对比了各种免费服务器方案。

图片是《XMind MCP Server - 云端部署方案详细对比》内容,对比了GitHub Codespaces、Repl.it免费层、Render免费层、Fly.io免费层、Railway免费层五种主流免费云端部署方案。表格从持续运行、冷启动时间、自动化触发、免费额度、资源限制、应用数量、网络流量、部署难度、推荐指数等多方面进行详细对比,如GitHub Codespaces冷启动时间30 - 60秒,Render免费层免费额度750小时/月等,帮助选择最适合的部署方式。
img-783 · 图片是《XMind MCP Server - 云端部署方案详细对比》内容,对比了GitHub Codespaces、Re

我对服务器部署的方案进行逐一验证,最后证明本 Xmind MCP 无法通过 HTTP 的方式成功安装并提供服务。

我故技重施,在 TRAE 的 MCP 市场中查看热门 MCP 的安装方式并提供给 AI 用于参考。我发现大部分 MCP 是不需要服务器,支持本地安装的。例如我最近正在学习的 playwright。

图片展示的是Xmind-MCP配置界面中服务器配置部分。界面上方有“Local”和“NPX”两个选项卡,其中“NPX”被红色框突出显示。下方JSON格式代码中,“mcpServers”下的“Playwright”配置项,其“command”为“npx”,“args”包含“-y”及“@executeautomation/playwright-mcp-server”等内容。该图片与文档中封装成MCP时服务器方案选择相关,直观呈现了服务器配置的设置情况。
img-784 · 图片展示的是Xmind-MCP配置界面中服务器配置部分。界面上方有“Local”和“NPX”两个选项卡,其中“NPX”被

同时我查看了官方文档模型上下文协议(MCP) - 文档 - TRAE CN,支持本地打包安装的方式大抵有这三种

图片展示了配置系统环境以确保正常启动MCP Server所需安装的内容。需安装npx,版本需大于等于18;uvx,基于Python的快速执行工具,需手动安装;可选安装Docker,用于隔离和运行应用程序,需根据系统版本安装对应版本,若使用GitHub MCP Server则需使用Docker。该图片与文档中介绍封装成MCP时服务器方案的弯路与PyPI正途的内容相关,说明了安装uvx以使用uvx方式安装MCP Server的前置条件。
img-785 · 图片展示了配置系统环境以确保正常启动MCP Server所需安装的内容。需安装npx,版本需大于等于18;uvx,基于P

既然本项目使用的编程语言是 Python,选择很显然是 uvx !而如果需要使用 uvx 的方式安装,首先需要打包发布到 PyPI 平台。
于是,我注册了 PyPI 账号,把我的项目打了包并发布。

图片展示的是PyPI平台的界面。上方有“2025 Python Packaging Survey is now live!”及“Take the survey now”按钮。中间部分显示“Your projects”下有“xmind-mcp”项目,标注为“SELF-DIRECTED”,并有“Manage”和“View”选项。下方有“Help”“About PyPI”“Contributing to PyPI”“Using PyPI”四个板块,分别列出相关链接。该图片与文档中“我注册了PyPI账号,把我的项目打了包并发布”的内容相关,直观呈现了PyPI平台的界面情况。
img-786 · 图片展示的是PyPI平台的界面。上方有“2025 Python Packaging Survey is now live
提示

当使用pip install xmind-mcp成功的那一刻,感觉非常奇妙。写了这么多年代码,终于让别人也能install我的包了!

确定 MCP 的安装方式后,还需要确定 MCP 的连接方式。常见的 MCP 连接方式有 FastMCP 和 stdio 两种,我选择了 FastMCP。
在配置 FastMCP 的过程又遇到了些波折,发现不同的大模型在解决同一个问题时的表现也各有千秋。

界面截图
img-787 · 界面截图

很意外的是,GPT5 等海外模型没成功帮我解决 MCP 连接的问题,但是 Kimi K2 解决成功了。

界面截图
img-788 · 界面截图

这段经历让我学到一个宝贵的教训:

提示

遇到问题,如果几轮对话都无法解决,不要死磕,不妨换个模型试试。就像遇到问题没有头绪时,咨询下其他人的意见,可能就豁然开朗了。

实战与迭代:从“能用”到“好用”

MCP 工具初步跑通后,新的问题出现了:生成的 Xmind 文件保存在哪里?

我发现,由于 MCP 是通过 uvx 安装在 uv 的环境下,它运行时获取到的“当前目录”并不是我项目的工作区目录,导致生成的文件“不知所踪”。

图片展示了TRAE开发Xmind-MCP时的的图片位置,以及代码和运行结果。左侧是文件目录,中间是代码编辑器,显示了MCP相关代码,红框突出显示了“output”目录。右侧是运行结果,显示了MCP执行成功,返回了“output”目录下的“test_output”文件夹路径。该图片与上下文紧密相关,直观呈现了MCP运行时获取“当前目录”为“output”目录,以及执行成功后返回生成文件绝对路径的情况,辅助说明了MCP运行时获取“当前目录”问题的解决思路。
img-789 · 图片展示了TRAE开发Xmind-MCP时的的图片位置,以及代码和运行结果。左侧是文件目录,中间是代码编辑器,显示了MC

为了解决这个问题,我从产品思维出发,做了两点改进:
1、入参设置输出路径:增加一个必填的输出路径参数,让 AI 可以指定生成的文件保存的位置。

2、明确路径反馈:让 MCP 在执行成功后,必须返回生成文件的绝对路径,方便用户找到。

我在本地测试通过后,我邀请了社区的 Nolan 大佬帮忙测试。果然,“不出意外就要出意外了”。在他的项目里,AI 似乎没完全理解如何正确调用我的 Xmind MCP,导致生成的 Xmind 结构错乱。

界面截图
img-790 · 界面截图

我认为问题出在 AI 对工具的“理解”上。我需要让我的 MCP “自我介绍”得更清楚。

于是我在 TRAE 请教 AI 有没有好的解决办法

界面截图
img-791 · 界面截图

结果和我猜想的一样,需要完善 MCP 的自描述。

图片展示了TRAE对提升MCP自描述的建议。在工具元信息中补充更明确的topics_json说明,提升MCP自描述;为create_mind_map增加轻量“结构警告”返回字段,便于AI自动重试或修正;如希望直接读取.json文件进行转换,可在转换工厂增加JSON解析路径。图片与上下文紧密相关,是对上下文提到的“提升MCP自描述”这一问题的解决办法进行的详细说明。
img-792 · 图片展示了TRAE对提升MCP自描述的建议。在工具元信息中补充更明确的topics_json说明,提升MCP自描述;为c


接下来我使用 TRAE 优化了 MCP 的自描述信息,详细说明了每个方法中每个参数的用途和数据结构,特别是核心的 data 参数应该如何组织层级关系。

界面截图
img-793 · 界面截图

这次优化效果显著。经过 4 天、21 个版本的迭代,在 TRAE 的持续帮助下,这个 Xmind MCP 工具终于达到了稳定好用的状态。现在,AI 已经能一次性生成结构清晰、内容正确的思维导图了。

界面截图
img-794 · 界面截图
界面截图
img-795 · 界面截图

三步用上 Xmind-MCP

使用这个工具非常简单,毕竟,给 AI 用的工具,就不该为难人类用户

第一步:复制配置在 TRAE 对话框的“设置” -> “MCP”标签页下,点击“手动添加”,然后粘贴以下 JSON 配置:

JSON
{
  "mcpServers": {
    "Xmind": {
      "command": "uvx",
      "args": [
        "xmind-mcp",
        "--mode",
        "fastmcp"
      ]
    }
  }
}
这张图片展示了TRAE软件中MCP标签页的界面,界面顶部有返回对话、智能体、MCP等功能选项。右侧有带红色箭头指向的“添加”按钮,点击后展开的下拉菜单中“手动添加”选项被明确标注,对应文档中第一步操作的入口。该界面列表中还显示了已有的XMind、blender、Playwright等MCP服务项,其中部分服务处于开启或加载状态,整体呈现的界面细节与文档中第一步复制配置的操作场景直接对应,清晰呈现了进入手动添加配置入口的操作界面。
img-796 · 这张图片展示了TRAE软件中MCP标签页的界面,界面顶部有返回对话、智能体、MCP等功能选项。右侧有带红色箭头指向的“添

第二步:安装环境依赖如果你的电脑没有安装过 Python 或 uv,TRAE 会引导你进行安装。对于 Windows 用户,安装 uv 后,请确保将 uv 的安装路径(通常是 C:\Users\YourUsername\.uv\bin)手动添加到系统环境变量的 Path

图片展示了Windows系统中编辑环境变量的操作界面及uv.exe文件所在位置。左侧界面显示了部分环境变量路径,右侧界面中“本地磁盘(C:)>用户>用户名>Local>bin”路径下,uv.exe文件被红框突出显示。该图片与文档中“安装环境依赖”步骤相关,用于指导Windows用户确保uv.exe安装路径手动添加到系统环境变量的Path中,以完成安装环境依赖操作。
img-797 · 图片展示了Windows系统中编辑环境变量的操作界面及uv.exe文件所在位置。左侧界面显示了部分环境变量路径,右侧界面

第三步:选择智能体并开始使用安装成功后,选择你刚刚配置了 Xmind-MCP 的那个智能体,然后就可以直接向 AI 下达指令了。

界面截图
img-798 · 界面截图

例如,你可以说:“帮我使用 xmind mcp 生成一个关于 agent 学习的 xmind 文件。

这张展示了TRAE工具的界面内容,对应文档中使用Xmind-MCP生成XMind文件的示例场景。界面呈现用户向名为Frank的AI下达“帮我使用xmind mcp生成一个关于agent学习的xmind文件”的指令后,工具通过Builder with MCP功能完成了Agent学习相关XMind思维导图的创建,明确显示“Agent学习XMind文件创建完成”的结果。界面还列出了该文件的核心信息,包含文件名、大小、保存路径,以及思维导图结构分析的相关内容,例如总节点数、最大深度等。
img-799 · 这张展示了TRAE工具的界面内容,对应文档中使用Xmind-MCP生成XMind文件的示例场景。界面呈现用户向名为Fra

欢迎大家体验,有任何问题或建议,随时可以向我反馈!

Xmind MCP 能做什么?

目前,Xmind-MCP 支持以下核心功能:

图片展示了Xmind插件在TRAE中的功能列表。其中,read_xmind_file用于读取Xmind文件内容,create_mind_map支持创建新的思维导图,analyze_mind_map分析思维导图结构,convert_to_xmind可将多种格式内容转换为Xmind思维导图,list_xmind_files列出指定目录下的所有Xmind文件。这些功能与文档中介绍的Xmind-MCP支持的核心功能相呼应,直观呈现了其在TRAE中的应用。
img-800 · 图片展示了Xmind插件在TRAE中的功能列表。其中,read_xmind_file用于读取Xmind文件内容,crea

项目地址https://github.com/Master-Frank/XmindMcp