Google Maps Platform Grounding Lite adalah layanan dengan dukungan Model Context Protocol (MCP) yang memudahkan Anda merujuk aplikasi AI dengan data geospasial tepercaya dari Google Maps. Server MCP menyediakan alat yang memungkinkan LLM mengakses kemampuan untuk tempat, cuaca, dan rute. Anda dapat mencoba Maps Grounding Lite dengan mengaktifkannya di alat apa pun yang mendukung server MCP.
Alat
Grounding Maps Lite menyediakan alat yang memungkinkan LLM mengakses kemampuan Google Maps berikut:
- Menelusuri tempat: Meminta informasi tentang tempat dan mendapatkan ringkasan data tempat yang dibuat AI, serta ID Tempat, koordinat lintang dan bujur, dan link Google Maps untuk setiap tempat yang disertakan dalam ringkasan. Anda dapat menggunakan ID Tempat dan koordinat garis lintang dan garis bujur yang ditampilkan dengan Google Maps Platform API lainnya untuk menampilkan tempat di peta.
- Mencari cuaca: Meminta informasi tentang cuaca dan menampilkan kondisi saat ini, prakiraan per jam, dan prakiraan harian.
Hitung rute: Meminta informasi tentang rute mengemudi atau berjalan kaki antara dua lokasi dan menampilkan informasi jarak dan durasi rute.
Mengaktifkan server MCP Perujukan Maps Lite memungkinkan LLM memanggil alat baru yang diekspos oleh server untuk menampilkan informasi perujukan tambahan untuk jenis data yang tercantum di atas. Meskipun LLM dapat menggunakan informasi tambahan ini untuk konteks, respons yang dihasilkan LLM pada akhirnya mungkin tidak menyertakan informasi persis yang ditampilkan oleh server MCP. Anda harus memverifikasi akurasi respons yang dihasilkan.
Coba aplikasi contoh Maps Grounding Lite (Buka di tab baru)
Penagihan dan kuota
Cara Anda ditagih
Dengan model harga bayar sesuai penggunaan Google Maps Platform, penggunaan Maps Grounding Lite dihitung untuk setiap permintaan, dengan setiap permintaan mewakili satu peristiwa penagihan. Penggunaan dilacak untuk setiap SKU produk. Tagihan Anda menampilkan item baris untuk setiap SKU selain total biaya Anda. Lihat Ringkasan pelaporan untuk mengetahui informasi selengkapnya.
Lihat Tabel harga utama dan Tabel harga India untuk mengetahui detail harga.
Maps Grounding Lite juga ditawarkan melalui paket Essentials dan Pro Berlangganan untuk menyimpan.
Kuota
Kuota berikut berlaku untuk alat yang disediakan oleh Maps Grounding Lite:
- Menelusuri tempat: 300 kueri per menit, per project.
- Mencari cuaca: 300 kueri per menit, per project.
- Menghitung rute: 300 kueri per menit, per project.
Kebijakan dan persyaratan layanan
Maps Grounding Lite tunduk pada Persyaratan Layanan Google Maps Platform, termasuk persyaratan khusus layanan untuk layanan ini. Bagian ini menjelaskan persyaratan penggunaan layanan tambahan untuk Maps Grounding Lite, termasuk LLM yang kompatibel dan persyaratan atribusi sumber.
Persyaratan untuk LLM yang Kompatibel
Anda hanya boleh menggunakan Maps Grounding Lite 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 Maps Grounding Lite, Anda harus meninjau Persyaratan Layanan untuk model apa pun yang ingin Anda gunakan dengan Maps Grounding Lite. Anda tidak boleh menggunakan Maps Grounding Lite dengan model apa pun yang menggunakan input data ke dalam model untuk pelatihan atau peningkatan kualitas model apa pun. Anda bertanggung jawab untuk memastikan bahwa penggunaan model oleh Anda sepenuhnya mematuhi batasan pada Konten Google Maps dalam Persyaratan Layanan Google Maps Platform, termasuk persyaratan khusus layanan.
Persyaratan atribusi untuk sumber Google Maps
Setiap respons alat dari Maps Grounding Lite menyertakan sumber. Saat menyajikan hasil yang menggunakan alat yang disediakan oleh Maps Grounding Lite, Anda harus menyertakan sumber Google Maps terkait dengan cara yang 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 yang Berbasis.
- Sumber Google Maps harus dapat dilihat dalam satu interaksi pengguna.
Sumber untuk alat Penelusuran tempat
Kolom places alat search_places menyediakan sumber yang mendukung
summary. Untuk places, metadata berikut akan ditampilkan:
place(nama resource)idlocationgoogleMapsLinks
Untuk setiap tempat, Anda harus membuat pratinjau link yang memenuhi persyaratan berikut:
- Berikan atribusi setiap sumber ke Google Maps, dengan mengikuti panduan atribusi teks Maps Grounding Lite.
- Tautkan ke sumber menggunakan
places.googleMapsLinks.placeUrldari respons.
Mengonfigurasi LLM untuk menggunakan server MCP
Untuk menggunakan Maps Grounding Lite, Anda memerlukan project Google Cloud dengan layanan API Maps Grounding Lite yang diaktifkan, serta kunci API atau client ID OAuth. Kemudian, Anda dapat mengonfigurasi LLM untuk mengakses server MCP. Server MCP Grounding Lite menggunakan transpor HTTP yang dapat di-streaming.
Mengaktifkan layanan Maps Grounding Lite di project Google Cloud Anda
Untuk mengaktifkan API di project Anda:
- Di Konsol Google Cloud, pilih project yang ingin Anda gunakan untuk Maps Grounding Lite.
- Aktifkan penagihan untuk project di Konsol Google Cloud.
- Aktifkan Maps Grounding Lite di Library API Konsol Google Cloud.
Melakukan autentikasi menggunakan kunci API
Anda dapat menggunakan kunci API yang sudah ada dengan Maps Grounding Lite atau membuat kunci API baru, selama Anda mengaktifkan layanan Maps Grounding Lite API di project Google Cloud dan kunci.
Untuk melakukan autentikasi menggunakan kunci API:
- Buat atau konfigurasi kunci API dengan mengikuti langkah-langkah di Memulai Google Maps Platform.
- Teruskan kunci ke server MCP menggunakan header
X-Goog-Api-Key. Anda perlu 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 mengautentikasi menggunakan OAuth:
- Di Konsol Google Cloud, pilih project yang ingin Anda gunakan untuk Maps Grounding Lite.
- Di menu API & Services, pilih Credentials.
- Di menu atas, pilih Create credentials > OAuth client ID.
- Jika project tidak memiliki layar izin yang dikonfigurasi, klik Konfigurasi layar izin dan ikuti petunjuk di layar.
- Di bagian Metrik, klik Buat klien OAuth.
- Di layar Buat ID klien OAuth, pilih jenis aplikasi dan masukkan nama untuk ID klien.
- 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 ID dan rahasia klien.
- Saat mengonfigurasi host MCP atau aplikasi server MCP untuk mengakses Maps Grounding Lite, teruskan ID dan secret klien 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 Maps Grounding Lite
Setelah memiliki project Google Cloud dengan layanan Maps Grounding Lite API yang diaktifkan dan kredensial yang valid, seperti kunci API atau ID dan secret klien OAuth, Anda dapat mengonfigurasi LLM untuk mengakses server MCP dengan mengikuti dokumentasi konfigurasi MCP yang sesuai dan menggunakan URL server MCP Maps Grounding Lite: https://mapstools.googleapis.com/mcp
Untuk mengetahui informasi selengkapnya, lihat Mengonfigurasi MCP di aplikasi AI.
Mengonfigurasi Maps Grounding Lite dengan Gemini CLI
Bagian ini memberikan contoh cara mengonfigurasi server MCP Maps Grounding Lite menggunakan Gemini CLI. Untuk mengetahui detail selengkapnya, lihat Server MCP dengan Gemini CLI.
Setelah menginstal Gemini CLI, Anda dapat menggunakan perintah add untuk mengonfigurasi server MCP Maps Grounding Lite:
gemini mcp add -s user -t http -H 'X-Goog-Api-Key: API_KEY' maps-grounding-lite-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 dengan benar, jalankan perintah
/mcp list:> /mcp list Configured MCP servers: maps-grounding-lite-mcp - Ready (3 tools) Tools: - compute_routes - lookup_weather - search_placesMulai ajukan pertanyaan terkait Maps dengan CLI. Misalnya, coba ucapkan "Rekomendasikan beberapa restoran di Mountain View" yang akan memanggil alat search_places atas nama Anda.
Mengonfigurasi Grounding Lite dengan Agent Development Kit (ADK)
Bagian ini memberikan contoh yang menunjukkan cara mengonfigurasi server MCP Grounding Lite menggunakan Agent Development Kit (ADK) dan Python, Java, atau TypeScript.
Python
Langkah 1: Tentukan Agen Anda dengan McpToolset untuk Grounding Lite Google Maps
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
- Setel Variabel Lingkungan:
Tetapkan kunci Google Maps API Anda sebagai variabel lingkungan di terminal Anda: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 cuacanya?"
- "Cari kafe di dekat Golden Gate Park".
- "Get directions from GooglePlex to SFO." ("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 menginisialisasi 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: "SseConnectionParams", url: "https://mapstools.googleapis.com/mcp", headers: { "X-Goog-Api-Key": googleMapsApiKey, "Content-Type": "application/json", "Accept": "application/json, text/event-stream" } }) ], });
Memberikan masukan
Untuk menyampaikan masukan tentang Grounding Lite Maps, gunakan formulir berikut: