▌課程導覽
- What’s Ahead: Special Workflows, Advanced RAG Techniques & MCP
本節主要是接下來課程內容的路線圖,重點在於從基礎工作流進階到更複雜的整合與優化技術。
主要學習路徑:
-
Model Context Protocol (MCP):
- 學習 MCP 是什麼、如何運作,以及它與一般 Function Calling(函數呼叫)的區別。
- 目標是建立自己的 MCP Servers。
-
工具整合實作:
- Claude Desktop + n8n: 將桌面端 AI 與自動化工具連接。
- ChatGPT + n8n: 透過 GPTs 與 Webhooks 連接自動化流程。
- Flowise + n8n: 透過 HTTP Request 節點實現雙向連接(Flowise 呼叫 n8n,或反之)。這裡會涉及少量的 JavaScript 代碼 。
-
效能與檢索優化 (RAG & Caching):
- Prompt Caching: 了解如何透過快取提示詞來加速 RAG 並降低成本。
- 進階 RAG 技術: 介紹 Graph RAG(圖譜 RAG)與 Light RAG。
- Contextual Retrieval: 重點介紹 Anthropic 提出的「上下文檢索」概念,這被認為是極佳的檢索優化策略 。
-
策略選擇: 學習何時該使用哪種概念,不需要在所有情境下使用所有技術 。
▌MCP 說明
- MCP (Model Context Protocol) Explained: MCP Server, Client & API Work Together
本節解析 Model Context Protocol (MCP) 的核心概念。
-
MCP 的背景與定義
-
起源: 由 Anthropic 於 2024 年 11 月 25 日推出 。起初反應平淡,但隨後熱度爆發,有望成為 AI 連接數據的標準 。
-
核心價值: 就像 WhatsApp 因為用戶多而有價值,MCP 的價值在於成為一種「通用標準」。它解決了 LLM 與各種不同 API (Rest APIs) 溝通時格式混亂、標準不一的問題 。
-
-
核心比喻:AI 時代的 USB-C 接口
-
傳統方式: 就像電腦要連接不同周邊設備(滑鼠、硬碟、螢幕)需要不同接口很麻煩。
-
MCP 方式: MCP 就像 USB-C 接口。
- 電腦 (Host): LLM 或 AI 應用程式(如 Claude Desktop)。
- 接口 (Protocol): MCP Client,負責標準化溝通。
- 設備 (Server): 外部工具或數據源(如 Google Drive, Slack, GitHub, 資料庫)。
-
優勢: 只要有一個標準接口,就能輕鬆插拔各種工具,無需為每個工具單獨寫複雜的適配代碼 。
-
-
MCP 架構的三大角色
- MCP Host (主機): 發起請求的一方,例如 Claude Desktop、OpenAI Agent SDK、或是 IDE (如 Cursor)。
- MCP Client (客戶端): 位於中間的協議層,負責將 Host 的需求翻譯成標準格式。
- MCP Server (伺服器): 實際執行任務的工具端。它可以是發送郵件、更新 Google Sheets、存取向量資料庫的工具 。
-
MCP vs. 傳統 Function Calling
-
傳統 API/Function Calling:
-
通常針對特定用途設計,並非專為 LLM 優化 。
-
需要處理各種 HTTP 方法 (GET, POST, DELETE 等),容易出錯或數據雜亂 。
-
若要連接 10 個工具,可能需要寫 10 種不同的 API 呼叫方式 。
-
-
MCP:
-
被稱為「Function Calling on Steroids (增強版函數呼叫)」 。
-
專為 LLM 構建: 採用標準化的 JSON 溝通,降低錯誤率 。
-
動態自我發現 (Dynamic Self-Discovery): 這是 MCP 的殺手級功能。MCP Server 可以主動列出它擁有的所有功能(Tools/Resources)。當 API 更新時,Host 不需要重寫代碼,Server 會自動告知新功能 。
-
簡化代理 (Slimmer Agents): Agent 不需要知道每個細節,只需對接一個 “Gmail MCP Server”,該 Server 就會處理所有收信、寄信的底層邏輯 。
-
-
-
實際應用場景
-
在 n8n 中: 可以將 MCP 作為 Trigger(觸發器),從外部透過 MCP 協議啟動 n8n 流程 。也可以使用 “MCP Client Tool” 來呼叫其他的 MCP Servers 。
-
在 Claude Desktop 中: 它可以作為一個 Agent,透過 MCP 連接本地文件、資料庫或 API,執行發送郵件、管理日曆等任務 。
-
-
結論
MCP 試圖將「LLM 呼叫工具」這件事標準化。它是一個包在 API 外層的 Wrapper(包裝器),負責將複雜的 API 呼叫翻譯成 LLM 容易理解的語言 。隨著越多公司開發自己的 MCP Server,AI Agent 的開發將變得像「插上 USB 設備」一樣簡單。
▌Claude Desktop (MCP Host) + n8n (MCP Server)
- Using Clade Desktop as an AI Agent (MCP Host) with MCP Server in n8n
將 Claude Desktop 設定為 MCP Host(AI Agent),並透過 n8n 作為中介 (MCP Server) 來操作外部工具 (Google 服務、資料庫等)。
示範如何讓桌面版的 Claude 具備「代理(Agent)」能力,能夠直接操作你的 Google Calendar、Gmail、Google Sheets,甚至連接向量資料庫進行 RAG。
1. 架構
- Host: Claude Desktop (負責理解指令、決策)
- Bridge:
supergateway(透過 npx 執行的橋接工具,負責轉換 SSE 協議) - Server: n8n Workflow (負責實際執行 API 呼叫)
因為課程的劃分和參考資料(一開始的圖,來自文章末尾的影片)的劃分有一黠差異(其實是課程劃分的更細),所以我一開始有點搞混,後來用這個簡單的問答(誰在問問題?誰在傳話?誰在做事?)來區分最快,分享給大家:
- 誰在問問題? Claude Desktop (Host)
- 誰在傳話? supergateway (Client)
- 誰在做事? n8n Workflow (Server)
| 對照 | 76. Claude Desktop | 77. n8n Native |
|---|---|---|
| 名稱 | Claude Desktop as MCP Host | Native MCP in n8n |
| 說明 | 將桌面版 Claude 變成 Agent,透過橋接工具去呼叫 n8n 裡的工具。 | 在 n8n 內部建立 Agent,直接透過內建節點呼叫另一個 Workflow 或外部服務。 |
| Agent (大腦) | Claude 3.5 Sonnet (Claude Desktop 內建模型) |
AI Agent Node + LLM (n8n 裡的邏輯組件,由我們配置 Prompt 與模型) |
| Host (軀殼) | Claude Desktop App (使用者操作的桌面軟體) |
n8n Runtime (執行引擎) (負責執行整個 Workflow 的系統環境) |
| Client (連接器) | supergateway (需在 config 檔中透過 npx 執行,負責將 SSE 轉為 Stdio) |
MCP Client Tool Node (n8n 的內建節點,直接填入 SSE URL 即可) |
| Server (工具箱) | n8n Workflow (使用 MCP Server Trigger 節點) |
另一個 n8n Workflow 或 Zapier (提供 SSE URL 的服務端) |
| 運作流程 | 1. 用戶在 Claude 桌面版輸入指令。 2. supergateway 將指令轉發給 n8n。 3. n8n 執行工具並回傳結果。 |
1. 用戶在 n8n Chat 介面輸入指令。 2. MCP Client Tool 直接呼叫目標 URL。 3. 目標 Server 執行工具並回傳結果。 |
2. 步驟 A:設定 n8n (MCP Server)
利用講師的 MCP_for_Claude_Desktop.json 檔案,可以直接匯入完整的工具鏈。
以下是 Workflow 節點介紹:
-
MCP Server Trigger:
* 與 Claude Desktop 溝通的入口。
* 關鍵動作:啟動 workflow 後,需複製此節點產生的 Production URL (SSE URL)。 -
Google Calendar 工具組:
*Google Calendar節點:設定為 Create,用於建立新行程。
*Google Calendar節點:設定為 Get Many (GetAll),參數limit: 5,用於讀取近期行程。 -
Gmail 工具:
* 設定為 Send,並關閉了appendAttribution(不顯示 “Sent via n8n” 簽名檔)。 -
Google Sheets 工具組:
*Google Sheets節點:設定為 Get Rows (讀取資料),鎖定Leads表單。
*Google Sheets1節點:設定為 Append (新增資料),將 Name/Mail/Telefon 寫入Leads表單。 -
Calculator:
* 基礎數學運算工具。 -
RAG 知識庫 (Pinecone + OpenAI):
*Pinecone Vector Store:設定 Mode 為retrieve-as-tool。
* Index:prompting
* Namespace:prompting
* 配合Embeddings OpenAI節點進行語意搜尋。
3. 步驟 B:設定 Claude Desktop (MCP Host)
利用講師的 code+mcp.txt 檔案,修改 Claude Desktop 的設定檔。
-
設定檔路徑:
*File→Settings→Developer→Edit Config
* 開啟claude_desktop_config.json -
配置代碼 (Configuration Code):
將以下程式貼入設定檔,並替換其中的 URL(步驟 A 中從 n8n 複製的網址):
{
"mcpServers": {
"n8n": {
"command": "npx",
"args": [
"-y",
"supergateway",
"--sse",
"YOUR URL FROM n8n MCP Server Trigger"
]
}
}
}
- 技術細節:這裡使用了
supergateway套件 ,它支援 SSE (Server-Sent Events) 協議,這正是 n8n MCP Trigger 所使用的通訊方式。
4. 驗證與測試
-
重啟:修改設定檔後,務必完全關閉並重新啟動 Claude Desktop。
-
檢查:點擊輸入框旁的附件圖示,確認出現
n8n的工具圖示。 -
測試指令:
* “Check my calendar for tomorrow” (測試 Get Calendar)
* “Send an email to [Name]…” (測試 Gmail)
* “Search the vector store for prompting tips” (測試 Pinecone RAG)
▌n8n Native MCP (Host & Server)
- Native MCP Server & MCP Host in n8n: Like Calling Another Workflow
主題:MCP Host 改用和 MCP Server 一樣的 n8n。
本節將 n8n 同時作為 MCP Host 與 MCP Server,示範如何在 n8n 內部透過 AI Agent 直接呼叫 MCP Server。
你可以建立一個完全在雲端運行的自動化 AI Agent,並且能像「呼叫子工作流」一樣,透過標準化的 MCP 協議來呼叫各種工具。
1. 架構
-
架構
* Host: n8n 中的 AI Agent 節點。
* Connection: 透過 MCP Client Tool 節點連接。
* Server: 另一個 n8n Workflow (透過 MCP Trigger),或是外部服務 (如 Zapier)。 -
優勢
* Token 節省:相比傳統的 “Execute Workflow Tool” (需要另一個 Agent 進行推理),MCP 是直接提供工具定義給當前的 Agent,減少了中間層的 Token 消耗。
* 標準化:不管後端是 Gmail、資料庫還是 Zapier,Agent 都用同一種方式 (MCP) 溝通。
2. 實作步驟
在 n8n 建立 MCP Host,請參考講師附件 5+MCP_Host_and_client.json 的下半部結構。
-
建立 AI Agent:
- 使用
AI Agent節點。 - 連接一個 Chat Model (如
OpenAI Chat Model, 講師建議用 GPT-4o-mini 以節省成本)。
- 使用
-
掛載 MCP Client:
- 新增一個 MCP Client Tool 節點,連接到 AI Agent 的 “Tools” 輸入端。
- SSE Endpoint: 貼上目標 MCP Server 的 URL。
- 來源 1(n8n URL): 上一節課做的 n8n MCP Server 的 Production URL(內部溝通)。
- 來源 2(Zapier URL): 呼叫外部 SaaS 平台的現成功能(外部擴充:如 Zapier提供的 URL)。
3. 高級技巧
利用 Zapier 官方提供的 MCP Server 功能,讓你的 n8n Agent 瞬間擁有了操作 Zapier 上數萬種工具的能力,而不需要自己寫 API 串接。
操作方式:
- 前往
actions.zapier.com。 - 設定你想要透過 AI 操作的 App (支援超過 20,000 種應用,如 Slack, Facebook 等)。
- 點擊 “Connect” 獲取 SSE Endpoint。
- 將此 URL 貼入 n8n 的 MCP Client Tool 中。
4. 講師 JSON 範例說明
本 JSON 是一個 “混合型” (Hybrid) 的範例,它在同一個 Workflow 中同時包含了 Server 和 Host 的邏輯,方便測試。
“systemMessage”:
“You are a helpful assistant
Always try to use mcp tool if i ask math questions, flowise, n8n or langchain questions.
If i want to send mails, get contacts or add contacts, also use mcp tool”
-
Server 端 (提供工具):
* MCP Server Trigger: 定義了這是一個 MCP Server。
* 掛載工具:
*Gmail_send: 發送郵件。
*set_contacts(Google Sheets): 新增聯絡人資料。
*get_contacts(Google Sheets): 讀取聯絡人資料。
*Pinecone Vector Store: 檢索 Flowise/LangChain 相關知識 (Namespace:flowise)。
*Calculator: 計算機。 -
Host 端 (執行指令):
* Chat Trigger: 接收使用者對話。
* AI Agent: 負責思考與決策。
* MCP Client Tool: 這裡的設定 填入了 Zapier 的 URL (https://actions.zapier.com/mcp/...)。
* 如果想讓這個 Agent 呼叫「自己」定義的 Gmail/Sheets 工具,你需要將MCP Server Trigger的 Production URL 填入MCP Client Tool中 (影片中有提到可以這樣做來自我測試)。
5. 架構設計建議
講師建議採用 模組化 (Modular) 的設計思維:
-
不要做一個巨大無比的 MCP Server。
-
分類建立 Server:
* 一個 Workflow 專門做 “Gmail MCP Server” (包含寄信、回信、草稿等所有功能)。
* 一個 Workflow 專門做 “Calendar MCP Server”。
* 一個 Workflow 專門做 “Knowledge Base MCP Server”。 -
Host 整合:在 AI Agent 上掛載多個 MCP Client Tools,分別連接上述不同的 Server URL。這樣 Agent 就知道什麼時候該呼叫哪個 Server,也比較容易維護。
6. 本節總結
這節課將 MCP 的應用從「桌面端」延伸到了「伺服器端自動化」。
透過 n8n 的 MCP Client 節點,我們可以用標準化的接口串聯多個 n8n Workflows 甚至外部 Zapier 服務,這是建構複雜 AI Agent 系統的一種高效、低 Token 消耗的架構模式。
▌ChatGPT + n8n (Webhooks)
- Connecting ChatGPT with n8n via Webhooks for AI Automations
主題是將 ChatGPT (Custom GPTs) 透過 Webhooks 連接 n8n,使其具備執行外部工具的能力。本節暫時離開 MCP 協議,回歸 OpenAI 原生的 Actions 功能。
1. 核心概念:Webhooks vs. MCP
-
現狀:目前 ChatGPT (Custom GPTs) 原生支援的是 Actions,其底層技術是標準的 REST API (Webhooks),而非 MCP 協議。
-
架構目標:
- 大腦 (Brain): ChatGPT (負責對話理解與決策)。
- 手腳 (Limbs): n8n Workflow (負責執行工具,如 Gmail, Calendar)。
-
運作流程:
- 使用者在 ChatGPT 輸入指令。
- ChatGPT 透過 Action (HTTP POST) 發送 JSON 請求給 n8n。
- n8n 的 AI Agent 接收 Prompt,並呼叫對應工具。
- n8n 執行完畢,透過 Respond to Webhook 將結果回傳。
- ChatGPT 接收結果並生成最終回應。
2. 步驟 A:設定 n8n (Backend)
可匯入講師提供的附件 6+ChatGPT_webhook_agent.json。
關鍵節點解析:
-
Webhook Node (Trigger):
- Method: 必須設為 POST。
- Response Mode: 必須設定為 “Using ‘Respond to Webhook’ node” (JSON 中參數為
responseNode)。若未設定,ChatGPT 會因超時而報錯。
-
AI Agent Node:
- Text Input: 這裡必須綁定 Webhook 傳來的 Prompt。
- 設定值:
={{ $json.body.prompt }}。這對應到前端 Schema 定義的欄位。
-
Respond to Webhook Node:
- 流程的終點,負責將 Agent 的執行結果 (Output) 回傳給 ChatGPT。
3. 步驟 B:設定 ChatGPT Actions (Frontend)
這是在 ChatGPT 網頁端 (Create a GPT) 的操作。
-
建立 Action:
- 進入 GPT Builder → Configure → Create new action。
- Schema: 填入 OpenAPI Specification。
-
使用範例代碼:
參考講師附件
Example+COde+ChatGPT+Actions.txt。- 修改 1 (Servers URL): 將 URL 替換成你 n8n 的 Production URL (例如
https://yourname.app.n8n.cloud)。 - 修改 2 (Path): 替換成 Webhook 節點的路徑 (例如
/webhook/64838d6e...)。 - 參數定義: 代碼中定義了
prompt欄位 ,這就是 n8n 端讀取資料的依據。
- 修改 1 (Servers URL): 將 URL 替換成你 n8n 的 Production URL (例如
4. 常見問題與除錯 (Troubleshooting)
-
測試環境 vs. 生產環境:
- 初期測試使用 n8n Webhook 的 Test URL。
- 確認流程無誤後,Activate n8n Workflow,並將 ChatGPT Action 中的 URL 更新為 Production URL。
-
Agent 沒反應?
- 檢查 n8n AI Agent 的輸入是否有正確綁定
{{ $json.body.prompt }}。
- 檢查 n8n AI Agent 的輸入是否有正確綁定
-
ChatGPT 顯示 Error Talking to plugin?
- 確認 n8n 流程最後是否有接上
Respond to Webhook節點。
- 確認 n8n 流程最後是否有接上
5. 架構比較
-
本節架構:
- 大腦: ChatGPT (GPT-4)。
- 優點: 可利用 GPT Store 生態、模型能力強。
- 缺點: 依賴 Webhook,非 MCP 標準。
-
上節架構:
- 大腦: n8n AI Agent。
- 優點: 隱私性高、完全自定義、支援 MCP 標準。
- ChatGPT Webhooks 與 78. n8n Native MCP 兩種架構的比較:
架構比較表
ChatGPT Agent vs. n8n Native Agent
| 比較項目 | 第四節 (79) 架構 | 第三節 (78) 架構 |
|---|---|---|
| 核心主題 | ChatGPT + n8n (Webhooks) | n8n Native MCP (Host & Server) |
| 大腦 (決策核心) | ChatGPT (GPT-4) | n8n AI Agent |
| 連接技術 | Webhooks (REST API / OpenAI Actions) | MCP (Model Context Protocol) |
| 優點 | 1. 生態系強: 可發布至 GPT Store。 2. 模型能力: 直接利用 ChatGPT 強大的推理與對話能力。 3. 介面友善: 使用者直接與 ChatGPT 介面對話。 |
1. 隱私性高: 數據無需經過 OpenAI 的 Actions 伺服器,完全在自控環境。 2. 完全自定義: 流程控制權在自己手上。 3. 標準化: 支援 MCP 標準,未來擴充性佳。 |
| 缺點/限制 | 依賴 Webhook 格式,非 MCP 標準協議。 | 需自行設定 Host 與 Client,介面依賴 n8n 或其他前端。 |
| 適用場景 | 適合面向大眾的服務、需要 ChatGPT 強大閒聊能力的場景。 | 適合企業內部自動化、處理敏感資料、或需要精確控制工具呼叫的場景。 |
適用情境
- 選 79. ChatGPT: 當你需要一個「聰明的對話介面」且希望分享給他人使用時。
- 選 78. n8n MCP: 當你需要一個「隱私且高效的自動化機器人」來處理內部業務時。
▌n8n ➔ Flowise
- Connecting Flowise to n8n: Use HTTP Post Request & cURL Import
本節主題是將 Flowise 當作一個「工具」掛載到 n8n 中。
本節示範一個非常實用的整合技巧:如果我們已經在 Flowise 裡建構了一個功能強大的 AI Agent (例如:上網搜尋、RAG 或特定記憶功能的 Agent),就不需要在 n8n 裡重新打造輪子,而是可以直接透過 API 呼叫 Flowise,讓它為 n8n 服務。
主題:在 n8n 中透過 HTTP Request 呼叫 Flowise Workflow,實現「Agent 呼叫 Agent」的架構。
1. 核心概念:為什麼要這樣做?
-
重覆使用:Flowise 非常適合快速建構複雜的 Agent (例如包含 Document Store, Web Search, Memory 的 Agent)。
-
整合性: n8n 擅長處理自動化流程。透過將 Flowise 變成 n8n 的一個「工具」,你可以讓 n8n 的主流程去呼叫 Flowise 處理困難的推理任務,處理完後再將結果傳回 n8n 繼續後續動作。
2. 步驟 A:準備 Flowise (API 端)
-
講師使用現成的 Flowise Agent,該 Agent 具備 Brave Search (搜尋引擎)、Calculator (計算機) 與 Window Buffer Memory。
-
獲取 API:
1. 在 Flowise 介面右上角點擊 </> (API Code) 圖示。
2. 切換到 cURL 頁籤。
3. 複製代碼: 直接複製整段 cURL 指令。這是最快的方法,因為它包含了 URL、Method 和 Headers。
3. 步驟 B:設定 n8n (呼叫端)
-
建立 HTTP Request Tool:
1. 在 n8n 的 AI Agent 下掛載一個 HTTP Request 工具節點。
2. Import cURL: 在節點設定中,找到 “Import cURL” 按鈕。
3. 貼上: 將剛才從 Flowise 複製的代碼貼上,n8n 會自動解析並填入 URL (POST)、Headers 和 Body。 -
關鍵設定 - 資料映射 (Mapping):
* 預設導入的 Body 會有一個靜態的question(例如 “Hey how are you”)。
* 修正: 必須將這個值改為 Dynamic Expression。
* 操作: 刪除舊值,並拖入 AI Agent 的 Chat Input (或是 User Prompt 變數),這樣 n8n 才會把使用者真正的問題傳給 Flowise。
4. 測試與驗證
-
聯網搜尋測試:
* 問 n8n: “What is the Bitcoin price?”
* 流程: n8n ➔ HTTP Request ➔ Flowise (啟動 Brave Search) ➔ 回傳 “約 101k USD” ➔ n8n 顯示結果。 -
其他工具測試:
* 問: “Current date and time?” ➔ 成功回傳。
5. 已知限制 (Limitations)
- 本地檔案寫入 (Local File Write):
* 講師嘗試讓雲端版 (Hosted on Render) 的 Flowise Agent 寫入檔案到「本地電腦」。
* 結果: 失敗或極不穩定。因為雲端實例 (Cloud Instance) 無法直接存取你本地電腦的檔案系統。
* 建議: 雲端對雲端的自動化操作應避免涉及本地檔案系統路徑。
6. 總結
透過 “Import cURL” 功能,將 Flowise 整合進 n8n 變得非常簡單,你不需要手動填寫複雜的 API 參數。
這種架構讓你可以在 n8n 中使用一個「更聰明」的工具節點(也就是你的 Flowise Agent),來處理特定的知識檢索或邏輯推理。
下節預告: 既然可以從 n8n 呼叫 Flowise,下一節將示範反向操作:從 Flowise 呼叫 n8n Workflow。
▌Flowise ➔ n8n
- Connecting n8n to Flowise: Webhooks & Google Sheets via JavaScript
上一節,我們從 n8n 呼叫 Flowise,這一節則反過來,從 Flowise 呼叫 n8n(從 Flowise 觸發 n8n Workflow)。
利用 Flowise 的多 Agent 協作能力處理複雜資訊,當它需要執行外部動作(本範例為寫入 Google Sheets)時,再將結構化數據傳給 n8n 進行儲存(透過 Custom Tool 自定義工具發送 Webhook 給 n8n)。
1. 核心架構設計
-
Flowise 端 (大腦): 建立一個 Supervisor (主管) Agent,負責指揮兩個 Worker Agents:
- Research Agent: 負責聯網搜尋股票資訊 (使用 SerpAPI)。
- Sheets Agent: 負責從搜尋結果中提取關鍵資料,並呼叫 Custom Tool 傳送給 n8n。
-
n8n 端 (手腳): 建立一個 Webhook Workflow,接收來自 Flowise 的數據並寫入 Google Sheets。
2. 步驟 A:建立 Flowise Multi-Agent
-
Supervisor:
- 連接 Chat Model (如 GPT-4o)。
- Prompt 設定:「先使用 Research Agent 尋找資訊,然後將結果傳給 Sheets Agent」。
-
Research Agent:
- 掛載 SerpAPI 工具,賦予其搜尋即時股價與新聞的能力。
- Prompt 設定:「你是一個搜尋助手…」。
-
Sheets Agent:
- Prompt: 設定為「從 Research Agent 的結果中提取
Stock Ticker(代碼) 和Price(價格),並使用Create Sheet工具」。 - Custom Tool: 這是 Flowise 與 n8n 的橋樑,我們需要在下一步建立它。
- Prompt: 設定為「從 Research Agent 的結果中提取
3. 步驟 B:設定 Flowise Custom Tool (JavaScript)
我們需要在 Flowise 中建立一個工具,透過 JavaScript 發送 HTTP POST 請求給 n8n。
建立 Custom Tool:
-
名稱設定為
Create Sheets。 -
Input Schema (輸入架構): 定義要傳給 n8n 的欄位。
stockTicker(String, Required)。price(Number, Required)。summary(String, Optional) - 後續追加的新聞摘要欄位。
-
JavaScript Code:
- 使用
fetch發送 POST 請求。 - URL: 填入 n8n Webhook 的 URL。
- Body: 將 Input Schema 的變數 (如
$stockTicker) 放入 JSON body 中傳送。 - 可以使用 ChatGPT 幫忙生成這段 fetch代碼。
- 使用
4. 步驟 C:設定 n8n Webhook Workflow
-
Webhook Node:
- Method: 設定為
POST。 - Path: 自定義路徑。
- Response Mode: 設定為
Immediately(因為 Flowise 只需要知道發送成功,不需要等待 n8n 處理完)。 - Test vs Production: 測試時使用 Test URL,正式運行時務必切換為 Production URL。
- Method: 設定為
-
Google Sheets Node:
- Operation:
Append Row(從資料端新增一列)。 - Mapping: 將 Webhook 接收到的 JSON Body 數據 (Stock Ticker, Price, Summary) 對應到 Google Sheets 的欄位。
- Operation:
5. 測試與上線流程
-
測試 (Test Mode):
- 在 n8n 點擊 “Listen for test event”。
- 在 Flowise 輸入 “Tesla news and price”。
- Flowise 觸發流程 ➔ n8n 收到數據 ➔ 寫入 Google Sheets。
-
上線 (Production Mode)步驟:
很多人測試成功後,切換到 Production 模式卻失敗,通常是因為忘記更新 URL (關鍵陷阱)。
- 將 n8n Workflow 設為 Active。
- 複製 Webhook 的 Production URL。
- 回到 Flowise 的 Custom Tool,更新代碼中的 URL。
- 儲存 Flowise Workflow。
6. 總結
透過這兩節課 (81 & 82),我們學習了 Flowise 與 n8n 的雙向打通:
-
n8n ➔ Flowise: 適合讓 n8n 主導流程,將 Flowise 當作一個「超級工具」來使用(例如利用 Flowise 的 RAG 能力)。
-
Flowise ➔ n8n: 適合建構複雜的 Multi-Agent 系統,利用 Flowise 的編排能力,最後將結構化結果輸出到 n8n 進行後續自動化處理(如歸檔、通知)。


