iT邦幫忙

2026 iThome 鐵人賽

DAY 13
0
Modern Web

別再讓 Agent 猜按鈕:30 天打造並實測 Agent-ready 的 WebMCP 活動網站系列 第 13

Day 13|第一次用 Inspector 測 Agent,先遇到 Gemini API 額度不足

  • 分享至 

  • xImage
  •  

Day 13|第一次用 Inspector 測 Agent,先遇到 Gemini API 額度不足

安安~我是ChiYu~

前天讓 HTML 表單透過 Declarative API 描述自己,昨天再用 Imperative API 管理動態 Tool
的註冊與解除。Chrome 已經看得到 Tool,網站端的生命週期也補好了。準備這麼久,今天總算
可以按下那顆 Send

我沒有從下拉選單指定 Tool,只輸入一句自然語言,想看 Agent 會不會自己選中
search_events。結果第一個回來的不是活動,也不是 schema error,而是 Gemini API 回傳的
429。

這個插曲反而讓測試路徑更清楚:WebMCP、Inspector 與模型額度是三個不同環節。任何一個
失敗,都不能籠統寫成「Tool 壞了」。

這次使用 Inspector 內建的 Gemini 整合。先講清楚角色:

WebMCP:網站如何向瀏覽器公開能力
Inspector:觀察 catalog、手動除錯、送出自然語言任務
Gemini API Key:只供 Inspector 的測試 Agent 呼叫模型

沒有 Gemini Key,網站依然可以實作 WebMCP;只有要在 Inspector 按 Send 測試自然語言選擇時,才需要模型憑證。

今天不切新的程式 Tag,改測公開站與 Inspector

昨天的 v3-day-12 用來重播本機 Tool 生命週期;今天程式沒有建立新的里程碑。這次要看的
是另一條證據鏈:完成版活動搜尋頁是否被瀏覽器發現,以及 Inspector 裡的測試 Agent 是否會
從自然語言自行選中 search_events

因此今天不把本機 tag 當成公開站的替身,也不拿手動 Execute Tool 冒充 Agent 選擇。測試前
先確認公開頁面能正常開啟、Inspector catalog 看得到 search_events,再設定模型憑證。接下來
發生的 429,也才知道應該沿著 Gemini 額度這條線排查,而不是回頭亂改網站 schema。

我先替 Inspector 建一把專用 Key

進入 Google AI Studio 的 API Keys 頁,為測試建立獨立 Project,再選 Create API key。不要共用正式服務憑證,也不要把 Key 寫進網站、文章、截圖或 Git。

Google AI Studio 建立 Gemini API Key

圖 1:文章只保留建立入口與 Project 關係;實際 Key 必須完全遮蔽。

把 Key 貼到 Inspector 的 Update Gemini API key。它屬於本機擴充功能的測試設定,不應成為 AgentReady Events 的環境變數。

429 讓我回頭補上 Prepay 與花費上限

第一次測試時,我遇到的不是 WebMCP 錯誤,而是:

429 RESOURCE_EXHAUSTED
Your prepayment credits are depleted.

這表示模型請求在 Tool selection 以前就被拒絕。若把它算成 search_events 失敗,會修錯地方。

AI Studio 的 Billing 可以使用 Prepay credits。加值前先確認:

  1. Project 綁定的是測試用 Billing account。
  2. Auto-reload 是否關閉。
  3. Monthly spend cap 是否設成自己能接受的低額。

Gemini API Prepay credits 設定

圖 2:Billing Account ID 已遮蔽;畫面保留 Prepay、credit balance 與 Auto-reload Off,足以說明設定。

Gemini API Buy credits 對話框

圖 3:加值前先核對付款方式、金額與 Auto-reload。本文不建議照抄畫面金額。

Gemini API 月支出上限

圖 4:Spend cap 是實驗防線,不應被解讀成絕對不超支保證;介面也提示統計可能延遲。

若需要加值,在 Buy credits 對話框選擇金額前,先保持 Auto-reload 關閉。本文不建議一個通用金額;模型、題數與價格都可能變動。原則是用專案隔離、低額預付與支出上限,把測試成本的最壞情況先框住。

429 原始 Inspector trace 後來已被 reset,但 AI Studio Usage 仍保留一筆 429 TooManyRequests 遙測:

AI Studio 保留 429 TooManyRequests

圖 5:這張圖只能證明模型 API 發生過 429,不能還原當時完整 prompt 或 WebMCP 呼叫。

額度恢復後,我改用 Send 讓模型自己選

開啟完成版活動搜尋頁與 Inspector,在 User Prompt 輸入:

幫我找台北、免費,而且適合入門者的活動。

Send。成功紀錄必須同時看到:

User prompt
AI calling tool "search_events"
Tool input
Tool result
AI result

第一次自然語言搜尋的完整 Inspector trace

圖 6:Agent 自行選擇 search_events,輸入台北、免費、入門,網站回傳固定活動,最後回答也以 Tool result 為依據。

這裡沒有從 Tool 下拉選單代選,也沒有先手動填 Input Arguments。Agent 的確從自然語言選到 search_events;這個單一案例可以標為真實 Agent 呼叫。

但結論要保持窄:

  • 已證明:這個公開版本、這段 prompt、這次環境完成一次唯讀搜尋。
  • 尚未證明:Agent 會處理所有搜尋說法、其他 Tool、寫入流程或乾淨環境重播。

這次操作最容易混在一起的三件事

  1. 429 被寫成 Tool bug:模型當時尚未進入 Tool selection。
  2. Execute Tool 被寫成 Agent 自主選擇:實際選擇者是工程師。
  3. 模型虛構不存在的 Tool:Inspector 顯示 get_page_contentlist_events,不代表網站真的註冊過。

除錯時先核對 catalog,再核對 trace。Tool name 不在 catalog,就不要為了配合模型猜測去新增第六支 Tool。

只有完整的 Agent trace,才能證明模型真的呼叫了 Tool

一次 search_events 成功,不能替正式五個 Tool、三條 Journey 或所有測試案例背書。Gemini API 可用也不等於 WebMCP 可用;兩者只是今天在 Inspector 測試路徑中合作。

這份搜尋 trace 終於把系列開頭的預覽接回來,也正好提醒我該踩煞車了。明天先把五支
Tool、三條 Journey、風險與人類停點正式凍結,不再趁成功畫面漂亮就追加第六支。
後面每次成功或失敗,都必須回到同一份產品契約說話。

參考資料


上一篇
Day 12|什麼是 Imperative API?用 JavaScript 控制 Tool 的註冊與解除
下一篇
Day 14|先凍結開發範圍:五支 WebMCP Tool 串起三條活動流程
系列文
別再讓 Agent 猜按鈕:30 天打造並實測 Agent-ready 的 WebMCP 活動網站15
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言