Before you begin
- Labs create a Google Cloud project and resources for a fixed time
- Labs have a time limit and no pause feature. If you end the lab, you'll have to restart from the beginning.
- On the top left of your screen, click Start lab to begin
Modify an ADK Agent to use MCP
/ 100
大型語言模型 (LLM) 功能強大,但有兩項主要限制:既有知識停留在訓練當下的時間點,而且缺乏與外界互動的能力,因此無法存取即時資料,或執行預約會議或更新客戶記錄等操作。
這時 Model Context Protocol (MCP) 便能派上用場!MCP 是一項開放標準,旨在化解 LLM 的限制。
MCP 為 LLM 提供安全的標準化「語言」,可與外部資料、應用程式和服務溝通。這項技術就像一座橋梁,讓 AI 代理不僅可以活用靜態知識,還能以動態方式擷取最新資訊並採取行動,進而提高準確度、實用性和自動化程度。
本實驗室逐步說明如何安裝 Agent Development Kit (ADK)、將現有 ADK 代理修改為可以使用 MCP,以及部署更新後的代理,透過指令列介面啟動互動式工作階段。
在本實驗室中,您將瞭解如何執行下列工作:
在終端機執行下列指令,從 Cloud Storage bucket 複製本實驗室用到的程式碼檔案:
執行下列指令來設定環境,並在 currency-agent 目錄建立 .env 檔案:
在新的終端機 (依序選取選單列的「Terminal」>「New Terminal」,或按下 CTRL+SHIFT+'),執行下列指令來啟動 MCP 伺服器:
在新的終端機 (依序選取選單列的「Terminal」>「New Terminal」,或按下 CTRL+SHIFT+'),執行下列指令來啟動 A2A 伺服器 (伺服器會在通訊埠 10000 上啟動):
在最初的終端機執行個體,執行下列指令來啟動現有的 Currency Agent:
用提示詞與代理互動,執行下列操作:
代理應該會提供美元和歐元的即時匯率。
試試其他提示詞:
代理應該會提供美元和新台幣的即時匯率。
用提示詞與代理互動,執行下列操作:
從回覆內容可以看出,代理能回覆的的資訊僅限法定貨幣,無法提供任何加密貨幣的當前資料。
在這項工作中,您會將 Currency Agent 改為可以使用 Model Context Protocol (MCP) 伺服器。您可以將這個做法視為呼叫獨立的「貨幣伺服器」(採用公開的 Coinbase API),取得代理原本無法存取的匯率。
點選左側窗格的「檔案總管」圖示,然後前往「currency-agent/mcp-server」專案資料夾。
在「檔案總管」的 mcp-server 目錄,開啟 server.py 檔案,在第 52 行插入下列程式碼,然後儲存變更:
切換至 MCP 伺服器仍在執行的終端機執行個體。
按下 CTRL+C 鍵,停止伺服器。
在同一個終端機執行下列指令,重新啟動 MCP 伺服器:
切換至 A2A 伺服器仍在執行的終端機執行個體。
按下 CTRL+C 鍵,停止伺服器。
在同一個終端機執行下列指令,重新啟動代理:
切換至先前執行 currency_agent 的終端機執行個體。
輸入 exit,結束原本的工作階段。
執行下列指令,重新執行並測試代理:
送出下列提示詞,與代理互動:
現在,Agent 可以透過 MCP 存取 get_crypto_price 工具,可以回答除了法定貨幣以外的其他問題!
點選「Check my progress」,確認目標已達成。
您已成功部署 ADK 代理,並修改為可以使用 Model Context Protocol (MCP) 伺服器。
使用手冊上次更新日期:2026 年 1 月 21 日
實驗室上次測試日期:2026 年 1 月 21 日
Copyright 2026 Google LLC 保留所有權利。Google 和 Google 標誌是 Google LLC 的商標,其他公司和產品名稱則有可能是其關聯公司的商標。
This content is not currently available
We will notify you via email when it becomes available
Great!
We will contact you via email if it becomes available
One lab at a time
Confirm to end all existing labs and start this one