Alat agen Maps Experience (sebelumnya Maps Grounding Lite) adalah layanan Google Maps Platform dengan dukungan Model Context Protocol (MCP) dan REST untuk melakukan grounding pada aplikasi AI Anda dengan data geospasial tepercaya dari Google Maps. Alatnya memungkinkan LLM mengakses data tempat, cuaca, kualitas udara, serbuk sari, dan rute. Alat lain me-resolve nama lokasi dan URL Google Maps ke ID tempat. Anda dapat mencoba alat agen Maps Experience dengan mengaktifkan server MCP-nya di alat apa pun yang mendukung server MCP. Anda juga dapat memanggil setiap alat sebagai metode REST. Untuk mengetahui detailnya, lihat Memanggil alat dengan REST.
Alat agentic Maps Experience adalah satu produk dengan dua SKU: Essentials dan Pro. Setiap permintaan ditagih dalam paket Essentials, kecuali jika menggunakan opsi Pro. Opsi Pro menambahkan penelusuran tempat di sepanjang rute, detail tempat yang diperluas, lebih banyak tempat per penelusuran, lebih banyak perhentian per rute, pemilihan rute dengan lalu lintas real-time, perkiraan serbuk sari, dan kualitas udara historis. Kedua SKU menggunakan alat, server MCP, metode REST, dan kredensial yang sama. Untuk mengetahui detailnya, lihat Essentials dan Pro.
Alat
Alat agentic Maps Experience memungkinkan LLM mengakses kemampuan Google Maps berikut:
- Menelusuri tempat: Minta informasi tentang tempat dan dapatkan ringkasan buatan AI. Respons juga menyertakan ID tempat, koordinat lintang/bujur, dan link Google Maps untuk setiap tempat dalam ringkasan. Anda dapat menggunakan ID tempat dan koordinat lintang/bujur dengan Google Maps Platform API lainnya untuk menampilkan tempat di peta. Untuk menampilkan tempat ini dengan Places UI Kit tanpa biaya tambahan, gunakan token visualisasi data agentic (Pratinjau). Dengan Pro, Anda dapat meminta detail tempat yang diperluas, seperti insight dari ulasan, dan hingga 10 tempat per permintaan.
- Telusuri di sepanjang rute:
Temukan tempat di sepanjang rute perjalanan—yang ditentukan menggunakan
retrieval_tokendaricompute_routes,route_endpoints, atauencoded_polyline—dan dapatkan ringkasan yang dihasilkan AI, detail tempat, jarak memutar dan waktu perjalanan, serta token visualisasi data agentic (Pratinjau). Setiap permintaansearch_along_routeditagih berdasarkan SKU Pro. - Mencari informasi cuaca: Minta kondisi lingkungan untuk suatu lokasi, termasuk cuaca (kondisi saat ini, histori per jam selama 24 jam, dan perkiraan per jam dan harian hingga 10 hari) dan kualitas udara saat ini atau perkiraan hingga 4 hari. Dengan Pro, Anda juga dapat meminta perkiraan serbuk sari harian hingga 5 hari (dengan detail spesies tanaman) dan histori kualitas udara per jam hingga 30 hari.
Compute routes: Meminta rute antara tempat asal dan tujuan, secara opsional melalui pemberhentian sementara, dan menampilkan jarak, durasi, dan
retrievalTokenrute untuk ruteDRIVEyang dapat Anda teruskan kesearch_along_route. Dengan Pro, rute dapat memperhitungkan kondisi lalu lintas real-time dan menyertakan lebih banyak perhentian sementara.Selesaikan nama dan Selesaikan URL Maps: Selesaikan nama lokasi, alamat, dan URL Google Maps ke ID tempat. Untuk mengetahui informasi selengkapnya, lihat Resolution API.
Setelah Anda mengaktifkan server MCP, LLM dapat memanggil alatnya untuk mendapatkan informasi grounding untuk jenis data ini. LLM dapat menggunakan informasi ini untuk konteks. Namun, respons akhirnya mungkin tidak menyertakan informasi persis yang ditampilkan oleh server MCP. Verifikasi akurasi respons yang dihasilkan.
Essentials dan Pro
Essentials dan Pro adalah dua SKU dari produk yang sama, bukan produk atau paket terpisah. Permintaan akan ditagih berdasarkan Pro jika menggunakan opsi Pro. Setiap permintaan lainnya akan ditagih berdasarkan Essentials. Opsi Pro adalah kolom biasa dalam permintaan alat, sehingga LLM dapat menggunakannya atas nama Anda. Agen juga dapat menggunakan kedua SKU dalam percakapan yang sama. Misalnya, agen mungkin menggunakan Essentials untuk menemukan kedai kopi di dekat tempat terkenal. Kemudian, model ini mungkin menggunakan Pro untuk menjawab pertanyaan lanjutan tentang minuman khas dan tempat duduk mereka. Tidak ada server, endpoint, atau kredensial MCP terpisah untuk Pro.
Membandingkan Essentials, Pro, dan Grounding with Google Maps
Grounding with Google Maps adalah produk terpisah. Fitur ini disertakan dalam model Gemini di Gemini API, Google AI Studio, dan Gemini Enterprise Agent Platform. Model akan memutuskan kapan harus mengkueri Google Maps dan menampilkan jawaban yang di-grounding dengan kutipan. Pilih Grounding with Google Maps saat Anda membangun di Gemini dan ingin model menangani grounding. Pilih alat agentic Maps Experience untuk model atau framework agen lainnya, atau untuk kontrol langsung atas setiap panggilan alat.
Tabel berikut membandingkan SKU Essentials, SKU Pro, dan Grounding dengan Google Maps:
| Alat agen Maps Experience | Grounding dengan Google Maps | ||
|---|---|---|---|
| SKU Essentials (sebelumnya Maps Grounding Lite) |
SKU Pro | ||
| Cara penagihan permintaan | Setiap permintaan alat yang tidak menggunakan opsi Pro | Setiap permintaan search_along_route, atau permintaan apa pun ke
alat lain yang menggunakan opsi Pro. Lihat
Yang ditagih dalam SKU Pro. |
Setiap kueri Google Maps atau perintah yang di-grounding, bergantung pada platform dan model |
| Model dan platform | Framework model atau agen apa pun yang mendukung MCP atau dapat memanggil REST API. Satu set alat dan kredensial yang sama untuk kedua SKU | Model Gemini di Gemini API, Google AI Studio, dan Gemini Enterprise Agent Platform | |
| Hasil yang ditampilkan alat | Fakta inti: Place Details untuk maksimal 5 tempat per penelusuran, jarak dan durasi rute tanpa info lalu lintas real time, cuaca saat ini dan prakiraan cuaca (plus histori cuaca per jam selama 24 jam), serta kualitas udara saat ini atau prakiraan kualitas udara | Semua yang ada di Essentials, ditambah tempat di sepanjang rute dengan waktu dan jarak putar balik, detail tempat yang diperluas (seperti insight dari ulasan), hingga 10 tempat per penelusuran, rute dengan lalu lintas live, hingga 25 titik jalan perantara, prakiraan polen, dan kualitas udara historis hingga 30 hari | Detail dan insight tempat dari ulasan, serta informasi rute dengan lalu lintas real-time |
| Contoh permintaan | Pertanyaan faktual dan logistik: menemukan toko atau bisnis, jam buka, alamat, perkiraan jarak atau waktu perjalanan, cuaca saat ini, prakiraan cuaca 10 hari, dan prakiraan kualitas udara saat ini atau 4 hari ke depan | Pertanyaan subjektif, luas, atau khusus: tempat di sepanjang rute, suasana, hidangan khas, tips pengunjung, perbandingan 6 hingga 10 tempat, waktu perjalanan dalam lalu lintas saat ini, perkiraan serbuk sari dan alergi, serta histori kualitas udara selama 30 hari terakhir | Penelusuran berbasis percakapan, perencanaan itinerari, dan penemuan lokal di Gemini |
| Visualisasi Kit UI Places | Disertakan tanpa biaya tambahan dengan token visualisasi data agentic (Pratinjau) | Ditagihkan terpisah | |
| Penggunaan bulanan tanpa biaya | 10.000 permintaan | 5.000 permintaan | Bergantung pada platform dan model. Misalnya, di Gemini API, model Gemini 3 dan yang lebih baru menyertakan 5.000 kueri penelusuran per bulan tanpa biaya. Setelah itu, kueri penelusuran dikenai biaya $14 per 1.000 kueri. |
| Harga bayar sesuai penggunaan | $7,00 per 1.000 permintaan, dengan diskon volume | $14,00 per 1.000 permintaan, dengan diskon volume | |
| Berlangganan untuk menghemat | Disertakan dalam paket Essentials dan Pro | Disertakan dalam paket Pro | Tidak tersedia |
| Mulai | Satu penyiapan untuk kedua SKU: lihat Mengonfigurasi LLM untuk menggunakan server MCP atau Memanggil alat dengan REST. | Gemini API atau Agent Platform | |
Opsi ini berfungsi sama dengan kedua SKU: mode perjalanan, waktu keberangkatan dan kedatangan, rute alternatif, polyline rute, pencarian cuaca, pencarian kualitas udara saat ini dan prakiraan (termasuk konsentrasi polutan dan skala AQI lokal), sistem unit cuaca, dan Resolution API. Label ini tidak mengubah SKU yang ditagih untuk permintaan.
Yang ditagih dalam SKU Pro
Tabel berikut merangkum kemampuan yang disertakan dalam Essentials dan kemampuan yang memerlukan SKU Pro:
| Alat | Kemampuan | Essentials | Pro |
|---|---|---|---|
| Menelusuri tempat | Tempat per permintaan | Maksimal 5 | 6 hingga 10 (page_size dari 6 hingga 10) |
| Detail tempat yang diperluas dalam ringkasan penelusuran (insight dari ulasan, sorotan menu, suasana, tingkat kesibukan tempat, tips pengunjung, dan jarak atau waktu perjalanan untuk kueri kedekatan) | Tidak tersedia | Tersedia dengan include_extended_details |
|
| Telusuri sepanjang rute | Tempat di sepanjang rute, jarak dan waktu perjalanan rute memutar, serta detail tempat yang diperluas atau waktu rute memutar yang memperhitungkan lalu lintas (opsional) | Tidak tersedia | Setiap permintaan |
| Menghitung rute | Preferensi pemilihan rute | Tidak memperhitungkan lalu lintas live | Memperhitungkan lalu lintas live, atau data transportasi umum real-time untuk rute transportasi umum, dengan ROUTING_PREFERENCE_TRAFFIC_AWARE_OPTIMAL |
| Titik jalan perantara per rute | Maksimal 10 | 11 hingga 25 (lebih dari 10 intermediate_waypoints) |
|
| Mencari informasi cuaca | Cuaca | Cuaca saat ini, perkiraan per jam dan harian (hingga 10 hari), dan
histori per jam hingga 24 jam (WEATHER di
capabilities, atau permintaan lama yang menghilangkan
capabilities, weather_options,
air_quality_options, dan language_code) |
Tidak ada opsi Pro (semua data WEATHER disertakan dalam Essentials) |
| Kualitas udara | Kondisi saat ini, hasil per jam sepanjang hari ini, dan perkiraan per jam hingga 4 hari (AIR_QUALITY di capabilities) |
Kualitas udara historis hingga 30 hari terakhir
(AIR_QUALITY di capabilities dengan
date sebelum hari ini atau hour sebelumnya di
zona waktu lokasi), saat ditampilkan dalam respons |
|
| Pollen | Tidak tersedia | Perkiraan serbuk sari harian hingga 5 hari dan detail spesies tanaman
(POLLEN di capabilities), jika ditampilkan dalam
respons |
|
| Resolution API | Tidak ada opsi Pro. Semua permintaan ditagih berdasarkan SKU Places API Text Search Essentials (IDs Only) tanpa biaya. | ||
Untuk opsi permintaan yang mengaktifkan setiap kemampuan, lihat Menelusuri tempat, Menelusuri di sepanjang rute, Menghitung rute, dan Mencari cuaca.
Mengontrol penggunaan Pro
Opsi Pro dinonaktifkan secara default di search_places, compute_routes, dan
lookup_weather. LLM akan menetapkannya—atau memanggil search_along_route—saat permintaan pengguna memerlukannya dan deskripsi alat atau petunjuk Anda mengizinkannya.
Deskripsi alat memberi tahu model opsi mana yang lebih mahal dan kapan harus
menggunakannya: page_size di atas 5, detail tempat yang diperluas, lebih dari 10 titik jalan
perantara, pemilihan rute berbasis lalu lintas, dan search_along_route. Jika Anda memanggil alat dengan REST, kode Anda akan menetapkan setiap opsi. Untuk mengelola biaya:
- Beri tahu model kapan opsi Pro sesuai. Misalnya: "Tetapkan
include_extended_detailshanya jika pengguna bertanya tentang ulasan, menu, atau suasana." Atau: "GunakanROUTING_PREFERENCE_TRAFFIC_AWARE_OPTIMALhanya saat pengguna meminta waktu perjalanan saat ini." Atau: "Panggilsearch_along_routehanya saat pengguna meminta tempat di sepanjang rute." Atau: "SertakanPOLLEN, atauAIR_QUALITYdengandateatauhoursebelumnya, hanya jika pengguna bertanya tentang serbuk sari, alergi, atau kualitas udara historis." - Agar agen tetap menggunakan SKU Essentials, instruksikan model untuk tidak pernah memanggil
search_along_routeatau menggunakan opsi Pro. Opsi Pro adalahinclude_extended_details,page_sizedi atas 5,ROUTING_PREFERENCE_TRAFFIC_AWARE_OPTIMAL, lebih dari 10 titik jalan perantara,POLLENdicapabilities, dandateatauhoursebelumnya denganAIR_QUALITYdicapabilities. Jika klien MCP Anda dapat membatasi alat atau argumen alat, Anda juga dapat memblokirsearch_along_routedan nilai argumen tersebut dalam konfigurasi alatnya. - Pantau SKU Maps Grounding Pro di laporan penagihan dan tetapkan pemberitahuan anggaran.
Resolution API
Alat agen Maps Experience menyediakan Resolution API. API ini me-resolve teks lokasi dan URL bentuk bebas menjadi ID tempat Google Maps yang terstruktur. Resolution API tersedia sebagai metode REST dan sebagai alat di server MCP:
- Menyelesaikan nama (REST, MCP): Menyelesaikan batch nama atau alamat lokasi ke entity tempat tertentu di Google Maps. Alat ini membantu mendasarkan kueri pengguna yang tidak terstruktur ke ID tempat yang stabil.
- Menyelesaikan URL Maps (REST, MCP): Menyelesaikan sekumpulan URL Google Maps ke entity tempat tertentu. Format yang didukung mencakup URL tempat standar dan URL yang dipersingkat.
Anda dapat menggunakan ID tempat yang ditampilkan dengan Google Maps Platform API lainnya. Setiap respons juga menyertakan link yang menyimpan tempat yang di-resolve sebagai daftar di Google Maps.
Untuk mengetahui informasi selengkapnya, lihat Maps Tools Resolution API.
Coba aplikasi contoh (Buka di tab baru)
Penagihan dan kuota
Cara Anda ditagih
Dengan model harga bayar sesuai penggunaan Google Maps Platform, penggunaan alat agen Maps Experience dihitung untuk setiap permintaan. Setiap permintaan mewakili satu peristiwa penagihan. Penggunaan dilacak untuk setiap SKU produk. Tagihan Anda menampilkan item baris untuk setiap SKU selain total tagihan Anda. Lihat Ringkasan pelaporan untuk mengetahui informasi selengkapnya.
Setiap permintaan Telusuri tempat, Telusuri di sepanjang rute, Hitung rute, atau Cari info cuaca, melalui server MCP atau dengan REST, ditagih dalam satu SKU:
Maps Grounding Essentials
atau
Maps Grounding Pro.
Setiap permintaan search_along_route dan permintaan apa pun yang menggunakan opsi Pro akan
ditagih berdasarkan SKU Pro. Permintaan tidak pernah ditagih berdasarkan kedua SKU, dan jumlah opsi Pro dalam permintaan tidak mengubah tagihan. Untuk
kemampuan dan opsi yang menentukan SKU untuk setiap alat, lihat
Apa yang ditagih dalam SKU Pro.
Permintaan Maps Grounding Essentials ditagih sebesar $7,00 per 1.000 permintaan setelah 10.000 permintaan pertama setiap bulan. Permintaan Maps Grounding Pro ditagih sebesar $14,00 per 1.000 permintaan setelah 5.000 permintaan pertama setiap bulan. Kedua SKU memiliki diskon volume pada penggunaan bulanan yang lebih tinggi.
Lihat Tabel harga utama dan Tabel harga India untuk mengetahui detail harga.
Permintaan Resolution API (ResolveNames dan ResolveMapsUrls) ditagih tanpa biaya berdasarkan SKU Places API Text Search Essentials (IDs Only).
Jika Anda menampilkan tempat dari respons search_places atau search_along_route dengan Places UI Kit, Anda dapat menggunakan token visualisasi data agentic (Pratinjau) agar permintaan Places UI Kit tersebut tidak ditagih.
Penggunaan SKU Essentials disertakan dalam paket Berlangganan untuk berhemat Essentials dan Pro. Penggunaan SKU Pro disertakan dalam paket Pro.
Kuota
Kuota berikut berlaku untuk alat dan API yang disediakan oleh alat agentic Maps Experience:
- Search places: 300 kueri per menit untuk setiap project.
- Penelusuran di sepanjang rute: 300 kueri per menit untuk setiap project.
- Mencari cuaca: 300 kueri per menit untuk setiap project.
- Compute routes: 300 kueri per menit untuk setiap project.
- Menyelesaikan nama: 600 kueri per menit untuk setiap project.
- Resolve Maps URLs: 600 kueri per menit untuk setiap project.
Kuota dihitung untuk setiap alat dan digunakan bersama oleh SKU Essentials dan Pro. Permintaan Pro menggunakan kuota yang sama dengan permintaan Essentials untuk alat yang sama.
Setiap permintaan Resolution API dihitung sebagai satu kueri, terlepas dari jumlah item yang dimuatnya.
Kebijakan dan persyaratan layanan
Alat agen Maps Experience tunduk pada Persyaratan Layanan Google Maps Platform, termasuk persyaratan khusus layanan. Bagian ini menjelaskan persyaratan penggunaan tambahan untuk alat agen Maps Experience, termasuk LLM yang kompatibel dan atribusi sumber. Persyaratan ini berlaku untuk semua hasil, apa pun SKU yang ditagih untuk permintaan.
Persyaratan untuk LLM yang Kompatibel
Anda hanya boleh menggunakan alat agen Maps Experience dengan LLM yang mematuhi Persyaratan Layanan Google Maps Platform.
Misalnya, Anda bertanggung jawab untuk memastikan bahwa Konten Google Maps tidak di-cache, disimpan, atau digunakan untuk meningkatkan kualitas LLM yang Anda pilih untuk digunakan. Sebelum menggunakan alat agen Maps Experience, Anda harus meninjau Persyaratan Layanan untuk model apa pun yang ingin Anda gunakan dengan alat agen Maps Experience. Anda tidak boleh menggunakan alat agen Maps Experience dengan model apa pun yang menggunakan input data ke dalam model untuk pelatihan atau peningkatan model apa pun. Anda bertanggung jawab untuk memastikan bahwa penggunaan model oleh Anda sepenuhnya mematuhi batasan terkait Konten Google Maps dalam Persyaratan Layanan Google Maps Platform, termasuk persyaratan khusus layanan.
Persyaratan atribusi untuk sumber Google Maps
Setiap respons alat dari alat agentic Maps Experience menyertakan sumber. Saat Anda menampilkan hasil dari alat agentic Maps Experience, Anda harus menyertakan sumber Google Maps terkait dan memenuhi persyaratan berikut:
- Sumber Google Maps harus segera mengikuti konten yang dihasilkan yang didukung oleh sumber tersebut. Konten yang dihasilkan ini juga disebut sebagai Output Grounding.
- Sumber Google Maps harus dapat dilihat dalam satu interaksi pengguna.
Sumber untuk alat Telusuri tempat dan Telusuri di sepanjang rute
Kolom places alat search_places dan kolom results[].place alat search_along_route menyediakan sumber yang mendukung summary. Untuk setiap
tempat, metadata berikut akan ditampilkan:
place(nama resource)idlocationgoogleMapsLinksattribution
Untuk setiap tempat, Anda harus membuat pratinjau link yang memenuhi persyaratan berikut:
- Atribusikan setiap sumber ke Google Maps, dengan mengikuti panduan atribusi teks alat agentic Maps Experience.
- Tautkan ke sumber menggunakan
googleMapsLinks.placeUrldari respons.
Persyaratan ini juga berlaku untuk ringkasan yang menyertakan detail tempat yang diperluas
dari Pro, seperti insight dari ulasan. summary mengutip setiap tempat dengan indeks berbasis nol, seperti [0], yang dipetakan ke entri di places atau results.
Setiap tempat juga menyertakan googleMapsLinks.reviewsUrl, yang tertaut ke
ulasan tempat tersebut di Google Maps. Pengguna dapat mengikutinya untuk melihat ulasan di balik
insight.
Antarmuka yang mengutamakan suara
Jika aplikasi Anda menampilkan hasil alat agentic Maps Experience melalui suara, Anda juga harus memenuhi persyaratan untuk antarmuka yang mengutamakan suara. Rangkuman:
- Sumber: Menampilkan sumber Google Maps di UI pendamping yang menampilkan rekaman historis verbatim dari percakapan suara.
- Pengungkapan aktif: Pada saat interaksi, beri tahu pengguna bahwa konten buatan AI mungkin menyertakan informasi dari Google Maps. Beri tahu juga bahwa sumber mendetail tersedia di UI pendamping. Anda dapat melakukannya di layar atau dengan suara.
- Pengungkapan persisten: Simpan penjelasan persisten, misalnya di menu setelan suara, bahwa konten buatan AI dapat menyertakan konten Google Maps.
- Pertanyaan pengguna: Jawab pertanyaan pengguna secara akurat tentang sumber konten, dan arahkan mereka ke UI pendamping untuk mengetahui detailnya.
Mengonfigurasi LLM untuk menggunakan server MCP
Untuk menggunakan alat agentic Maps Experience, Anda memerlukan project Google Cloud dengan layanan API alat agentic Maps Experience diaktifkan. Anda juga memerlukan kunci API atau client ID OAuth. Kemudian, Anda dapat mengonfigurasi LLM untuk mengakses server MCP. Server MCP menggunakan transpor Streamable HTTP.
Mengaktifkan alat agentic Maps Experience di project Google Cloud Anda
Untuk mengaktifkan API di project Anda:
- Di Konsol Google Cloud, pilih project yang ingin Anda gunakan untuk alat agen Maps Experience.
- Aktifkan penagihan untuk project di Konsol Google Cloud.
- Aktifkan alat agentic Maps Experience di Library API Konsol Google Cloud.
Melakukan autentikasi menggunakan kunci API
Anda dapat menggunakan kunci API yang ada dengan alat agentic Maps Experience atau membuat kunci API baru. Apa pun caranya, aktifkan layanan API Maps Experience agent tools di project Google Cloud dan kunci.
Untuk melakukan autentikasi menggunakan kunci API:
- Buat atau konfigurasikan kunci API dengan mengikuti langkah-langkah di Memulai Google Maps Platform.
- Teruskan kunci ke server MCP menggunakan header
X-Goog-Api-Key. Anda harus menentukannya sebagai header HTTP kustom dalam konfigurasi alat MCP LLM.
Melakukan autentikasi menggunakan OAuth
Anda dapat melakukan autentikasi menggunakan OAuth dengan membuat kredensial OAuth dan meneruskannya ke aplikasi host MCP atau server MCP.
Untuk melakukan autentikasi menggunakan OAuth:
- Di Konsol Google Cloud, pilih project yang ingin Anda gunakan untuk alat agen Maps Experience.
- Di menu API & Services, pilih Credentials.
- Di menu atas, pilih Create credentials > OAuth client ID.
- Jika project tidak memiliki layar izin yang dikonfigurasi, klik Configure consent screen dan ikuti petunjuk di layar.
- Di bagian Metrik, klik Buat klien OAuth.
- Di layar Create OAuth client ID, pilih jenis aplikasi dan masukkan nama untuk client ID.
- Tentukan detail tambahan yang relevan dengan jenis permohonan Anda. Misalnya, jika Anda membuat aplikasi web, tambahkan URI yang diizinkan untuk permintaan browser dan server.
- Setelah klien Anda dibuat, simpan client ID dan rahasia klien.
- Saat Anda mengonfigurasi aplikasi host MCP atau server MCP, teruskan client ID dan rahasia OAuth Anda. Anda juga harus meminta cakupan berikut:
https://www.googleapis.com/auth/maps-platform.mapstools.
Untuk mengetahui informasi selengkapnya, lihat Menggunakan OAuth 2.0 untuk Mengakses Google API.
Mengonfigurasi LLM untuk mengakses server MCP alat agentic Maps Experience
Setelah mengaktifkan layanan Maps Experience agent tools dan membuat kredensial, Anda dapat mengonfigurasi LLM untuk mengakses server MCP. Ikuti dokumentasi konfigurasi MCP LLM Anda dan gunakan URL server MCP: https://mapstools.googleapis.com/mcp
Untuk mengetahui informasi selengkapnya, lihat Mengonfigurasi MCP di aplikasi AI.
Mengonfigurasi alat agen Maps Experience dengan Gemini CLI
Bagian ini memberikan contoh cara mengonfigurasi server MCP alat agen Maps Experience menggunakan Gemini CLI. Untuk mengetahui detail selengkapnya, lihat Server MCP dengan Gemini CLI.
Setelah menginstal Gemini CLI, jalankan
gemini mcp adduntuk mengonfigurasi server MCP:gemini mcp add -s user -t http -H 'X-Goog-Api-Key: API_KEY' maps-experience-agent-tools-mcp https://mapstools.googleapis.com/mcpJika konfigurasi berhasil, Anda akan melihat konfirmasi bahwa server telah ditambahkan ke setelan pengguna Anda.
Untuk memvalidasi bahwa server berfungsi, jalankan perintah
/mcp list:> /mcp list Configured MCP servers: maps-experience-agent-tools-mcp - Ready (6 tools) Tools: - compute_routes - lookup_weather - resolve_maps_urls - resolve_names - search_along_route - search_placesMulai ajukan pertanyaan terkait Maps dengan CLI. Misalnya, coba "Rekomendasikan beberapa restoran di Mountain View", yang akan memanggil alat
search_placesatas nama Anda.
Mengonfigurasi alat agentic Maps Experience dengan Agent Development Kit (ADK)
Bagian ini menunjukkan cara mengonfigurasi server MCP dengan Agent Development Kit (ADK) di Python, Java, atau TypeScript.
Python
Anda dapat menemukan implementasi lengkap contoh ini di GitHub di repositori adk-samples.
Langkah 1: Tentukan Agen Anda dengan McpToolset untuk alat agentic Maps Experience
Ubah file agent.py Anda. Ganti
YOUR_GOOGLE_MAPS_API_KEY dengan kunci API Anda yang sebenarnya.
# ./adk_agent_samples/mcp_agent/agent.py import os from google.adk.agents.llm_agent import Agent from google.adk.tools.mcp_tool import McpToolset from google.adk.tools.mcp_tool.mcp_session_manager import StreamableHTTPConnectionParams # Retrieve the API key from an environment variable or directly insert it. GOOGLE_MAPS_API_KEY = os.getenv("GOOGLE_MAPS_API_KEY") if not GOOGLE_MAPS_API_KEY: GOOGLE_MAPS_API_KEY = "YOUR_GOOGLE_MAPS_API_KEY_HERE" if GOOGLE_MAPS_API_KEY == "YOUR_GOOGLE_MAPS_API_KEY_HERE": print("WARNING: GOOGLE_MAPS_API_KEY is not set.") root_agent = Agent( model='gemini-flash-latest', name='travel_planner_agent', description='A helpful assistant for planning travel routes.', tools=[ McpToolset( connection_params=StreamableHTTPConnectionParams( url="https://mapstools.googleapis.com/mcp", headers={ "X-Goog-Api-Key": GOOGLE_MAPS_API_KEY, "Content-Type": "application/json", "Accept": "application/json, text/event-stream" } ) ) ] )
Langkah 2: Pastikan __init__.py Ada
Pastikan Anda memiliki __init__.py di direktori yang sama dengan
agent.py:
from . import agent
Langkah 3: Jalankan adk web dan Berinteraksi
- Tetapkan Variabel Lingkungan:
Tetapkan kunci Google Maps API Anda sebagai variabel lingkungan di terminal:export GOOGLE_MAPS_API_KEY="YOUR_ACTUAL_GOOGLE_MAPS_API_KEY"
- Jalankan
adk web:
Jalankan perintah berikut untuk memulai antarmuka web ADK:adk web
- Berinteraksi di UI:
- Pilih
travel_planner_agent. - Coba perintah seperti:
- "Saya akan berada di San Francisco besok. Bagaimana kondisi cuacanya?"
- Cari kedai kopi di dekat Taman Golden Gate.
- "Dapatkan rute dari GooglePlex ke SFO."
- Pilih
Java
Tentukan agen yang melakukan inisialisasi McpToolset di Java.
Ganti YOUR_GOOGLE_MAPS_API_KEY_HERE dengan kunci API sebenarnya
yang Anda peroleh jika Anda tidak menggunakan variabel lingkungan.
package agents; import com.google.adk.agents.LlmAgent; import com.google.adk.runner.InMemoryRunner; import com.google.adk.sessions.SessionKey; import com.google.adk.tools.mcp.McpToolset; import com.google.adk.tools.mcp.StreamableHttpServerParameters; import com.google.genai.types.Content; import com.google.genai.types.Part; import java.util.HashMap; import java.util.Map; public class MapsAgentCreator { public static void main(String[] args) { String googleMapsApiKey = System.getenv("GOOGLE_MAPS_API_KEY"); if (googleMapsApiKey == null || googleMapsApiKey.trim().isEmpty()) { googleMapsApiKey = "YOUR_GOOGLE_MAPS_API_KEY_HERE"; if ("YOUR_GOOGLE_MAPS_API_KEY_HERE".equals(googleMapsApiKey)) { System.out.println("WARNING: GOOGLE_MAPS_API_KEY is not set."); } } Map<String, String> headers = new HashMap<>(); headers.put("X-Goog-Api-Key", googleMapsApiKey); headers.put("Content-Type", "application/json"); headers.put("Accept", "application/json, text/event-stream"); StreamableHttpServerParameters serverParams = StreamableHttpServerParameters.builder("https://mapstools.googleapis.com/mcp") .headers(headers) .build(); try (McpToolset toolset = new McpToolset(serverParams)) { LlmAgent agent = LlmAgent.builder() .model("gemini-flash-latest") .name("travel_planner_agent") .description("A helpful assistant for planning travel routes.") .tools(toolset) .build(); System.out.println("Agent created: " + agent.name()); InMemoryRunner runner = new InMemoryRunner(agent); String userId = "maps-user-" + System.currentTimeMillis(); String sessionId = "maps-session-" + System.currentTimeMillis(); String promptText = "Please give me directions to the nearest pharmacy to Madison Square Garden."; SessionKey sessionKey = runner.sessionService() .createSession(runner.appName(), userId, null, sessionId) .blockingGet() .sessionKey(); System.out.println("Session created: " + sessionId + " for user: " + userId); Content promptContent = Content.fromParts(Part.fromText(promptText)); System.out.println("\nSending prompt: \"" + promptText + "\" to agent...\n"); runner.runAsync(sessionKey, promptContent) .blockingForEach(event -> { System.out.println("Event received: " + event.toJson()); }); } catch (Exception e) { System.err.println("An error occurred: " + e.getMessage()); e.printStackTrace(); } } }
TypeScript
Tentukan agen yang melakukan inisialisasi MCPToolset di TypeScript:
import 'dotenv/config'; import {LlmAgent, MCPToolset} from "@google/adk"; const googleMapsApiKey = process.env.GOOGLE_MAPS_API_KEY; if (!googleMapsApiKey) { console.warn("WARNING: GOOGLE_MAPS_API_KEY is not set."); throw new Error( 'GOOGLE_MAPS_API_KEY is not provided, please run "export GOOGLE_MAPS_API_KEY=YOUR_ACTUAL_KEY" to add that.' ); } export const rootAgent = new LlmAgent({ model: "gemini-flash-latest", name: "travel_planner_agent", description: "A helpful assistant for planning travel.", tools: [ new MCPToolset({ type: "StreamableHTTPConnectionParams", url: "https://mapstools.googleapis.com/mcp", transportOptions: { requestInit: { headers: { "X-Goog-Api-Key": googleMapsApiKey, "Content-Type": "application/json", "Accept": "application/json, text/event-stream" } } } }) ], });
Memanggil alat dengan REST
Setiap alat di alat agentic Maps Experience juga tersedia sebagai metode REST. Panggil metode REST secara langsung saat Anda ingin menghubungkan alat ke agen atau aplikasi Anda sendiri—misalnya, untuk mendeklarasikan fungsi Anda sendiri untuk model, memilih opsi yang dapat ditetapkan model, atau menetapkan nilai default dalam kode Anda.
Tabel berikut mencantumkan metode REST untuk setiap alat:
| Alat | Metode REST |
|---|---|
search_places |
POST https://mapstools.googleapis.com/v1:searchText |
search_along_route |
POST https://mapstools.googleapis.com/v1:searchAlongRoute |
lookup_weather |
POST https://mapstools.googleapis.com/v1:lookupWeather |
compute_routes |
POST https://mapstools.googleapis.com/v1:computeRoutes |
resolve_names |
POST https://mapstools.googleapis.com/v1:resolveNames |
resolve_maps_urls |
POST https://mapstools.googleapis.com/v1:resolveMapsUrls |
Permintaan REST menggunakan opsi yang sama dengan alat yang sesuai dan menampilkan respons yang sama. Dalam isi permintaan dan respons REST, nama kolom menggunakan lower camel case—misalnya, textQuery, bukan text_query. Permintaan REST ditagih
dengan SKU yang sama, mengikuti aturan yang sama untuk opsi Pro, dan dihitung dalam
kuota yang sama dengan panggilan alat MCP.
Untuk melakukan autentikasi, gunakan project dan kredensial Google Cloud yang sama dengan yang digunakan untuk server MCP. Untuk mengetahui langkah-langkah penyiapan, lihat
Mengonfigurasi LLM untuk menggunakan server MCP.
Teruskan kunci API di header X-Goog-Api-Key, atau teruskan token akses OAuth dengan cakupan https://www.googleapis.com/auth/maps-platform.mapstools di header Authorization.
Contoh berikut memanggil metode searchText:
curl -X POST \
-H "Content-Type: application/json" \
-H "X-Goog-Api-Key: API_KEY" \
-d '{
"textQuery": "coffee shops near Golden Gate Park"
}' \
"https://mapstools.googleapis.com/v1:searchText"
Ganti API_KEY dengan kunci API Anda.
Respons berisi kolom summary, places, dan contentToken yang sama dengan
hasil alat search_places. Panduan setiap alat menampilkan versi REST dari contohnya.
Membagikan masukan
Untuk memberikan masukan tentang alat agentic Maps Experience, gunakan formulir berikut: