Skip to content

YanxingLiu/dify-mcp-server

Repository files navigation

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:

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.

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

npx -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:

{
"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"
    }
  }
}
}

✅ Method 2: Use uvx (no need to clone code, recommended)

"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"
    }
  }
}

Enjoy it

At last, you can use dify tools in any client who supports mcp.

About

Model Context Protocol (MCP) Server for dify workflows

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published