當 Dify 遇上 MCP:打造 AI Agent 從此不再燒腦

以前,要做一個 AI Agent,光是想怎麼讓它跟外部系統溝通,就足以讓人頭痛。

但現在不同了。

Dify 與 MCP:天作之合的組合技

先說說 Dify。如果你還沒用過它,那真的該好好認識一下。Dify 是一個開源的 LLM 應用開發平台,整合了視覺化的工作流程編輯器、RAG(檢索增強生成)管道、AI Agent 開發能力、模型管理等功能。簡單說,就是把原本複雜的 AI 應用開發,變成拖拖拉拉就能搞定的事情。

然後,另外是 MCP(Model Context Protocol)。這是 Anthropic 推出的協議標準,目的是讓 AI 模型能夠標準地串接各種外部工具、與不同的資料來源溝通。

試想一下,以前當我們想讓 AI 接資料庫、串 API、整合各種企業內五花八門的資訊系統時,每套都要自己刻一個介面。有了 MCP,這些都變成像是標準化的「插頭」,插上去就能用。
enter image description here

當這兩個東西碰在一起,會發生什麼事?

讓流程無所不能的魔法

有了 MCP 之後,Dify (開發的AI Agent) 能做的事情突然變多了。

更讚的是,我之前做了一個小工具,可以把 Dify 直接串到 LINE OA(官方帳號) 上。現在要設計一個 AI Agent?

輕鬆到太過美好。

以前要花兩週處理的工作,現在可能半小時就搞定了。

實戰:用 MCP 串接請假系統

直接看個案例。

底下這張圖片就是 Dify 串接 MCP 請假系統進行請假的畫面。看到了什麼?對話介面相當乾淨(下圖右方),使用者只需要自然地說「我要請假」,AI Agent 就會自動處理剩下的流程,蒐集請假所需要的資料,然後透過MCP呼叫串接好的HR請假系統的 API,完成請假功能。

當然,查詢剩餘請假時數,也是如此。
圖片

這背後發生了什麼?AI 透過我們做好的 MCP Tools,呼叫了請假系統的 API,確認你的假別、假期餘額、代理人…等資訊。所有這些複雜的商業邏輯,都被優雅地包裝在 MCP Server 裡面。使用者完全感覺不到複雜性,就像在跟一個很聰明的 AI 聊天助理對談而已。

這就是 MCP 的魅力。
它不只是一個協議,更是一個思維模式的轉變——把複雜的系統整合,變成簡單的行動,讓AI Agent可以在與用戶對話互動中隨時調用。

用 .NET Core 打造你的 MCP Server

讓我們來看看技術細節。底下這是用 .NET Core 撰寫的 MCP Server(示範的片段程式碼):
圖片

從上圖可以看到,MCP Server 的架構其實很清晰。它遵循標準的 MCP 協議規範,定義了三個核心的 Tools(工具),每個 Tool 都對應一個特定的功能:

  1. GetLeaveRecordAmount - 取得請假天數。這個Tool(功能,或你就想成API)可以讓 AI Agent 能夠即時知道指定員工已經請了多少天假期,還有多少假可以請,避免請超過額度的尷尬。

  2. LeaveRequest - 提交請假申請。當使用者確定要請假時,這個工具會將請假資料送到後端系統,包括請假起始日期、請假天數、代理人、請假原因等資訊。

  3. GetCurrentDate - 取得今天日期。提供當前日期資訊,讓 AI Agent 能夠正確計算請假的起迄時間,確保日期邏輯的準確性。(不然 LLM 一直都是個黑箱,它不會知道今夕是何夕)

這三個工具看起來雖然簡單,但它們代表的是完整的請假流程。透過 MCP 的標準化介面,Dify 的 AI Agent 可以依需呼叫這些外部功能,就像呼叫自己的方法一樣自然。

我們使用的開發技術是 .NET Core,使得這個 MCP Server 具備跨平台特性,可以部署在 Windows、Linux、macOS 上。效能也沒話說,處理高併發請求完全不是問題。

註冊 MCP Tools:幾行設定就搞定

你可能會想:「看起來很美好,但實際設定會不會很複雜?」

有趣的地方就在這裡,一點也不會。

透過底下這樣的設定,你就可以輕易把 MCP Tools 註冊到 Dify 系統中,然後就能在 Dify 設計的 Agent 來呼叫 MCP Tools 了:
圖片

看到沒?就是這麼簡單。你只需要在 Dify 的設定介面中,指定 MCP Server 的位置和參數,系統就會自動發現並載入所有可用的 Tools。不需要寫額外的串接程式碼,一切都是標準化的。

透過這個設定介面,你可以清楚看到每個 Tool 的名稱、功能描述、參數定義,甚至可以直接在介面上測試這些工具是否正常運作。對於開發者來說,這種即時反饋非常重要——你不用切換到命令列、不用查 log,所有資訊一目瞭然。

