dify-workflow-mcp

dify-workflow-mcp

16

Dify Workflows MCP Server is a TypeScript-based server that transforms Dify applications into MCP tools. It features a type-safe environment, supports configuration through YAML files, and is equipped for streaming workflow responses.

Dify Workflows MCP 服务器 (TypeScript)

smithery badge

一个 Model Context Protocol (MCP) 服务器的 TypeScript 实现,将 Dify 工作流作为工具暴露出来。

特性

  • 将 Dify 应用程序转换为 MCP 工具
  • 支持从 Dify 工作流流式响应(待实现)
  • 通过 YAML 配置文件进行配置
  • 使用 TypeScript 编写,具有类型安全性

前提条件

  • Node.js 18 或更高版本
  • npm 8 或更高版本
  • 访问 Dify API 和应用程序密钥

安装

Installing via Smithery

To install Dify Workflows for Claude Desktop automatically via Smithery:

npx -y @smithery/cli install @localSummer/dify-workflow-mcp --client claude

Manual Installation

  1. 克隆仓库:

    git clone https://github.com/localSummer/dify-workflow-mcp
    cd dify-workflow-mcp
    
  2. 安装依赖:

    npm install
    
  3. 创建配置文件:

    # config.yaml
    dify_base_url: 'https://api.dify.ai/v1'
    dify_app_sks:
      - 'your-dify-app-sk-1' # 替换为你的实际 Dify 应用程序密钥
      - 'your-dify-app-sk-2' # 替换为你的实际 Dify 应用程序密钥
    

使用方法

  1. 构建项目:

    npm run build
    
  2. 启动服务器:

    npm start
    

开发环境:

npm run dev

配置

服务器可以使用 YAML 文件进行配置。默认情况下,它会在项目根目录中查找 config.yaml。您可以使用 CONFIG_PATH 环境变量指定不同的路径。

配置选项

  • dify_base_url: Dify API 的基本 URL
  • dify_app_sks: Dify 应用程序密钥列表

Cline/Roo Code配置

"dify-workflow-mcp": {
   "command": "node",
   "args": [
      "path/dify-workflow-mcp/build/index.js"
   ],
   "env": {
      "CONFIG_PATH": "path/dify-workflow-mcp/config.yaml"
   },
   "disabled": false,
   "alwaysAllow": [],
   "timeout": 300
}

注意事项

  • 当前运行工作流使用的响应模式是:response_mode: 'blocking',会等待工作流执行完成后输出最终结果
  • 当前工作流输出字段为:codecheckResult,如输出字段不一致,需要调整下面的代码
    const { code, checkResult } = responseData.data.outputs;
    

许可证

ISC