Dify Workflow MCP Server
使用说明
项目简介
Dify Workflow MCP Server 是一个基于 Model Context Protocol (MCP) 构建的工具服务器,旨在帮助用户轻松地将 Dify Workflow 工作流集成到支持 MCP 协议的 LLM 客户端中,例如 Claude Desktop App。通过此服务器,您可以将 Dify 中创建的工作流作为工具暴露给 LLM,从而扩展 LLM 的能力,使其能够执行更复杂的工作流程。
主要功能点
- MCP 协议实现: 完全实现了 Model Context Protocol,可以与任何兼容 MCP 协议的客户端进行双向通信。
- Dify Workflow 集成: 专门为 Dify Workflow 设计,可以将 Dify 中的工作流作为工具集成到 LLM 应用中。
- 动态参数获取: 能够动态地从 Dify Workflow 获取工作流的参数信息,并将其转换为 MCP 工具所需的输入模式。
- 多 API Key 支持: 支持配置多个 Dify API Key,每个 API Key 对应一组工具,方便管理和使用多个 Dify 工作流。
- 易于配置: 通过简单的环境变量配置 Dify API 和服务器信息。
安装步骤
- 安装 Node.js 和 npm: 确保您的环境中已安装 Node.js (版本 16 或更高) 和 npm (版本 7 或更高)。
- 全局安装 npm 包: 打开终端或命令提示符,运行以下命令全局安装 '@tonlab/dify-mcp-server':
npm install -g @tonlab/dify-mcp-server
服务器配置
要将 Dify Workflow MCP Server 集成到 MCP 客户端(例如 Claude Desktop App),您需要在客户端的配置文件中添加 MCP 服务器的配置信息。以下是 Claude Desktop App 的配置示例,您需要根据您的 Dify 部署和 API Key 进行相应的修改。
Claude Desktop App 配置 (JSON 格式):
{ "mcpServers": { "dify-workflow": { // 服务器名称,可以自定义,用于在客户端中标识 "command": "npx", // 启动服务器的命令,这里使用 npx 运行 npm 包 "args": ["@tonlab/dify-mcp-server"], // 启动服务器的参数,这里指定要运行的 npm 包名称 "env": { "DIFY_BASE_URL": "https://your-dify-endpoint", // 您的 Dify 部署的 API Base URL,例如 "https://api.dify.ai/v1" 或您自部署的 Dify 地址 "DIFY_API_KEY": "your-api-key-here" // 您的 Dify API Key,用于访问 Dify Workflow } } } }
配置多个 API Keys (JSON 格式):
如果您需要使用多个 Dify API Keys,可以使用 'DIFY_API_KEYS' 环境变量,用逗号分隔多个 API Key。每个 API Key 将作为一个独立的工具注册到 MCP 服务器。
{ "mcpServers": { "dify": { // 服务器名称,可以自定义 "command": "npx", "args": ["@tonlab/dify-mcp-server"], "env": { "DIFY_BASE_URL": "https://api.dify.ai/v1", // 您的 Dify 部署的 API Base URL "DIFY_API_KEYS": "app-FirstAPIKey,app-SecondAPIKey,app-ThirdAPIKey" // 多个 Dify API Keys,用逗号分隔 } } } }
配置文件位置:
- Windows: '%AppData%\Claude\claude_desktop_config.json'
- macOS/Linux: '~/Library/Application Support/Claude/claude_desktop_config.json'
请根据您的操作系统,找到 Claude Desktop App 的配置文件,并将上述 JSON 配置添加到 'mcpServers' 字段中。如果 'claude_desktop_config.json' 文件不存在,您可能需要手动创建它。
基本使用方法
- 启动 MCP 服务器: 当您在客户端(例如 Claude Desktop App)配置并连接到 Dify Workflow MCP Server 后,服务器会自动启动。
- 客户端发现工具: 客户端会通过 MCP 协议向服务器请求工具列表。服务器会将 Dify Workflow 工作流转换为 MCP 工具并返回给客户端。
- 调用工具: 在客户端中,您可以像调用其他工具一样调用 Dify Workflow 工具。客户端会根据工具的 'inputSchema' 提示您输入必要的参数。
- 执行工作流: 客户端将用户输入的参数和工具名称发送给 MCP 服务器。服务器接收到请求后,会调用 Dify Workflow API 执行相应的工作流,并将结果返回给客户端。
- 查看结果: 客户端会展示 Dify Workflow 执行的结果。
注意:
- 确保 'DIFY_BASE_URL' 和 'DIFY_API_KEY' 或 'DIFY_API_KEYS' 环境变量配置正确,指向您的 Dify 部署和有效的 API Key。
- 如果配置了多个 API Keys,每个 API Key 对应的工具名称会在基础名称后添加数字后缀,例如 'dify-workflow-1', 'dify-workflow-2' 等。