大家好,歡迎來到鐵人賽的第十三天,也是我們全新篇章——Python 實戰篇——的開端!
在過去的一週多裡,n8n 帶領我們快速地驗證了 MCP 的核心思想,並打造出一個功能強大、令人驚豔的 AI 個人助理。我們親眼見證了視覺化工作流的魅力與效率。
那麼,既然 n8n 這麼好用,為什麼我們還需要「自討苦吃」,用 Python 來從頭打造 MCP 應用呢?
今天,我們就來回答這個問題,並認識一下即將陪伴我們接下來旅程的兩位 Python 主角:adk mcp
和 python fast mcp
。
n8n 就類似一個設備齊全的飯店,別人全部都幫你設計好了,而 python 可以全部讓你自己動手來,並且可以全部依照自己的想法去做設計
從 n8n 轉向 Python,是為了追求極致的:
控制力與客製化 (Control & Customization):
在 n8n 中,我們受限於已有的節點。如果想連接一個冷門的資料庫、實現一個非常特殊的加密算法、或設計一套精細的日誌流程,可能會非常困難。而在 Python 中,萬物皆可 import
,你可以引入任何函式庫,實現任何天馬行空的邏輯,不受任何平台限制。
效能與效率 (Performance & Efficiency):
n8n 作為一個通用的自動化平台,其執行過程中存在一定的額外開銷。對於需要處理大量請求、要求毫秒級回應的高吞吐量應用場景,一個基於 FastAPI 或其他高效能框架編寫的 Python 伺服器,能提供遠超 n8n 的原始性能。
複雜邏輯與狀態管理 (Complex Logic & State Management):
我們在 n8n 中見識過「視覺化麵條」的潛在風險。當業務邏輯變得複雜時,用節點連線來表達,很快就會變得難以維護。而 Python 憑藉其清晰的語法、函數、類別和設計模式,能以更優雅、更結構化的方式來管理複雜的商業邏輯和長期狀態。
專業的開發與維運 (Testing & DevOps):
一個成熟的軟體專案,離不開單元測試、整合測試、CI/CD (持續整合/持續部署) 等專業流程。這些在 Python 的生態系中都是原生且成熟的最佳實踐,能確保你的 MCP 服務在迭代過程中依然穩定可靠。
總之,從 n8n 到 Python,是從「快速實現者」到「專業架構師」的轉變。
在 Python 的世界裡,要實現 MCP 協議,我們並不需要從零開始解析 JSON-RPC。社群已經為我們準備好了強大的函式庫。在接下來的系列中,我們將重點介紹和使用兩個核心函式庫:
adk mcp
(Application Development Kit for MCP)adk mcp
將許多 MCP 的底層細節進行了高度抽象和封裝。它提供了簡潔易用的高階 API,讓開發者可以快速上手,專注於工具 (Tool) 本身的商業邏輯開發,而不用過多關心協議的實現細節。Requests
函式庫。它極大地簡化了發送 HTTP 請求的過程,讓開發者用最少的程式碼做最多的事。python fast mcp
fast
就可以看出,這個函式庫的核心目標是性能。它很可能基於 FastAPI 或 Starlette 這類 ASGI 框架構建,原生支援非同步 (async/await),給予開發者更高的控制權和更低的延遲。它可能需要你編寫稍多一些的樣板程式碼,但回報是極致的執行效率。httpx
或 aiohttp
。它們是專為非同步和高效能場景設計的,是構建現代網路應用的首選。adk mcp
vs. python fast mcp
:如何選擇?為了幫助大家更好地理解它們的定位,這裡有一份快速對比表格:
特性 | adk mcp |
python fast mcp |
---|---|---|
主要目標 | 快速開發、易用性 | 極致效能、低延遲 |
抽象層級 | 高階抽象,隱藏細節 | 較低階,給予更多控制權 |
非同步支援 | 支援 | 非同步優先 (Async-first) |
學習曲線 | 較平緩 | 稍陡峭,需理解 ASGI |
適用情境 | 快速打造功能複雜的工具、企業內部應用 | 打造高流量的公開 MCP Server、對性能敏感的服務 |
在我們的鐵人賽中,我們不會只選其一,而是會兩者都學!
我們將先從 adk mcp
開始,快速地用 Python 建立我們的第一個 MCP 工具。之後,我們會用 python fast mcp
來重構它,感受性能上的顯著提升。
今天,我們正式吹響了進軍 Python 領域的號角。我們理解了為什麼要從 n8n 邁向 Python,並對即將使用的 adk mcp
和 python fast mcp
兩個函式庫建立了清晰的初步認知。
理論的鋪墊到此為止。從明天開始,我們將正式告別 JSON 配置和滑鼠拖曳,迎接程式碼的挑戰。
準備好你的 VS Code (或其他你喜歡的編輯器)。明天,我們將安裝 adk mcp
,並寫下第一行 Python MCP 程式碼!