dify-mcp-server
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@dify-mcp-serverList all my Dify apps"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
dify-mcp-server
MCP server for Dify Console API — manage apps, workflows, knowledge bases, models, plugins, and MCP servers programmatically from Claude Code or any MCP client.
Works with self-hosted Dify v1.6+ instances (v1.10+ recommended for plugins and MCP tools).
What can you do?
Create and configure Dify apps from Claude Code
Import/export apps as YAML DSL templates
Build knowledge bases with datasets, documents, and segments
Manage model providers and set default models
Install, upgrade, and remove plugins
Connect MCP servers to Dify programmatically
Organize apps with tags
Browse conversation and message history
Related MCP server: Dify MCP Server
Quick Start
Option A: Homebrew (macOS / Linux):
brew tap overpod/tap
brew install dify-mcp-serverOption B: Download binary (no dependencies needed):
# macOS (Apple Silicon)
curl -L https://github.com/overpod/dify-mcp-server/releases/latest/download/dify-mcp-server-darwin-arm64 -o dify-mcp-server
chmod +x dify-mcp-server
# macOS (Intel)
curl -L https://github.com/overpod/dify-mcp-server/releases/latest/download/dify-mcp-server-darwin-x64 -o dify-mcp-server
chmod +x dify-mcp-server
# Linux (x64)
curl -L https://github.com/overpod/dify-mcp-server/releases/latest/download/dify-mcp-server-linux-x64 -o dify-mcp-server
chmod +x dify-mcp-serverWindows:
Invoke-WebRequest -Uri "https://github.com/overpod/dify-mcp-server/releases/latest/download/dify-mcp-server-windows-x64.exe" -OutFile "dify-mcp-server.exe"Add to your .mcp.json:
{
"mcpServers": {
"dify": {
"command": "./dify-mcp-server",
"env": {
"DIFY_BASE_URL": "https://your-dify-instance.com",
"DIFY_EMAIL": "admin@example.com",
"DIFY_PASSWORD": "your-password"
}
}
}
}Use from Claude Code:
"List all my Dify apps" "Create a new chat app called Customer Support" "Export the Customer Support app as YAML" "Connect an MCP server at https://mcp.example.com/sse to Dify" "What models are configured in my Dify instance?"
Alternative: From source
git clone https://github.com/overpod/dify-mcp-server
cd dify-mcp-server
bun install && bun run build
bun dist/index.jsUse Case Examples
Create an agent from template
1. export_app → get YAML DSL of an existing app
2. Edit the YAML (change prompt, model, tools)
3. import_dsl → import as a new app
4. publish_workflow → make it live
5. enable_api + create_api_key → get API accessBuild a knowledge base
1. create_dataset → new knowledge base
2. create_document_by_text → add documents
3. Attach dataset to an app workflowConnect MCP servers to Dify
1. create_mcp_server → add by URL (auto-discovers tools)
2. list_mcp_servers → verify connection
3. get_mcp_server_tools → see available tools
4. refresh_mcp_server_tools → update after changesManage model configuration
1. list_model_providers → see configured providers
2. list_models → check available models
3. set_default_model → set workspace default LLMDevelopment
git clone https://github.com/overpod/dify-mcp-server
cd dify-mcp-server
bun install# Hot reload
DIFY_BASE_URL=https://your-dify.com DIFY_EMAIL=admin@example.com DIFY_PASSWORD=secret bun run dev
# Type check and lint
bun run check # biome check
bun run build # tsc
# Run tests
bun run test
# Test with MCP Inspector
npx @modelcontextprotocol/inspector bun dist/index.jsRequirements
Bun 1.3+
Self-hosted Dify v1.6+ instance
Dify admin account (email/password)
Contributing
Fork the repo and create a branch from
mainRun
bun run check— code must pass Biome lintingRun
bun run build— code must compile without errorsRun
bun run test— tests must passUpdate
CHANGELOG.mdunder## [Unreleased]Keep PRs focused — one feature or fix per PR
Adding a new tool
Add the API method to
src/dify-client.tsRegister the MCP tool in
src/index.tswith Zod schemaAdd an entry to
CHANGELOG.md
Code style
Formatter/linter: Biome (tabs, 100 line width)
Language: TypeScript strict mode
Run
bun run fixto auto-format
Releases
Releases are automated. Tag and push:
git tag v0.7.0
git push --tagsGitHub Actions builds binaries for all platforms and creates a release with notes from CHANGELOG.
Auth Notes
Uses Dify's undocumented Console API (
/console/api/)Password is Base64-encoded (Dify's
@decrypt_password_field)Auth via HttpOnly cookies with CSRF token (Dify 1.9.2+)
Auto-login on first request, auto-retry on 401
Console API is internal — may change between Dify versions
License
MIT
This server cannot be installed
Maintenance
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/overpod/dify-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server