當你的 MCP Server 新增了功能時,只要重新整理一下,Dify 就會自動抓到新的 Tools。想像一下,你的團隊現在要新增一個「加班申請」功能。傳統做法可能要改前端、改後端、改 API、改文件…然後測試、部署、上線,至少要一兩天。但有了 MCP 和 Dify,你只需要在 MCP Server 加一個新的 Tool, 幾分鐘後就能在對話介面裡使用了。

為什麼這個組合這麼吸引人?

接著,我們來談談為什麼 Dify + MCP 的組合會這麼有意義。

第一,標準化。MCP 提供了統一的協議,這意味著任何遵循 MCP 標準的工具,都可以直接在 Dify 開發的 AI Agent 上使用。你不需要為每個系統寫專門的整合程式碼。今天接請假系統,明天接庫存管理,後天接客戶關係管理,用的都是同一套標準。這種可重用性,能大幅降低維護成本。

第二,低門檻。你不需要是 AI 專家,不需要懂複雜的提示工程,甚至不需要寫太多程式碼。Dify 的視覺化介面已經幫你處理了大部分的複雜性。你只需要專注於業務邏輯——你的請假系統該怎麼運作、你的工作流程該怎麼設計,剩下的交給工具就好。

第三,彈性。MCP Server 可以用任何語言實作,Python、JavaScript、.NET、Go…隨你選。這意味著你可以用最熟悉的開發技術,整合既有的系統。不需要打掉重練,也不需要大規模重構,就能讓老系統擁有 AI 能力。

第四,擴展性。當你的業務成長時,你可以很容易地新增更多的 MCP Tools。今天三個工具,明天十個,後天一百個,架構都是一樣的。而且因為是標準化的,你甚至可以複用社群開源的 MCP Server,站在巨人的肩膀上。

從 LINE 到企業:無限可能

還記得我提到我做了一個把 Dify 串到 LINE 的工具嗎?
enter image description here

想像一下,你的員工可以直接在 LINE 上跟 AI Agent 對話,處理請假、查詢薪資、申請差旅、報銷費用…所有這些瑣碎但必要的行政流程,都可以在聊天視窗裡完成。不需要登入什麼系統,不需要填什麼表格,就像跟同事聊天一樣簡單。

這是現在就能做到的事。

而且,這只是開始。你可以把同樣的架構應用在客戶服務、技術支援、內部知識管理…任何需要人機互動的場景。因為有了 MCP,你的 AI Agent 可以連接到任何系統,獲取任何資料,執行任何動作。

最後,給你的一些建議

如果你也想嘗試這個組合,我有幾個建議:

從小處著手。不要一開始就想整合你公司的所有系統。挑一個簡單但有價值的場景,比如請假系統,做出一個 MVP(最小可行產品)。驗證了可行性,再逐步擴展。

擁抱標準。MCP 是一個開放標準,社群正在快速成長。關注官方文件,參考社群範例,不要閉門造車。很多坑別人已經踩過了,你不需要再踩一次。

注重使用者體驗。技術很重要,但最終使用這個系統的是人。確保對話流程自然、錯誤訊息友善、回應速度夠快。一個再強大的 AI,如果使用體驗很糟,也不會有人想用。

持續改善。Dify 提供了完整的 LLMOps 能力,你可以監控 AI 的表現、分析使用者的問題、持續改進提示詞和工作流程。這是一個迭代的過程,不要期待一次就完美。

結語:AI 時代的基礎建設

AI Agent 和 MCP 的組合,代表的不只是工具的整合,而是一種新的軟體開發範式。

在這個範式裡,AI 不再是高高在上的黑科技,而是可以輕鬆整合到日常業務中的工具。開發者不再需要從零開始打造 AI 應用,而是可以像搭積木一樣組合各種能力。企業不再需要投入大量資源建立 AI 團隊,而是可以用既有的技術和人力,快速實現 AI 轉型。

這就是基礎建設的力量。就像當年 Docker 簡化了部署、Kubernetes 簡化了管理,AI Agent+ MCP 正在簡化 AI 應用的開發。

而 Dify 讓這一切可以可以不費吹灰之力的輕鬆上手。

這場變革,才剛剛開始。

去試試看吧。
寫一個簡單的 MCP Server,串上用 Dify 開發的 AI Agent,讓你的第一個Agent 跑起來。你會發現,原來打造 AI 應用,可以這麼簡單有趣、這麼有成就感。


相關課程:
https://www.studyhost.tw/NewCourses/自動化-AI-Agent-開發-暨-Dify實戰

留言

這個網誌中的熱門文章

開啟 teams 中的『會議轉錄(謄寫)』與Copilot會議記錄、摘要功能

使用LM Studio輕鬆在本地端以API呼叫大語言模型(LLM)

VS Code的字體大小

原來使用 .net 寫個 MCP Server 如此簡單

為何想做CI的你,根本不該使用 Gitflow?