Google Maps Platform Grounding Lite adalah layanan dengan dukungan Model Context Protocol (MCP) yang memudahkan Anda untuk membumikan 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
Maps Grounding 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 garis lintang dan garis 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.
Menghitung rute: Meminta informasi tentang rute mengemudi atau berjalan kaki antara dua lokasi dan menampilkan informasi jarak dan durasi rute.
Mengaktifkan server MCP Maps Grounding Lite memungkinkan LLM memanggil alat baru yang diekspos oleh server untuk menampilkan informasi grounding tambahan untuk jenis data yang tercantum di atas. Meskipun LLM dapat menggunakan informasi tambahan ini untuk konteks, respons yang pada akhirnya dihasilkan LLM mungkin tidak menyertakan informasi persis yang ditampilkan oleh server MCP. Anda harus memverifikasi akurasi respons yang dihasilkan.
Mencoba aplikasi contoh Maps Grounding Lite (Buka di tab baru)
Penagihan dan kuota
Cara penagihan
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 produk SKU. Tagihan Anda menampilkan item baris untuk setiap SKU selain total biaya. 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 Subscribe to save.
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 dapat 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 model. Anda bertanggung jawab untuk memastikan bahwa penggunaan model 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 menampilkan 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. Konten yang dihasilkan ini juga disebut sebagai Output yang Didasarkan.
- Sumber Google Maps harus dapat dilihat dalam satu interaksi pengguna.
Sumber untuk alat Menelusuri 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 ini:
- Atribusikan setiap sumber ke Google Maps, com as seguintes diretrizes de atribuição de texto do 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
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 Google Cloud Console.
- Aktifkan Maps Grounding Lite di Google Cloud Library API Konsol.
Melakukan autentikasi menggunakan kunci API
Anda dapat menggunakan kunci API yang ada dengan Maps Grounding Lite atau membuat kunci baru, selama Anda mengaktifkan layanan API Maps Grounding Lite di project Google Cloud dan kunci.
Untuk melakukan autentikasi menggunakan kunci API:
- Buat atau konfigurasi kunci API dengan mengikuti langkah-langkah di Memulai dengan 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 host MCP atau aplikasi server MCP.
Untuk melakukan autentikasi menggunakan OAuth:
- Di Konsol Google Cloud, pilih project yang ingin Anda gunakan untuk Maps Grounding Lite.
- Di menu API &Layanan, pilih Kredensial.
- Di menu atas, pilih Buat kredensial > ID klien OAuth.
- 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 client ID.
- Tentukan detail tambahan yang relevan dengan jenis aplikasi Anda. Misalnya, jika Anda membuat aplikasi web, tambahkan URI yang diotorisasi untuk permintaan browser dan server.
- Setelah klien dibuat, simpan client ID dan rahasia klien.
- Saat mengonfigurasi host MCP atau aplikasi server MCP untuk mengakses Maps Grounding Lite, teruskan client ID dan rahasia 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 client ID dan rahasia 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.
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 "Recommend me some restaurants in 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: Menentukan Agen Anda dengan McpToolset untuk Google Maps Grounding Lite
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: Memastikan __init__.py Ada
Pastikan Anda memiliki __init__.py di direktori yang sama dengan
agent.py:
from . import agent
Langkah 3: Menjalankan adk web dan Berinteraksi
- Menetapkan 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"
- Menjalankan
adk web:
Jalankan perintah berikut untuk memulai antarmuka web ADK:adk web
- Berinteraksi di UI:
- Pilih
travel_planner_agent. - Coba perintah seperti:
- "I will be in San Francisco tomorrow. What’s the weather like?"
- "Find coffee shops near Golden Gate Park."
- "Get directions from GooglePlex to SFO."
- Pilih
Java
Tentukan agen yang menginisialisasi McpToolset di Java.
Ganti YOUR_GOOGLE_MAPS_API_KEY_HERE dengan kunci API sebenarnya
Anda dapatkan jika 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" } }) ], });
Membagikan masukan
Untuk membagikan masukan tentang Maps Grounding Lite, gunakan formulir berikut: