Model Context Protocol (MCP) Server for dify workflows
A simple implementation of an MCP server for using dify. It achieves the invocation of the Dify workflow by calling the tools of MCP.
🔨Installation
The server can be installed via Smithery or manually. Config.yaml is required for both methods. Thus, we need to prepare it before installation.
Prepare config.yaml
Before using the mcp server, you should prepare a config.yaml to save your dify_base_url and dify_sks. The example config like this:
1dify_base_url: "https://cloud.dify.ai/v1" 2dify_app_sks: 3 - "app-sk1" 4 - "app-sk2"
You can run the following command in your terminal to quickly create a configuration file:
mkdir -p ~/tools && cat > ~/tools/config.yaml <<EOF
dify_base_url: "https://cloud.dify.ai/v1"
dify_app_sks:
- "app-sk1"
- "app-sk2"
EOF
Different SKs correspond to different dify workflows.
Installing via Smithery
smithery is a tool to install the dify mcp server automatically. To install Dify MCP Server for Claude Desktop automatically via Smithery:
Tips: npm
has added the npx
command since version 5.2.
Mac users can use brew install node
install the npm aand
1npx -y @smithery/cli install dify-mcp-server --client claude
In addition to claude
, cline, windsurf, roo-cline, witsy, enconvo, cursor
are also supported.
Manual Installation
❓ If you haven't installed uv or uvx yet, you can do it quickly with the following command:
curl -Ls https://astral.sh/uv/install.sh | sh
✅ Method 1: Use uv (local clone + uv start)
You can also run the dify mcp server manually in your clients. The config of client should like the following format:
1{ 2"mcpServers": { 3 "mcp-server-rag-web-browser": { 4 "command": "uv", 5 "args": [ 6 "--directory", "${DIFY_MCP_SERVER_PATH}", 7 "run", "dify_mcp_server" 8 ], 9 "env": { 10 "CONFIG_PATH": "$CONFIG_PATH" 11 } 12 } 13} 14}
Example config:
1{ 2"mcpServers": { 3 "dify-mcp-server": { 4 "command": "uv", 5 "args": [ 6 "--directory", "/Users/lyx/Downloads/dify-mcp-server", 7 "run", "dify_mcp_server" 8 ], 9 "env": { 10 "CONFIG_PATH": "/Users/lyx/Downloads/config.yaml" 11 } 12 } 13} 14}
✅ Method 2: Use uvx (no need to clone code, recommended)
1"mcpServers": { 2 "dify-mcp-server": { 3 "command": "uvx", 4 "args": [ 5 "--from","git+https://github.com/YanxingLiu/dify-mcp-server","dify_mcp_server" 6 ], 7 "env": { 8 "CONFIG_PATH": "/Users/lyx/Downloads/config.yaml" 9 } 10 } 11}
Enjoy it
At last, you can use dify tools in any client who supports mcp.