工具:resolve_names
將特定位置查詢 (地標名稱或確切地址) 的批次清單,解析為標準 Google 地圖地點 ID。
輸入內容規定 (重要):
queries(物件陣列 - 必填):要解析的地點查詢清單。最多可指定 20 項查詢。- 每個查詢物件都必須包含:
text(字串 - 必填):代表要解析的特定地點名稱或地址的文字查詢。- 示例:
'Googleplex, Mountain View, CA'、'1600 Amphitheatre Pkwy, Mountain View, CA'、'Eiffel Tower, Paris'。
- 示例:
- 每個查詢物件都必須包含:
location_bias(物件 - 選用):用於優先顯示特定地理區域附近的結果。- 格式:
{"viewport": {"low": {"latitude": [value], "longitude": [value]}, "high": {"latitude": [value], "longitude": [value]}}}
- 格式:
region_code(字串 - 選用):使用者的 Unicode CLDR 區域代碼 (兩個字母的國家/地區代碼,例如US、CA),用於偏好結果。
工具呼叫操作說明:
- 具體性 (重要):查詢必須代表特定地點名稱或地址。不支援「
'restaurants'」等一般搜尋或「'Starbucks'」等連鎖店名稱。 - 如果預計叫用的下游工具已直接接受原始地址或地點名稱字串,請「不要」呼叫這項工具。
儲存至 Google 地圖:
- 回應包含
save_to_maps_url欄位:單一 Google 地圖連結,內含所有成功解析的地點。 - 如果使用者想在 Google 地圖中,將解析的地點儲存、分享或開啟為清單,請向使用者顯示這個連結。請勿自行建構這個連結。
錯誤處理 (重要):
- 這項工具可批次處理資料,要求可能會傳回「混合結果」(例如部分查詢成功解析,其他查詢則失敗)。
results的輸出清單保證與輸入queries索引一對一對應。如果查詢失敗,results清單中對應索引處會出現空白的Result訊息 (未設定entity)。- 您必須檢查回應中的
failed_requests對應欄位,找出失敗的特定查詢索引。failed_requests的鍵代表要求中失敗查詢的索引 (從 0 開始)。請勿假設整個批次呼叫因部分失敗而失敗。
下列程式碼範例說明如何使用 curl 呼叫 resolve_names MCP 工具。
| Curl 要求 |
|---|
curl --location 'https://mapstools.googleapis.com/mcp' \ --header 'content-type: application/json' \ --header 'accept: application/json, text/event-stream' \ --data '{ "method": "tools/call", "params": { "name": "resolve_names", "arguments": { // Provide these details according to the MCP tool specification. } }, "jsonrpc": "2.0", "id": 1 }' |
輸入內容的結構定義
ResolveNames 的要求訊息。
ResolveNamesRequest
| JSON 表示法 |
|---|
{ "queries": [ { object ( |
| 欄位 | |
|---|---|
queries[] |
必填。要解析的位置查詢清單。最多可指定 20 項查詢。 |
locationBias |
(選用步驟) 選用區域,可影響解析結果。如果指定,解析結果會偏向靠近這個區域的實體。加入 如果同時指定 |
regionCode |
(選用步驟) 選用的區域代碼,用於偏好解析結果。如果指定,解析結果會偏向位於指定區域內或附近的實體。請使用 CLDR 區域代碼。例如「US」或「CA」。加入 如果同時指定 |
LocationQuery
| JSON 表示法 |
|---|
{ "text": string } |
| 欄位 | |
|---|---|
text |
必填。文字查詢,用於解析 Google 地圖上的特定地理空間實體,例如地點或地址。查詢越具體,解決方案就越準確。例如「舊金山」、「Googleplex, Mountain View, CA」、「1600 Amphitheatre Parkway, Mountain View, CA」或「巴黎艾菲爾鐵塔」。查詢必須是特定地址或地點名稱。不支援連鎖店名稱 (例如星巴克) 等大概位置,或「餐廳」等搜尋查詢。 |
LocationBias
| JSON 表示法 |
|---|
{ // Union field |
| 欄位 | |
|---|---|
聯集欄位 type。地點偏誤的類型。type 只能是下列其中一項: |
|
viewport |
由定界框定義的可視區域。 |
可視區域
| JSON 表示法 |
|---|
{ "low": { object ( |
| 欄位 | |
|---|---|
low |
必填。可視區域的低點。 |
high |
必填。可視區域的最高點。 |
LatLng
| JSON 表示法 |
|---|
{ "latitude": number, "longitude": number } |
| 欄位 | |
|---|---|
latitude |
緯度度數,必須介於 [-90.0, +90.0] 的範圍之間。 |
longitude |
經度度數,必須介於 [-180.0, +180.0] 的範圍之間。 |
輸出內容的結構定義
ResolveNames 的回應訊息。
ResolveNamesResponse
| JSON 表示法 |
|---|
{ "results": [ { object ( |
| 欄位 | |
|---|---|
results[] |
僅供輸出。位置查詢中已解析的實體清單。保證與要求 |
failedRequests |
僅供輸出。傳達部分失敗的地圖。鍵是 這個物件中包含 |
saveToMapsUrl |
僅供輸出。這個連結可將所有成功解析的實體儲存到 Google 地圖。 |
結果
| JSON 表示法 |
|---|
{ "entity": { object ( |
| 欄位 | |
|---|---|
entity |
僅供輸出。從位置查詢解析出的實體。 |
confidence |
僅供輸出。解析度的信賴水準。 |
實體
| JSON 表示法 |
|---|
{ // Union field |
| 欄位 | |
|---|---|
聯集欄位 entity。解析的實體類型。entity 只能是下列其中一項: |
|
place |
已解析地點的資源名稱。 |
FailedRequestsEntry
| JSON 表示法 |
|---|
{
"key": integer,
"value": {
object ( |
| 欄位 | |
|---|---|
key |
|
value |
|
狀態
| JSON 表示法 |
|---|
{ "code": integer, "message": string, "details": [ { "@type": string, field1: ..., ... } ] } |
| 欄位 | |
|---|---|
code |
狀態碼,應為 |
message |
向開發人員顯示的錯誤訊息,應以英文呈現。所有面向使用者的錯誤訊息都應經過本地化,並透過 |
details[] |
包含錯誤詳細資料的訊息清單。這是供 API 使用的一組常用訊息類型。 包含任意類型欄位的物件。額外的 |
不限
| JSON 表示法 |
|---|
{ "typeUrl": string, "value": string } |
| 欄位 | |
|---|---|
typeUrl |
使用 URI 參照來識別序列化 Protobuf 訊息的類型,其中包含以斜線結尾的前置字串,以及完整類型名稱。 範例:type.googleapis.com/google.protobuf.StringValue 這個字串必須包含至少一個 前置字串可任意指定,Protobuf 實作項目應直接移除最後一個 所有類型網址字串都必須是合法的 URI 參照,且有額外限制 (文字格式),參照內容只能包含英數字元、百分比編碼逸出字元,以及下列字元集中的字元 (不含外側反引號): 在 |
value |
保留 type_url 所述類型的 Protobuf 序列化。 Base64 編碼字串。 |
可信度
解析度的信賴水準。
| 列舉 | |
|---|---|
CONFIDENCE_UNSPECIFIED |
預設值。這個值不會用到。 |
MEDIUM |
中等可信度表示解析結果可能正確,但可能還有其他候選項目。 |
HIGH |
高信賴度表示解析結果正確,且代表特定地理空間實體 (例如特定地點)。 |
工具註解
工具註解會傳送至 MCP 用戶端,說明特定工具的基本風險。大多數用戶端會將這些提示視為不受信任,但可用於決定何時向使用者傳送確認提示。
除了標題字串外,下列布林值提示的定義如下:
readOnlyHint:如果設為 true,工具不會修改環境。預設值:false。destructiveHint:如果為 true,工具可以執行破壞性動作。如果為 false,則工具只能執行附加動作。預設值:true。idempotentHint:如果設為 true,則使用相同引數重複呼叫工具,不會對環境造成額外影響。預設值:false。openWorldHint:如果設為 true,工具就能與外部實體的「開放世界」互動。如果設為 false,工具只能與內部實體互動。舉例來說,網頁搜尋工具是開放世界,而記憶工具則不是。
Destructive Hint: ❌ | Idempotent Hint: ❌ | Read Only Hint: ✅ | Open World Hint: ❌