安安~我是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 測試自然語言選擇時,才需要模型憑證。
昨天的 v3-day-12 用來重播本機 Tool 生命週期;今天程式沒有建立新的里程碑。這次要看的
是另一條證據鏈:完成版活動搜尋頁是否被瀏覽器發現,以及 Inspector 裡的測試 Agent 是否會
從自然語言自行選中 search_events。
因此今天不把本機 tag 當成公開站的替身,也不拿手動 Execute Tool 冒充 Agent 選擇。測試前
先確認公開頁面能正常開啟、Inspector catalog 看得到 search_events,再設定模型憑證。接下來
發生的 429,也才知道應該沿著 Gemini 額度這條線排查,而不是回頭亂改網站 schema。
進入 Google AI Studio 的 API Keys 頁,為測試建立獨立 Project,再選 Create API key。不要共用正式服務憑證,也不要把 Key 寫進網站、文章、截圖或 Git。

圖 1:文章只保留建立入口與 Project 關係;實際 Key 必須完全遮蔽。
把 Key 貼到 Inspector 的 Update Gemini API key。它屬於本機擴充功能的測試設定,不應成為 AgentReady Events 的環境變數。
第一次測試時,我遇到的不是 WebMCP 錯誤,而是:
429 RESOURCE_EXHAUSTED
Your prepayment credits are depleted.
這表示模型請求在 Tool selection 以前就被拒絕。若把它算成 search_events 失敗,會修錯地方。
AI Studio 的 Billing 可以使用 Prepay credits。加值前先確認:

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

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

圖 4:Spend cap 是實驗防線,不應被解讀成絕對不超支保證;介面也提示統計可能延遲。
若需要加值,在 Buy credits 對話框選擇金額前,先保持 Auto-reload 關閉。本文不建議一個通用金額;模型、題數與價格都可能變動。原則是用專案隔離、低額預付與支出上限,把測試成本的最壞情況先框住。
429 原始 Inspector trace 後來已被 reset,但 AI Studio Usage 仍保留一筆 429 TooManyRequests 遙測:

圖 5:這張圖只能證明模型 API 發生過 429,不能還原當時完整 prompt 或 WebMCP 呼叫。
開啟完成版活動搜尋頁與 Inspector,在 User Prompt 輸入:
幫我找台北、免費,而且適合入門者的活動。
按 Send。成功紀錄必須同時看到:
User prompt
AI calling tool "search_events"
Tool input
Tool result
AI result

圖 6:Agent 自行選擇 search_events,輸入台北、免費、入門,網站回傳固定活動,最後回答也以 Tool result 為依據。
這裡沒有從 Tool 下拉選單代選,也沒有先手動填 Input Arguments。Agent 的確從自然語言選到 search_events;這個單一案例可以標為真實 Agent 呼叫。
但結論要保持窄:
get_page_content 或 list_events,不代表網站真的註冊過。除錯時先核對 catalog,再核對 trace。Tool name 不在 catalog,就不要為了配合模型猜測去新增第六支 Tool。
一次 search_events 成功,不能替正式五個 Tool、三條 Journey 或所有測試案例背書。Gemini API 可用也不等於 WebMCP 可用;兩者只是今天在 Inspector 測試路徑中合作。
這份搜尋 trace 終於把系列開頭的預覽接回來,也正好提醒我該踩煞車了。明天先把五支
Tool、三條 Journey、風險與人類停點正式凍結,不再趁成功畫面漂亮就追加第六支。
後面每次成功或失敗,都必須回到同一份產品契約說話。