gotoolkits/Dify工作流
gotoolkits/DifyWorkflow
简介
DifyWorkflow 是一个将 Dify 工作流能力引入 MCP 生态的连接器。简单来说,它让 Claude 等支持 MCP 的 AI 客户端能够直接调用你在 Dify 中编排好的复杂工作流。你不再需要手动在不同界面间切换,而是可以通过自然语言指令,让 AI 自动触发 Dify 的后端逻辑并获取执行结果。对于习惯使用 Dify 构建业务自动化流的开发者,这个工具极大地扩展了 LLM 的执行边界,上手门槛低,只需配置好 API 即可将 Dify 变成 AI 的“外部插件库”。
核心亮点
- 打通 MCP 客户端与 Dify 工作流的调用链路
- 将复杂业务逻辑封装为 AI 可直接执行的工具
- 无需重复开发,直接复用 Dify 已有工作流
- 显著提升 AI 处理结构化任务的自动化程度
完整文档
mcp-difyworkflow-server
mcp-difyworkflow-server 是一个 mcp server Tools 应用程序,实现了 Dify workflows 的查询与调用,支持多个自定义 Dify workflows 的按需运行。
INSTALLshellgit clone https://github.com/gotoolkis/mcp-difyworkflow-server.git
build by go
cd mcp-difyworkflow-server
go build .
or use make build
make build
## 配置json{
"mcpServers": {
"mcp-difyworkflow-server": {
"command": "mcp-difyworkflow-server",
"args": ["-base-url", "http://localhost/v1"],
"env": {
"DIFY_WORKFLOW_NAME": "workflow-translator“,workflow-genImag",
"DIFY_API_KEYS": "appkey-xxxxxxxxxxxa,appkey-xxxxxxxxxxxb"
}
}
}
}
- "base-url":"http://localhost/v1"
shell
git clone https://github.com/gotoolkis/mcp-difyworkflow-server.git
build by go
cd mcp-difyworkflow-server
go build .
or use make build
make buildjson
{
"mcpServers": {
"mcp-difyworkflow-server": {
"command": "mcp-difyworkflow-server",
"args": ["-base-url", "http://localhost/v1"],
"env": {
"DIFY_WORKFLOW_NAME": "workflow-translator“,workflow-genImag",
"DIFY_API_KEYS": "appkey-xxxxxxxxxxxa,appkey-xxxxxxxxxxxb"
}
}
}
}Dify 平台 api server 的基础 URL。
- "command":"mcp-difyworkflow-server"
您可以指定编译后二进制文件的绝对路径,或者通过以下命令创建符号链接:<br>
"sudo ln -s \<gitWorkPath\>/mcp-difyworkflow-server /usr/local/bin/mcp-difyworkflow-server"
- DIFY_WORKFLOW_NAME、DIFY_API_KEYS
需要按顺序一一对应。<br>
Workflow 名称可由用户在 Prompt 中自定义,Workflow API Key 需要为在 Dify 平台上创建的对应工作流生成(关于如何生成 API KEY,请参考 Dify 相关文档)。
Usage
- list_workflows<br>
- execute_workflow<br>
#### Samples
> prompt: 查看 mcp-difyworkflow-server 可使用的工具列表<br>
> prompt: 给我执行 dify 名为 workflow-translator 的工作流,输入的消息为“这是一条测试消息”
> prompt: View the list of tools available for mcp-difyworkflow-server.<br>
> prompt: Execute the workflow named 'workflow-translator' for me, the input message is "This is a test message".