D
Dify
community
other
A simple implementation of an MCP server for dify workflows.
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.
📰 News
- [2025/4/15] zNow supports directly using environment variables to pass
andbase_url
, making it more convenient to use with cloud-hosted platforms.app_sks
🔨Installation
The server can be installed via Smithery or manually.
Step1: prepare config.yaml or enviroments
You can configure the server using either environment variables or a
config.yaml
file.Method 1: Using Environment Variables (Recommended for Cloud Platforms)
Set the following environment variables:
export DIFY_BASE_URL="https://cloud.dify.ai/v1" export DIFY_APP_SKS="app-sk1,app-sk2" # Comma-separated list of your Dify App SKs
: The base URL for your Dify API.DIFY_BASE_URL
: A comma-separated list of your Dify App Secret Keys (SKs). Each SK typically corresponds to a different Dify workflow you want to make available via MCP.DIFY_APP_SKS
Method 2: Using config.yaml
config.yaml
Create a
config.yaml
file to store your Dify base URL and App SKs.Example
config.yaml
:dify_base_url: "https://cloud.dify.ai/v1" dify_app_sks: - "app-sk1" # SK for workflow 1 - "app-sk2" # SK for workflow 2 # Add more SKs as needed
: The base URL for your Dify API.dify_base_url
: A list of your Dify App Secret Keys (SKs). Each SK typically corresponds to a different Dify workflow.dify_app_sks
You can create this file quickly using the following command (adjust the path and values as needed):
# Create a directory if it doesn't exist mkdir -p ~/.config/dify-mcp-server # Create the config file cat > ~/.config/dify-mcp-server/config.yaml <<EOF dify_base_url: "https://cloud.dify.ai/v1" dify_app_sks: - "app-your-sk-1" - "app-your-sk-2" EOF echo "Configuration file created at ~/.config/dify-mcp-server/config.yaml"
When running the server (as shown in Step 2), you will need to provide the path to this
config.yaml
file via the CONFIG_PATH
environment variable if you choose this method.Step2: Installation on your client
❓ 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 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": { "DIFY_BASE_URL": "https://cloud.dify.ai/v1", "DIFY_APP_SKS": "app-sk1,app-sk2", } } } }
or
{ "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" } } } }
✅ Method 2: 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" } } } }
or
{ "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": { "DIFY_BASE_URL": "https://cloud.dify.ai/v1", "DIFY_APP_SKS": "app-sk1,app-sk2", } } } }
Enjoy it
At last, you can use dify tools in any client who supports mcp.
Related Servers
S
Sequential Thinking
reference
Dynamic and reflective problem-solving through thought sequences
View Details