Alat: resolve_names
Menyelesaikan daftar batch kueri lokasi tertentu (nama tempat terkenal atau alamat persis) menjadi ID Tempat Google Maps kanonis.
Persyaratan Input (PENTING):
queries(array objek - WAJIB): Daftar kueri lokasi yang akan di-resolve. Anda dapat menentukan hingga 20 kueri.- Setiap objek kueri harus memiliki:
text(string - WAJIB): Kueri teks yang mewakili nama atau alamat tempat tertentu yang akan di-resolve.- Contoh:
'Googleplex, Mountain View, CA','1600 Amphitheatre Pkwy, Mountain View, CA','Eiffel Tower, Paris'.
- Contoh:
- Setiap objek kueri harus memiliki:
location_bias(objek - OPSIONAL): Gunakan ini untuk memprioritaskan hasil di dekat area geografis tertentu.- Format:
{"viewport": {"low": {"latitude": [value], "longitude": [value]}, "high": {"latitude": [value], "longitude": [value]}}}
- Format:
region_code(string - OPSIONAL): Kode wilayah CLDR Unicode (kode negara dua huruf, misalnya,US,CA) pengguna untuk membiaskan hasil.
Petunjuk untuk Panggilan Alat:
- Kekhususan (PENTING): Kueri harus mewakili nama atau alamat tempat tertentu. Penelusuran umum seperti
'restaurants'atau nama jaringan seperti'Starbucks'tidak didukung. - JANGAN panggil alat ini jika alat downstream yang ingin Anda panggil sudah menerima string alamat mentah atau nama tempat secara langsung.
Simpan ke Google Maps:
- Responsnya mencakup kolom
save_to_maps_url: satu link Maps Google yang berisi semua Tempat yang berhasil di-resolve. - Jika pengguna ingin menyimpan, membagikan, atau membuka tempat yang di-resolve sebagai daftar di Google Maps, tampilkan link ini kepada pengguna. JANGAN membuat link ini sendiri.
Penanganan Error (PENTING):
- Alat ini adalah alat batch processing. Permintaan mungkin menampilkan "hasil yang beragam" (misalnya, beberapa kueri berhasil diselesaikan, sementara yang lain gagal).
- Daftar output
resultsdijamin akan dipetakan 1:1 dengan indeksqueriesinput. Kueri yang gagal akan menghasilkan pesanResultkosong (tidak adaentityyang ditetapkan) pada indeks yang sesuai dalam daftarresults. - Anda HARUS memeriksa kolom peta
failed_requestsdalam respons untuk mengidentifikasi indeks kueri tertentu yang gagal. Kuncifailed_requestsmewakili indeks berbasis 0 dari kueri yang gagal dalam permintaan. Jangan berasumsi bahwa seluruh panggilan batch gagal karena kegagalan parsial.
Contoh kode berikut menunjukkan cara menggunakan curl untuk memanggil alat MCP resolve_names.
| Permintaan 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 }' |
Skema Input
Pesan permintaan untuk ResolveNames.
ResolveNamesRequest
| Representasi JSON |
|---|
{ "queries": [ { object ( |
| Kolom | |
|---|---|
queries[] |
Wajib. Daftar kueri lokasi yang akan di-resolve. Anda dapat menentukan hingga 20 kueri. |
locationBias |
Opsional. Wilayah opsional untuk membiaskan hasil resolusi. Jika ditentukan, hasil resolusi akan cenderung mengarah ke entitas yang lebih dekat dengan wilayah ini. Menyertakan Jika |
regionCode |
Opsional. Kode wilayah opsional untuk membiaskan hasil resolusi. Jika ditentukan, hasil resolusi akan bias terhadap entity yang berada di atau di dekat wilayah yang ditentukan. Kode ini harus berupa kode wilayah CLDR. Misalnya, "US" atau "CA". Menyertakan Jika |
LocationQuery
| Representasi JSON |
|---|
{ "text": string } |
| Kolom | |
|---|---|
text |
Wajib. Kueri teks yang akan di-resolve ke entitas geospasial tertentu di Google Maps, seperti tempat atau alamat. Semakin spesifik kuerinya, semakin akurat penyelesaiannya. Misalnya, "San Francisco", "Googleplex, Mountain View, CA", "1600 Amphitheatre Parkway, Mountain View, CA", atau "Menara Eiffel, Paris". Kueri harus berupa alamat atau nama tempat tertentu. Lokasi umum seperti nama jaringan (misalnya, Starbucks) atau kueri penelusuran seperti "restoran" tidak didukung. |
LocationBias
| Representasi JSON |
|---|
{ // Union field |
| Kolom | |
|---|---|
Kolom union type. Jenis bias lokasi. type hanya dapat berupa salah satu dari berikut: |
|
viewport |
Area pandang yang ditentukan oleh kotak pembatas. |
Area Tampilan
| Representasi JSON |
|---|
{ "low": { object ( |
| Kolom | |
|---|---|
low |
Wajib. Titik rendah area pandang. |
high |
Wajib. Titik tinggi area pandang. |
LatLng
| Representasi JSON |
|---|
{ "latitude": number, "longitude": number } |
| Kolom | |
|---|---|
latitude |
Lintang dalam derajat. Harus dalam rentang [-90.0, +90.0]. |
longitude |
Bujur dalam derajat. Harus dalam rentang [-180.0, +180.0]. |
Skema Output
Pesan respons untuk ResolveNames.
ResolveNamesResponse
| Representasi JSON |
|---|
{ "results": [ { object ( |
| Kolom | |
|---|---|
results[] |
Hanya output. Daftar entitas yang di-resolve dari kueri lokasi. Dijamin akan dipetakan 1:1 dengan indeks |
failedRequests |
Hanya output. Peta yang mengomunikasikan kegagalan sebagian. Kunci adalah indeks permintaan yang gagal di kolom Objek yang berisi daftar pasangan |
saveToMapsUrl |
Hanya output. Link untuk menyimpan semua entitas yang berhasil di-resolve di Google Maps. |
Hasil
| Representasi JSON |
|---|
{ "entity": { object ( |
| Kolom | |
|---|---|
entity |
Hanya output. Entity yang diselesaikan dari kueri lokasi. |
confidence |
Hanya output. Tingkat keyakinan untuk resolusi. |
Entitas
| Representasi JSON |
|---|
{ // Union field |
| Kolom | |
|---|---|
Kolom union entity. Jenis entity yang di-resolve. entity hanya dapat berupa salah satu dari berikut: |
|
place |
Nama resource tempat yang di-resolve. |
FailedRequestsEntry
| Representasi JSON |
|---|
{
"key": integer,
"value": {
object ( |
| Kolom | |
|---|---|
key |
|
value |
|
Status
| Representasi JSON |
|---|
{ "code": integer, "message": string, "details": [ { "@type": string, field1: ..., ... } ] } |
| Kolom | |
|---|---|
code |
Kode status yang harus berupa nilai enum dari |
message |
Pesan error yang ditampilkan ke developer dan seharusnya dalam bahasa Inggris. Setiap pesan error yang ditampilkan kepada pengguna harus dilokalkan dan dikirim di kolom |
details[] |
Daftar pesan yang membawa detail error. Ada seperangkat jenis pesan umum untuk digunakan API. Objek yang berisi kolom tipe arbitrer. Kolom tambahan |
Semua
| Representasi JSON |
|---|
{ "typeUrl": string, "value": string } |
| Kolom | |
|---|---|
typeUrl |
Mengidentifikasi jenis pesan Protobuf yang diserialisasi dengan referensi URI yang terdiri dari awalan yang diakhiri dengan garis miring dan nama jenis yang sepenuhnya memenuhi syarat. Contoh: type.googleapis.com/google.protobuf.StringValue String ini harus berisi setidaknya satu karakter Prefiks bersifat arbitrer dan implementasi Protobuf diharapkan hanya menghapus semua hal hingga dan termasuk Semua string URL jenis harus berupa referensi URI yang sah dengan batasan tambahan (untuk format teks) bahwa konten referensi hanya boleh terdiri dari karakter alfanumerik, escape yang dienkode persen, dan karakter dalam kumpulan berikut (tidak termasuk tanda petik terbalik luar): Dalam desain asli |
value |
Menyimpan serialisasi Protobuf dari jenis yang dijelaskan oleh type_url. String berenkode base64. |
Keyakinan
Tingkat keyakinan untuk resolusi.
| Enum | |
|---|---|
CONFIDENCE_UNSPECIFIED |
Nilai default. Nilai ini tidak digunakan. |
MEDIUM |
Keyakinan sedang menunjukkan bahwa resolusi kemungkinan benar, tetapi mungkin ada kandidat lain. |
HIGH |
Keyakinan tinggi menunjukkan bahwa resolusi sudah benar dan mewakili entitas geospasial tertentu (misalnya, tempat tertentu). |
Anotasi Alat
Anotasi alat dikirim ke klien MCP untuk menjelaskan risiko dasar alat tertentu. Sebagian besar klien memperlakukan petunjuk ini sebagai tidak tepercaya, tetapi petunjuk tersebut dapat digunakan untuk memutuskan kapan perintah konfirmasi dapat dikirim kepada pengguna.
Bersama dengan string judul, petunjuk boolean berikut ditentukan sebagai berikut:
readOnlyHint: Jika benar, alat tidak akan mengubah lingkungannya. Default: false.destructiveHint: Jika benar, alat dapat melakukan tindakan destruktif. Jika salah (false), alat hanya dapat melakukan tindakan aditif. Default: true.idempotentHint: Jika benar, memanggil alat berulang kali dengan argumen yang sama tidak akan memberikan efek tambahan pada lingkungannya. Default: false.openWorldHint: Jika benar, alat dapat berinteraksi dengan 'open world' entitas eksternal. Jika salah, alat hanya dapat berinteraksi dengan entity internal. Misalnya, alat penelusuran web akan bersifat open world, sedangkan alat memori tidak akan bersifat open world.
Destructive Hint: ❌ | Idempotent Hint: ❌ | Read Only Hint: ✅ | Open World Hint: ❌