Google Maps Platform Grounding Lite è un servizio con supporto del Model Context Protocol (MCP) che semplifica la fondatezza delle tue applicazioni AI con dati geospaziali attendibili di Google Maps. Il server MCP fornisce strumenti che consentono ai LLM di accedere alle funzionalità per luoghi, meteo e itinerari. Puoi provare Maps Grounding Lite attivandolo in qualsiasi strumento che supporta i server MCP.
Strumenti
Maps Grounding Lite fornisce strumenti che consentono ai LLM di accedere alle seguenti funzionalità di Google Maps:
- Cerca luoghi: Richiedi informazioni sui luoghi e ottieni riepiloghi dei dati sui luoghi generati dall'AI, nonché ID luogo, coordinate di latitudine e longitudine e link di Google Maps per ciascuno dei luoghi inclusi nel riepilogo. Puoi utilizzare gli ID luogo e le coordinate di latitudine e longitudine restituiti con altre API di Google Maps Platform per mostrare i luoghi su una mappa.
- Cerca meteo: richiedi informazioni sul meteo e restituisci le condizioni attuali, le previsioni orarie e le previsioni giornaliere.
Calcola itinerari: Richiedi informazioni sugli itinerari in auto o a piedi tra due località e restituisci informazioni sulla distanza e la durata dell'itinerario.
L'attivazione del server MCP Maps Grounding Lite consente agli LLM di chiamare i nuovi strumenti esposti dal server per restituire informazioni di grounding aggiuntive per i tipi di dati elencati sopra. Sebbene l'LLM possa utilizzare queste informazioni aggiuntive per il contesto, la risposta che genera alla fine potrebbe non includere le informazioni esatte restituite dal server MCP. Devi verificare l'accuratezza della risposta generata.
Prova l'app di esempio Maps Grounding Lite (si apre in una nuova scheda)
Fatturazione e quote
Modalità di fatturazione
Con il modello di prezzi pagamento a consumo di Google Maps Platform, l'utilizzo di Maps Grounding Lite viene calcolato per ogni richiesta, dove ogni richiesta rappresenta un evento di fatturazione. L'utilizzo viene monitorato per ogni SKU prodotto. La fattura mostra una voce per ogni SKU, oltre agli addebiti totali. Per saperne di più, consulta la Panoramica dei report.
Per informazioni dettagliate sui prezzi, consulta la tabella dei prezzi principale e la tabella dei prezzi per l'India.
Maps Grounding Lite è disponibile anche tramite i pacchetti Abbonati per risparmiare Essentials e Pro.
Quote
Le seguenti quote si applicano agli strumenti forniti da Maps Grounding Lite:
- Cerca luoghi: 300 query al minuto per progetto.
- Cerca meteo: 300 query al minuto per progetto.
- Compute Routes: 300 query al minuto per progetto.
Norme e Termini di servizio
Maps Grounding Lite è soggetto ai Termini di servizio di Google Maps Platform, inclusi i termini specifici del servizio per questo servizio. Questa sezione descrive i requisiti aggiuntivi per l'utilizzo del servizio per Maps Grounding Lite, inclusi i LLM compatibili e i requisiti di attribuzione delle fonti.
Requisiti per i modelli LLM compatibili
Puoi utilizzare Maps Grounding Lite solo con un LLM conforme ai Termini di servizio di Google Maps Platform.
Ad esempio, sei responsabile di garantire che i contenuti di Google Maps non vengano memorizzati nella cache, archiviati o utilizzati per migliorare il modello linguistico di grandi dimensioni che scegli di utilizzare. Prima di utilizzare Maps Grounding Lite, devi esaminare i Termini di servizio per qualsiasi modello che intendi utilizzare con Maps Grounding Lite. Non devi utilizzare Maps Grounding Lite con modelli che utilizzano i dati inseriti nel modello per l'addestramento o il miglioramento del modello. È tua responsabilità assicurarti che il tuo utilizzo del modello sia pienamente conforme alle limitazioni relative ai contenuti di Google Maps nei Termini di servizio di Google Maps Platform, inclusi i termini specifici del servizio.
Requisiti di attribuzione per le fonti di Google Maps
Ogni risposta dello strumento Maps Grounding Lite include le fonti. Quando presenti risultati che utilizzano strumenti forniti da Maps Grounding Lite, devi includere le fonti di Google Maps associate in modo da soddisfare i seguenti requisiti:
- Le fonti di Google Maps devono seguire immediatamente i contenuti generati che supportano le fonti. Questi contenuti generati sono anche chiamati output basato su dati reali.
- Le fonti di Google Maps devono essere visualizzabili con una sola interazione dell'utente.
Fonti per lo strumento Cerca luoghi
Il campo places dello strumento search_places fornisce fonti a sostegno di
summary. Per places, vengono restituiti i seguenti metadati:
place(nome della risorsa)idlocationgoogleMapsLinks
Per ogni luogo, devi generare un'anteprima del link che soddisfi i seguenti requisiti:
- Attribuisci ogni sorgente a Google Maps, seguendo le linee guida per l'attribuzione del testo di Maps Grounding Lite.
- Collega la fonte utilizzando
places.googleMapsLinks.placeUrldalla risposta.
Configurare gli LLM per l'utilizzo del server MCP
Per utilizzare Maps Grounding Lite, devi prima disporre di un progetto Google Cloud con il servizio API Maps Grounding Lite abilitato, nonché di una chiave API o di un ID client OAuth. A questo punto, puoi configurare i LLM per accedere al server MCP. Il server MCP Grounding Lite utilizza il trasporto HTTP trasmissibile.
Attiva il servizio Maps Grounding Lite nel tuo progetto Google Cloud
Per abilitare l'API nel tuo progetto:
- Nella console Google Cloud, scegli il progetto che vuoi utilizzare per Maps Grounding Lite.
- Abilita la fatturazione per il progetto nella console Google Cloud.
- Attiva Maps Grounding Lite nella libreria API della console Google Cloud.
Autenticarsi utilizzando una chiave API
Puoi utilizzare una chiave API esistente con Maps Grounding Lite o crearne una nuova, a condizione che tu abiliti il servizio API Maps Grounding Lite sia sul progetto Google Cloud sia sulla chiave.
Per eseguire l'autenticazione utilizzando una chiave API:
- Crea o configura una chiave API seguendo i passaggi descritti nella sezione Guida introduttiva a Google Maps Platform.
- Passa la chiave al server MCP utilizzando l'intestazione
X-Goog-Api-Key. Devi specificarlo come intestazione HTTP personalizzata nella configurazione dello strumento MCP del modello LLM.
Esegui l'autenticazione utilizzando OAuth
Puoi autenticarti utilizzando OAuth creando le credenziali OAuth e passandole all'host MCP o all'applicazione server MCP.
Per eseguire l'autenticazione utilizzando OAuth:
- Nella console Google Cloud, scegli il progetto che vuoi utilizzare per Maps Grounding Lite.
- Nel menu API e servizi, seleziona Credenziali.
- Nel menu in alto, seleziona Crea credenziali > ID client OAuth.
- Se il progetto non ha una schermata per il consenso configurata, fai clic su Configura schermata per il consenso e segui le istruzioni sullo schermo.
- Nella sezione Metriche, fai clic su Crea client OAuth.
- Nella schermata Crea ID client OAuth, seleziona un tipo di applicazione e inserisci un nome per l'ID client.
- Specifica i dettagli aggiuntivi pertinenti al tipo di richiesta. Ad esempio, se stai creando un'applicazione web, aggiungi URI autorizzati per richieste del browser e del server.
- Una volta creato il client, salva l'ID client e il client secret.
- Quando configuri l'host MCP o l'applicazione server MCP per accedere a Maps
Grounding Lite, trasmetti l'ID client OAuth e il segreto. Devi anche richiedere
il seguente ambito:
https://www.googleapis.com/auth/maps-platform.mapstools.
Per saperne di più, consulta Utilizzare OAuth 2.0 per accedere alle API di Google.
Configura i LLM per accedere al server MCP Maps Grounding Lite
Una volta che hai un progetto cloud Google Cloud con il servizio API Maps Grounding Lite attivato e credenziali valide, come una chiave API o un ID client e un secret OAuth, puoi configurare i modelli LLM per accedere al server MCP seguendo la documentazione di configurazione MCP corrispondente e utilizzando l'URL del server MCP Maps Grounding Lite: https://mapstools.googleapis.com/mcp
Per saperne di più, consulta Configurare MCP in un'applicazione AI.
Configurare Maps Grounding Lite con Gemini CLI
Questa sezione fornisce un esempio di come configurare il server MCP Maps Grounding Lite utilizzando la CLI Gemini. Per maggiori dettagli, vedi Server MCP con Gemini CLI.
Dopo aver installato Gemini CLI, puoi utilizzare il comando add per configurare il 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/mcpSe la configurazione è andata a buon fine, dovresti visualizzare una conferma che il server è stato aggiunto alle impostazioni utente.
Per verificare che il server funzioni correttamente, esegui il comando
/mcp list:> /mcp list Configured MCP servers: maps-grounding-lite-mcp - Ready (3 tools) Tools: - compute_routes - lookup_weather - search_placesInizia a porre domande relative a Maps con l'interfaccia a riga di comando. Ad esempio, prova a dire "Consigliami dei ristoranti a Mountain View", che dovrebbe chiamare lo strumento search_places per tuo conto.
Configurare Grounding Lite con Agent Development Kit (ADK)
Questa sezione fornisce esempi che mostrano come configurare il server Grounding Lite MCP utilizzando l'Agent Development Kit (ADK) e Python, Java o TypeScript.
Python
Passaggio 1: definisci l'agente con McpToolset per Grounding Lite di Google Maps
Modifica il file agent.py. Sostituisci
YOUR_GOOGLE_MAPS_API_KEY con la tua chiave API effettiva.
# ./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" } ) ) ] )
Passaggio 2: assicurati che __init__.py esista
Assicurati di avere un __init__.py nella stessa directory del tuo
agent.py:
from . import agent
Passaggio 3: esegui adk web e Interact
- Imposta la variabile di ambiente:
Imposta la chiave API di Google Maps come variabile di ambiente nel terminale:export GOOGLE_MAPS_API_KEY="YOUR_ACTUAL_GOOGLE_MAPS_API_KEY"
- Esegui
adk web:
Esegui questo comando per avviare l'interfaccia web ADK:adk web
- Interagisci nell'interfaccia utente:
- Seleziona la
travel_planner_agent. - Prova prompt come:
- "Domani sarò a San Francisco. Che tempo fa?"
- "Trova caffetterie vicino al Golden Gate Park".
- "Indicazioni stradali da Googleplex all'aeroporto di San Francisco".
- Seleziona la
Java
Definisci un agente che inizializza McpToolset in Java.
Sostituisci YOUR_GOOGLE_MAPS_API_KEY_HERE con la chiave API effettiva
che hai ottenuto se non utilizzi una variabile di ambiente.
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
Definisci un agente che inizializza MCPToolset in 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" } }) ], });
Condividere feedback
Per condividere feedback su Maps Grounding Lite, utilizza i seguenti moduli: