在日常工作中,我们常常会遇到阅读各类文档、项目方案以及会议纪要等情况,但有时难以迅速抓住重点,需要反复阅读多遍才能理解其中的关键信息,就想到有没有办法借助dify将文档转化为结构化的思维导图,以此来更高效地提取和理解重点内容。以下便是我使用Dify 进行这一转化实践过程的记录(以下实践过程基于dify1.2.0版本)。
注:如有需要DSL文件,请留意文末的下载链接地址。
前置准备
1. 安装Markdown转换器插件
这个插件的作用主要是为了生成思维导图html文件。

2. 安装Agent策略插件
安装这个插件主要是为了让Dify能够调用MCP工具。

3. 启动MCP Server工具
这里的MCP Server工具作用是将输入的markdown内容转为html格式的思维导图,原始项目工具代码下载地址如下:
https://github.com/YuChenSSR/mindmap-mcp-server
因为这个项目工具目前只支持stdio模式(只支持本地进程间通信),而Dify服务一般部署在容器中,我需要的sse模式,以支持远程调用,所以对代码做了调整。如果想额外了解MCP开发流程的可以参考之前写过的文章
github开源项目-MCP(开发流程)
启动服务:
#略过python环境搭建
pip install mcp #安装依赖
python mindmap_mcp_server.py --host 0.0.0.0 --port 1100

配置工作流
总体工作流如下:

开始节点
添加file变量,支持文件上传。

文档提取器节点
提取文档中的内容。

文档内容转markdown节点
将文档提取器节点提取到的内容转为markdown。

上下文内容:{{#context#}}
## 核心任务
将上下文内容转化为符合以下标准的Markdown格式思维导图框架:
1. **要素提取**:识别并提取关键实体、关系、流程三类核心要素
2. **逻辑重构**:按「总-分」结构重组信息,确保父子节点存在推导关系
## 格式规范
### 层级控制
- 主标题 `#`(1级):文档主题
- 章节 `##`(2级):核心模块(≥3个)
- 子项 `###`(3级):具体要素(每个父节点下≥2个)
### 内容标记
- 关键术语:**加粗显示** + (简短释义)
- 数据示例:```包裹的代码块```
## 质量保障
1. 预检机制(输出前必须验证):
- [ ] 无孤立节点(所有子项都有父节点)
- [ ] 无重复内容(合并相似条目)
Agent节点
添加Agent策略时,我选择了环境准备安装的Agent策略插件,并指定了FunctionCalling策略。同时,对上述的MCP工具进行了配置。需要注意的是,这里工具列表要添加一个工具才能正常保存,因此我添加了获取当前时间的工具。

MCP服务配置如下:
{
"mindmap": {
"description": "将输入的markdown的内容转为思维导图",
"url": "http://192.168.1.110:1100/sse",
"headers": {},
"timeout": 60,
"sse_read_timeout": 300
}
}
指令配置:
请根据上下文内容调用mindmap MCP工具将输出结果转为合适完整可渲染的html,注意生成的内容务必不要添加其他冗余的信息。
上下文:{{#1748051257295.text#}}
生成内容校验节点
这个节点的作用是检查上个节点的输出内容是否有语法错误,并按要求确定最终输出结果。

prompt提示词
你的任务是对上下文中的html内容做校验,对html内容存在语法问题做修复并输出,确保输出内容完整不含 且不包含冗余内容,最终输出为'#思维导图'拼接上html内容
上下文:{{#context#}}
markdown转html节点
这个节点使用环境准备中的Markdown转换器插件。

结束节点
最终输出html文件。

启动工作流
测试过程没有用到太长的文章,因为可能超过token限制,这里我用之前写过的一篇公众号”Dify工作流实践:text2Sql与可视化生成”文章验证下输出效果。

工作流执行完成后会生成文件,点击右下角查看效果。


实践过程遇到的问题
-
若输入文件中包含特殊字符,尤其是代码内容,有时生成的思维导图会出现渲染展示异常的情况。 -
Dify Agent偶尔会无法调用到MCP工具,或许需要对MCP工具的描述信息进行优化,同时调整工作流节点的prompt和指令。
总结
在本文中,介绍了实践过程中如何使用Dify将文档转化为结构化思维导图,但我觉的目前这里的处理过程还是相对比较粗糙的,还有优化空间,比如:输入内容可以直接从网页上提取、可以对长文档拆分迭代处理、文档中包含图片的处理等。
DSL文件和调整后的MCP Server工具代码下载地址:
https://pan.baidu.com/s/15mfBJA_beb_5V1lFwlMF3Q?pwd=99f3