目錄
一、前言
二、Dify 介紹
2.1 Dify是什么
2.2?MCP 介紹
2.2.1 什么是MCP
2.2.2 MCP核心特性
2.3 Dify中開發與使用MCP介紹
2.3.1 MCP Server開發與使用
2.4?dify 開發MCP Server優勢
三、Dify開發與集成MCP操作過程
3.1?Dify MCP 插件說明
3.2 安裝mcp-server插件
3.3 創建新應用
3.3.1 工作流開始節點增加輸入變量
3.3.2 增加和配置大模型節點
3.3.3 效果測試
3.4 mcp-server發布與使用
3.5?配置MCP 發現工具
3.6 創建智能體應用
3.6.1 創建智能體
3.6.2 配置提示詞
3.6.3 引用 mcp服務發現工具
3.6.4 效果測試
四、客戶端集成使用Dify MCP服務
4.1?魔塔平臺集成MCP
4.2?VSCode集成MCP服務
五、寫在文末
一、前言
MCP ,即模型上下文協議(Model Context Protocol, MCP),由 Anthropic 公司(Claude 大模型母公司)在 2024 年 11 月推出的開放協議,旨在標準化大型語言模型與外部數據源和工具之間的交互方式。MCP 被形象地比喻為 AI 領域的"USB-C 接口",因為它提供了連接各類服務的統一框架。從而增強模型的實時交互和任務執行能力。Dify提供了一套完整的工具鏈,支持從提示詞工程(Prompt Engineering)到應用發布的全流程,而且基于Dify平臺,應用開發者可以定制化自己的企業MCP服務,通過暴露Endpoint之后,應用中就可以方便的進行集成使用,從而大大減少開發MCP的過程,本篇將詳細結束如何基于Dify開發MCP服務并集成使用。
二、Dify 介紹
2.1 Dify是什么
Dify 是一個開源的大模型應用開發平臺,旨在幫助開發者快速構建、部署和管理基于大型語言模型(LLM)的 AI 應用。它提供了一套完整的工具鏈,支持從提示詞工程(Prompt Engineering)到應用發布的全流程,適用于企業級 AI 解決方案和個人開發者項目。
官網入口:Dify: Production-Ready AI Agent Builder
中文站入口:Dify:企業級 AI Agent 開發平臺
2.2?MCP 介紹
2.2.1 什么是MCP
MCP ,即模型上下文協議(Model Context Protocol, MCP),由 Anthropic 公司(Claude 大模型母公司)在 2024 年 11 月推出的開放協議,旨在標準化大型語言模型與外部數據源和工具之間的交互方式。MCP 被形象地比喻為 AI 領域的"USB-C 接口",因為它提供了連接各類服務的統一框架。從而增強模型的實時交互和任務執行能力。
2.2.2 MCP核心特性
MCP 具備如下核心特點:
-
標準化集成
-
MCP統一了不同AI模型(如Claude、GPT等)與外部工具(如數據庫、API、瀏覽器等)的交互方式,避免了傳統定制化API開發的重復勞動
-
-
雙向通信
-
不同于傳統AI只能被動接收數據,MCP支持AI主動檢索信息并執行操作(如更新數據庫、觸發工作流),實現真正的“代理式AI”
-
-
動態上下文管理
-
MCP允許AI在會話中持續攜帶上下文信息(如用戶偏好、歷史記錄),使多步驟任務(如“查詢天氣→推薦行程→預訂酒店”)能自動串聯執行
-
-
安全與靈活性
-
MCP支持本地或云端部署,通過OAuth 2.1認證和數據沙箱機制保障敏感信息的安全訪問
-
2.3 Dify中開發與使用MCP介紹
在 Dify 中,對于MCP可以分MCP Server的開發和MCP服務的集成兩部分,這兩種分別對應到實際應用中兩種不同的使用場景。
2.3.1 MCP Server開發與使用
mcp-server 插件由 Dify 社區貢獻,是一款擴展類型的插件,在dify的插件市場中通過mcp關鍵字可以搜到。
安裝該插件后,可將任何 Dify 應用轉換為兼容 MCP 的服務器端點,供外部 MCP 客戶端直接訪問。在實際業務中,其完整的開發使用流程如下:
- 將 Dify 作為 MCP 工具暴露:
- 將你的 Dify 應用程序轉變為單個 MCP 工具,Cursor、Claude Desktop、Cline、Windsurf 甚至其他 Dify 實例等客戶端都可調用
- 利用 Dify Endpoint :
- 創建應用程序端點后,將獲得 MCP 客戶端可以用來連接的唯一 URL。
- 運行 MCP 服務:
- 該插件會自動在 Dify 的插件環境中啟動 HTTP 服務,通過 HTTP 和 SSE 協議處理來自 MCP 客戶端的請求。這涵蓋了從協議握手到功能發現以及工具執行的所有內容。
- 應用集成:
- 比如在其他的客戶端工具,像魔搭、Cursor、VSCode等就可以直接訪問該端點進行使用,或者在程序中集成使用。
2.4?dify 開發MCP Server優勢
在 Dify 平臺上開發 MCP(Model Context Protocol)Server 具有顯著優勢,特別是在構建靈活、可擴展的 AI 智能體應用方面。以下是其主要優勢:
1)標準化接口,提升開發效率
-
統一交互協議:MCP 提供標準化的客戶端-服務器通信協議,使得 Dify 可以無縫集成各類外部工具(如數據庫、API、文件系統等),無需為每個工具單獨適配接口。
-
拖拽式編排:Dify 的可視化工作流編輯器結合 MCP Server,開發者只需簡單拖拽即可完成功能集成,大幅降低開發門檻。
2)靈活擴展,支持多場景應用
-
動態工具發現:MCP Server 支持動態發現新工具,Dify 應用可自動識別并使用新增功能,無需重新部署。
-
跨平臺兼容:MCP Server 可對接多種 AI 客戶端(如 Claude Desktop、Cursor IDE),一套 MCP 服務可同時支持 Dify 和其他 AI 平臺。
3)高效數據流轉,增強 AI 能力
-
RAG(檢索增強生成)優化:通過 MCP Server,Dify 可輕松接入企業知識庫、數據庫等,提升 AI 生成內容的準確性和實時性。
-
自動化任務執行:結合 Zapier 等 MCP 服務,Dify 可實現跨應用自動化(如自動發送郵件、更新 CRM 數據),提高業務效率。
4)安全與解耦設計
-
數據本地化:MCP Server 可在企業 VPC 內獨立部署,確保敏感數據不外流。
-
解耦架構:MCP 服務與 Dify 應用解耦,更新工具只需修改 MCP Server,無需調整 Dify 主程序。
5)生態整合 & 社區支持
-
豐富插件市場:Dify 提供 MCP 相關插件(如
MCP SSE
、Zapier MCP
),簡化集成流程。 -
活躍開發者社區:GitHub 上有大量開源 MCP Server 實現(如 Python SDK、Node.js 版本),加速自定義開發。
Dify 開發 MCP Server 的核心優勢在于 標準化、靈活性、高效集成和低成本運維,特別適合企業級 AI 智能體應用的快速構建。無論是自動化任務、知識庫增強,還是多工具協同,Dify + MCP 的組合都能提供強大支持,推動 AI 應用的規模化落地。
三、Dify開發與集成MCP操作過程
接下來我們通過實際操作演示如何在Dify中開發MCP Server并進行集成使用。
3.1?Dify MCP 插件說明
mcp-server插件,可以將我們在Dify上面構建的應用直接發布成為一個符合MCP標準的服務端點
這款由Dify社區貢獻的Extension插件,安裝后能夠讓你的任何Dify應用變身為MCP Server,允許外部兼容MCP協議的客戶端直接訪問,這為Dify 應用的集成和共享提供了極大的便利。插件的核心功能如下:
-
將MCP應用暴露為MCP工具
-
它能將你的整個Dify應用(無論簡單或復雜)抽象成一個單一的MCP工具,外邊外部MCP客戶端(如cursor、cline、甚至dify自身)發現和調用。
-
-
利用Dify Endpoint功能生成訪問入口
-
當你為應用創建Endpoint之后,會得到一個專屬的URL,外部MCP客戶端可以通過這個URL直接連接到你的應用。
-
-
提供標準的MCP服務
-
插件會在Dify環境中自動運行一個HTTP服務,該服務基于HTTP和SSE協議,能夠高效處理外部MCP客戶端的請求,包括協議握手、能力發現(告訴客戶端做什么)以及實際的工具調用。
-
3.2 安裝mcp-server插件
如下,通過主頁右上角的插件按鈕,進入dify插件市場,搜索MCP相關插件,找到該插件并點擊安裝即可(安裝過程會根據網絡情況不同而有一定耗時)
等待安裝完成之后,在個人的插件列表頁面就能看到了
3.3 創建新應用
mcp-server配置的時候需要關聯一個具體的應用,先創建一個新的應用,這里使用工作流,如下:
3.3.1 工作流開始節點增加輸入變量
開始節點增加一個輸入參數,作為用戶的輸入
3.3.2 增加和配置大模型節點
增加一個大模型節點,接收來自開始節點用戶的輸入,傳遞到系統提示詞中構成完整的傳遞給大模型的提示詞,這里讓大模型模仿輸入的author的風格寫一首詩,參考下面的配置
大模型節點之后增加一個結束節點,結束節點的輸入變量為大模型的輸出參數
3.3.3 效果測試
點擊右上角的發布更新
然后點擊左側的運行
通過下面的運行結果可以看到工作流配置的是沒問題的
3.4 mcp-server發布與使用
選擇上述安裝完成的mcp-server插件,點擊右側+號
在下面設置API端點的表單中填寫端點名稱,并選擇上一步創的那個工作流配置進去
最下面的那個參數需要重點關注一下,這個參數的格式一般是json格式,參考下面的參數配置進去:
{"name":"poem","description":"模仿輸入的作者風格寫詩歌","inputSchema":{"title":"poem","type":"object","properties":{"author":{"title":"author","description":"作者","type":"string"}},"required":["author"]}
}
參數說明:
-
Properties : 列出應用接收的所有參數及其類型,本示例只有一個參數,author;
-
Description: 用于向MCP Client說明此應用的主要功能,幫助系統在需要的時候自動發現并調用;
-
Required : 聲明調用應用時必須提供的參數。對于聊天類應用(Agent / ChatFlow),參數通常是必須的;
將上面的參數配置到json輸入框中保存,保存配置后,會自動生成Endpoint URL,我們在后續使用的就是GET 后面的那一串URL地址。
3.5?配置MCP 發現工具
在前面的步驟中安裝了插件MCP Server,并關聯了工作流能力,且暴露了端點,相當于是一個公共服務能力,如何在客戶端中發現這個MCP Server并且正確調用呢,這就需要MCP Client的應用中集成mcp的服務發現能力,在dify的工具市場中,需要安裝一個MCP SSE的服務發現工具,主要是配置授權相關信息,如下點擊安裝:
安裝完成后,在下面的工具一欄中可以看到自己安裝的工具列表
將下面的授權配置拷貝進去
如下,拷貝進去之后點擊保存
保存成功,出現右側的已授權效果說明配置成功
3.6 創建智能體應用
該應用可以理解為客戶端應用,將利用MCP的服務發現工具調用上面發布的MCP Server,參考下面的步驟。
3.6.1 創建智能體
新建一個智能體類型的應用
3.6.2 配置提示詞
在輸入編排中添加如下提示詞
調用mcp工具回答用戶問題,先獲取工具列表,再選中可用的工具,最后返回工具結果中的詩歌原文以及解析內容
3.6.3 引用 mcp服務發現工具
在編排界面下面的工具選項中,選擇上一步配置的發現和調用MCP的工具,將其中的兩項能力添加進去
3.6.4 效果測試
當輸入作者的名字時,可以看到大模型會先走本地的工具調用,如果沒有其他問題的話,將會看到如下類似的效果
四、客戶端集成使用Dify MCP服務
基于Dify開發的MCP Server并暴露出來端點之后,除了Dify自身的應用可以使用之外,也可以在其他的客戶端集成使用,接下來在其他客戶端集成使用。
4.1?魔塔平臺集成MCP
在dify上面開發的自定義mcp服務,當sse地址暴露出來之后,就可以在其他的客戶端進行集成和使用了,這里我們在魔塔平臺做一下測試,魔塔入口:ModelScope 魔搭社區
進入魔搭mcp測試頁面:MCP Playground
在彈出的輸入框中填寫名稱,配置前面dify中生成的sse地址
點擊保存配置
配置完成后,在左側的實驗場中就會為你的這個MCP服務生成一些測試用例
在實驗場提供的模擬測試用例中,比如隨機選擇第一個模仿李白的風格寫一首詩,通過輸出結果可以看到,MCP Server的工具已經被觸發調用了
通過上面的操作過程,可以看到mcp-server插件提供了一種非常便捷的方式,能夠將我們自己在dify中構建的應用轉化為MCP Server,提供給內外部各種客戶端調用。這無疑是大大增強了 Dify應用的通用性和集成能力。
盡管目前配置 APP Input Schema的JSON格式還需要一些手動操作,略顯繁瑣,但是相比從0開始搭建服務接口,已經簡化了很多。
4.2?VSCode集成MCP服務
在VSCode中安裝Cline插件,然后在Cline的MCP配置中參照下面的方式進行配置
提一個問題,模擬李白的風格寫一首詩
可以看到效果與魔塔上面的類似,先調用了在Cline中配置的MCP,最后生成了一首詩歌,其他的客戶端工具也是類似,有興趣的同學可以繼續嘗試。
五、寫在文末
本文通過案例操作,詳細介紹了基于Dify配置MCP Server,并發布使用的詳細過程,通過這種方式,可以讓應用開發者更好更專注的面向業務開發,而只需要做簡單的集成即可完成對MCP的服務能力的使用,本篇到此結束,感謝觀看。