# Model Context Protocol (MCP) Server for dify workflows A simple implementation of an MCP server for using [dify](https://github.com/langgenius/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 `base_url` and `app_sks`, making it more convenient to use with cloud-hosted platforms. ## 🔨Installation The server can be installed via [Smithery](https://smithery.ai/server/dify-mcp-server) 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: ```shell 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. #### Method 2: Using `config.yaml` Create a `config.yaml` file to store your Dify base URL and App SKs. Example `config.yaml`: ```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): ```bash # 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 <