dify-mcp-server
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.
- [2025/4/15] zNow supports directly using environment variables to pass
base_urlandapp_sks, making it more convenient to use with cloud-hosted platforms.
The server can be installed via Smithery or manually.
You can configure the server using either environment variables or a config.yaml file.
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
DIFY_BASE_URL: The base URL for your Dify API.DIFY_APP_SKS: 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.
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
dify_base_url: The base URL for your Dify API.dify_app_sks: A list of your Dify App Secret Keys (SKs). Each SK typically corresponds to a different Dify workflow.
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.
❓ 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
{
"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"
}
}
}
}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",
}
}
}
}At last, you can use dify tools in any client who supports mcp.
Features
Rate this server
Related MCP servers
- scrapling-fetch-mcpHelps AI assistants access text content from bot-protected websites. MCP server that fetches HTML/markdown from sites with anti-automation measures using Scrapling.
- mcp-managersimple web ui to manage mcp (model context protocol) servers in the claude app
- mcpm.shCLI MCP package manager & registry for all platforms and all clients. Search & configure MCP servers. Advanced Router & Profile features.
- mcp_weather_server
- xiyan_mcp_serverA Model Context Protocol (MCP) server that enables natural language queries to databases
- world_bank_mcp_serverAn implementation of the Model Context Protocol for the World Bank open data API