A simple implementation of an MCP server for using dify. It achieves the invocation of the Dify workflow by calling the tools of MCP.
The server can be installed via Smithery or manually. Config.yaml is required for both methods. Thus, we need to prepare it before installation.
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:
dify_base_url: "https://cloud.dify.ai/v1"
dify_app_sks:
- "app-sk1"
- "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.
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
npx -y @smithery/cli install dify-mcp-server --client claude
In addition to claude
, cline, windsurf, roo-cline, witsy, enconvo, cursor
are also supported.
❓ 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
You can also run the dify mcp server manually in your clients. The config of client should like the following format:
{
"mcpServers": {
"mcp-server-rag-web-browser": {
"command": "uv",
"args": [
"--directory", "${DIFY_MCP_SERVER_PATH}",
"run", "dify_mcp_server"
],
"env": {
"CONFIG_PATH": "$CONFIG_PATH"
}
}
}
}
Example config:
{
"mcpServers": {
"dify-mcp-server": {
"command": "uv",
"args": [
"--directory", "/Users/lyx/Downloads/dify-mcp-server",
"run", "dify_mcp_server"
],
"env": {
"CONFIG_PATH": "/Users/lyx/Downloads/config.yaml"
}
}
}
}
"mcpServers": {
"dify-mcp-server": {
"command": "uvx",
"args": [
"--from","git+https://github.com/YanxingLiu/dify-mcp-server","dify_mcp_server"
],
"env": {
"CONFIG_PATH": "/Users/lyx/Downloads/config.yaml"
}
}
}
At last, you can use dify tools in any client who supports mcp.