Gli strumenti dell'agente Maps Experience (in precedenza Maps Grounding Lite) sono un servizio di Google Maps Platform con supporto di Model Context Protocol (MCP) e REST per basare le tue applicazioni di AI su dati geospaziali affidabili di Google Maps. I suoi strumenti consentono agli LLM di accedere ai dati su luoghi, meteo, qualità dell'aria, pollini e percorsi. Altri strumenti risolvono i nomi delle località e gli URL di Google Maps in ID luogo. Puoi provare i tool agentici di Maps Experience attivando il relativo server MCP in qualsiasi strumento che supporti i server MCP. Puoi anche chiamare ogni strumento come metodo REST. Per maggiori dettagli, consulta Chiama gli strumenti con REST.
I tool agentici di Maps Experience sono un prodotto con due SKU: Essentials e Pro. Ogni richiesta viene fatturata in base a Essentials, a meno che non utilizzi un'opzione Pro. Le opzioni Pro aggiungono ricerche di luoghi lungo un percorso, dettagli estesi sui luoghi, più luoghi per ricerca, più fermate intermedie per percorso, routing con traffico in tempo reale, previsioni sui pollini e qualità dell'aria storica. Entrambi gli SKU utilizzano gli stessi strumenti, server MCP, metodi REST e credenziali. Per maggiori dettagli, vedi Essentials e Pro.
Strumenti
I tool agentici di Maps Experience consentono agli LLM di accedere alle seguenti funzionalità di Google Maps:
- Cerca luoghi: richiedi informazioni sui luoghi e ottieni riepiloghi creati con l'AI. La risposta include anche gli ID luogo, le coordinate di latitudine/longitudine e i link a Google Maps per ogni luogo nel riepilogo. Puoi utilizzare gli ID luogo e le coordinate di latitudine/longitudine con altre API di Google Maps Platform per mostrare i luoghi su una mappa. Per visualizzare questi luoghi con Places UI Kit senza costi aggiuntivi, utilizza il token di visualizzazione dei dati agentica (anteprima). Con Pro, puoi richiedere Place Details estesi, ad esempio informazioni dalle recensioni, e fino a 10 luoghi per richiesta.
- Cerca lungo il percorso: Trova luoghi lungo un percorso di viaggio, specificato utilizzando un
retrieval_tokendacompute_routes,route_endpointso unencoded_polyline, e ottieni un riepilogo generato dall'IA, Place Details, distanza di deviazione e tempo di percorrenza, e un token di visualizzazione dati agentico (Anteprima). Ogni richiestasearch_along_routeviene fatturata con lo SKU Pro. - Ricerca meteo: richiedi le condizioni ambientali di una località, tra cui il meteo (condizioni attuali, cronologia oraria di 24 ore e previsioni orarie e giornaliere fino a 10 giorni) e la qualità dell'aria attuale o prevista fino a 4 giorni. Con Pro, puoi anche richiedere previsioni giornaliere della concentrazione di pollini fino a 5 giorni (con dettagli sulle specie di piante) e fino a 30 giorni di cronologia della qualità dell'aria su base oraria.
Calcola percorsi: richiedi un percorso tra un'origine e una destinazione, facoltativamente con tappe intermedie, e restituisci la distanza, la durata e un
retrievalTokenper i percorsiDRIVEche puoi passare asearch_along_route. Con Pro, i percorsi possono tenere conto delle condizioni del traffico in tempo reale e includere più tappe intermedie.Risolvi i nomi e Risolvi gli URL di Maps: risolvi i nomi delle località, gli indirizzi e gli URL di Google Maps in ID luogo. Per saperne di più, consulta API Resolution.
Dopo aver attivato il server MCP, gli LLM possono chiamare i suoi strumenti per ottenere informazioni di grounding per questi tipi di dati. L'LLM può utilizzare queste informazioni per il contesto. Tuttavia, la sua risposta finale potrebbe non includere le informazioni esatte restituite dal server MCP. Verifica l'accuratezza della risposta generata.
Essentials e Pro
Essentials e Pro sono due SKU dello stesso prodotto, non prodotti o piani separati. Una richiesta viene fatturata in base a Pro quando utilizza un'opzione Pro. Tutte le altre richieste vengono fatturate nell'ambito di Essentials. Le opzioni Pro sono campi ordinari nella richiesta dello strumento, quindi un LLM può utilizzarle per tuo conto. Un agente può anche utilizzare entrambi gli SKU nella stessa conversazione. Ad esempio, un agente potrebbe utilizzare Essentials per trovare bar vicino a un punto di riferimento. Potrebbe poi utilizzare Pro per rispondere a una domanda aggiuntiva sulle bevande d'autore e sui posti a sedere. Non esiste un server MCP, un endpoint o una credenziale separati per Pro.
Confronta Essentials, Pro e Grounding con Google Maps
Grounding con Google Maps è un prodotto separato. È integrato nei modelli Gemini nell'API Gemini, in Google AI Studio e in Gemini Enterprise Agent Platform. Il modello decide quando eseguire query su Google Maps e restituisce risposte fondate con citazioni. Scegli Grounding con Google Maps quando crei su Gemini e vuoi che il modello gestisca il grounding. Scegli i tool agentici di Experimente Maps per altri modelli o framework di agenti o per il controllo diretto di ogni chiamata allo strumento.
La tabella seguente mette a confronto lo SKU Essentials, lo SKU Pro e il grounding con Google Maps:
| tool agentici di Maps Experience | Grounding con Google Maps | ||
|---|---|---|---|
| SKU Essentials (precedentemente Maps Grounding Lite) |
SKU Pro | ||
| Come vengono fatturate le richieste | Ogni richiesta di strumento che non utilizza un'opzione Pro | Ogni richiesta a search_along_route o qualsiasi richiesta a un altro strumento che utilizza un'opzione Pro. Consulta Cosa viene fatturato con lo SKU Pro. |
Ogni query di Google Maps o prompt con grounding, a seconda della piattaforma e del modello |
| Modelli e piattaforme | Qualsiasi framework di modelli o agenti che supporti MCP o possa chiamare API REST. Un unico set di strumenti e le stesse credenziali per entrambi gli SKU | Modelli Gemini nell'API Gemini, in Google AI Studio e in Gemini Enterprise Agent Platform | |
| Risultati degli strumenti | Dati principali: dettagli dei luoghi per un massimo di 5 luoghi per ricerca, distanza e durata del percorso senza traffico in tempo reale, meteo attuale e previsioni (più cronologia meteo oraria di 24 ore) e qualità dell'aria attuale o prevista | Tutto ciò che è incluso in Essentials, oltre ai luoghi lungo un percorso con tempo e distanza della deviazione, dettagli estesi dei luoghi (ad esempio approfondimenti dalle recensioni), fino a 10 luoghi per ricerca, percorsi con traffico in tempo reale, fino a 25 tappe intermedie, previsioni sui pollini e fino a 30 giorni di dati storici sulla qualità dell'aria | Dettagli e approfondimenti sui luoghi dalle recensioni e informazioni sui percorsi con traffico in tempo reale |
| Esempi di richieste | Domande oggettive e logistiche: trovare negozi o attività, orari di apertura, indirizzi, stime di distanza o tempo di percorrenza, meteo attuale, previsioni meteo per 10 giorni e previsioni della qualità dell'aria attuali o per 4 giorni | Domande soggettive, generiche o specializzate: luoghi lungo un percorso, atmosfera, piatti tipici, consigli per i visitatori, confronti tra 6 e 10 luoghi, tempi di percorrenza nel traffico attuale, previsioni su pollini e allergie e cronologia della qualità dell'aria negli ultimi 30 giorni | Ricerca conversazionale, pianificazione di itinerari e scoperta di luoghi locali in Gemini |
| Visualizzazioni di Places UI Kit | Incluso senza costi aggiuntivi con il token di visualizzazione dei dati agentica (anteprima) | Fatturazione separata | |
| Utilizzo mensile senza costi | 10.000 richieste | 5000 richieste | Dipende dalla piattaforma e dal modello. Ad esempio, nell'API Gemini, Gemini 3 e i modelli più recenti includono 5000 query di ricerca al mese senza costi. Dopodiché, le query di ricerca costano 14 $per 1000. |
| Prezzo con pagamento a consumo | 7,00 $ per 1000 richieste, con sconti per grandi volumi | 14,00 $ per 1000 richieste, con sconti per volume | |
| Abbonati per risparmiare | Incluso nei piani Essentials e Pro | Incluso nel piano Pro | Non disponibile |
| Inizia | Una configurazione per entrambi gli SKU: consulta Configura gli LLM per l'utilizzo del server MCP o Chiama gli strumenti con REST. | API Gemini o Agent Platform | |
Queste opzioni funzionano allo stesso modo con entrambi gli SKU: modalità di viaggio, orari di partenza e arrivo, percorsi alternativi, polilinee dei percorsi, ricerche meteo, ricerche sulla qualità dell'aria attuale e prevista (incluse le concentrazioni di inquinanti e le scale AQI locali), sistemi di unità meteo e l'API Resolution. Non modificano lo SKU in base al quale viene fatturata una richiesta.
Cosa viene fatturato con lo SKU Pro
La tabella seguente riassume le funzionalità incluse in Essentials e quelle che richiedono lo SKU Pro:
| Strumento | Capacità | Essentials | Pro |
|---|---|---|---|
| Cerca luoghi | Luoghi per richiesta | Fino a 5 | Da 6 a 10 (page_size da 6 a 10) |
| Dettagli dei luoghi estesi nei riepiloghi di ricerca (informazioni dalle recensioni, punti salienti del menu, atmosfera, affollamento di un luogo, suggerimenti per i visitatori e distanza o tempo di percorrenza per le query di prossimità) | Non disponibile | Disponibile con include_extended_details |
|
| Cerca lungo il percorso | Luoghi lungo un percorso, distanza e tempo di percorrenza della deviazione e dettagli facoltativi estesi dei luoghi o tempi di deviazione in base al traffico | Non disponibile | Ogni richiesta |
| Compute Routes | Preferenza di routing | Non tiene conto del traffico in tempo reale | Tiene conto del traffico in tempo reale o dei dati sul trasporto pubblico in tempo reale per i percorsi con il trasporto pubblico, con ROUTING_PREFERENCE_TRAFFIC_AWARE_OPTIMAL |
| Tappe intermedie per percorso | Fino a 10 | Da 11 a 25 (più di 10 intermediate_waypoints) |
|
| Cerca il meteo | Meteo | Meteo attuale, previsioni orarie e giornaliere (fino a 10 giorni) e cronologia oraria fino a 24 ore (WEATHER in capabilities o richieste legacy che omettono capabilities, weather_options, air_quality_options e language_code) |
Nessuna opzione Pro (tutti i dati di WEATHER sono inclusi in Essentials) |
| Qualità dell'aria | Condizioni attuali, risultati orari dell'intera giornata di oggi e previsioni orarie fino a 4 giorni (AIR_QUALITY in capabilities) |
Qualità dell'aria storica fino a 30 giorni nel passato
(AIR_QUALITY in capabilities con un
date prima di oggi o un hour passato nel
fuso orario della località), se restituita nella risposta |
|
| Pollen | Non disponibile | Previsioni giornaliere della concentrazione di pollini fino a 5 giorni e dettagli sulle specie di piante (POLLEN in capabilities), se restituite nella risposta |
|
| API Resolution | Nessuna opzione Pro. Tutte le richieste vengono fatturate senza costi aggiuntivi con lo SKU Places API Ricerca testuale Essentials (IDs Only). | ||
Per le opzioni di richiesta che attivano ogni funzionalità, consulta Cerca luoghi, Cerca lungo il percorso, Calcola percorsi e Cerca meteo.
Controlla l'utilizzo di Pro
Le opzioni Pro sono disattivate per impostazione predefinita su search_places, compute_routes e
lookup_weather. Un LLM li imposta o chiama search_along_route quando la richiesta dell'utente lo richiede e la descrizione dello strumento o le tue istruzioni lo consentono.
Le descrizioni degli strumenti indicano al modello quali opzioni costano di più e quando utilizzarle: un page_size superiore a 5, Place Details estesi, più di 10 waypoint intermedi, routing basato sul traffico e search_along_route. Se chiami gli strumenti con REST, il tuo codice imposta ogni opzione. Per gestire i costi:
- Indica al modello quando sono appropriate le opzioni Pro. Ad esempio: "Imposta
include_extended_detailssolo quando l'utente chiede informazioni su recensioni, menu o atmosfera". Oppure: "UtilizzaROUTING_PREFERENCE_TRAFFIC_AWARE_OPTIMALsolo quando l'utente chiede un tempo di percorrenza attuale". Oppure: "Chiamasearch_along_routesolo quando l'utente chiede luoghi lungo un percorso". In alternativa: "IncludiPOLLENoAIR_QUALITYcon undateohourpassato, solo quando l'utente chiede informazioni su polline, allergie o qualità dell'aria storica". - Per mantenere un agente nello SKU Essentials, istruisci il modello in modo che non chiami mai
search_along_routeo utilizzi un'opzione Pro. Le opzioni Pro sonoinclude_extended_details,page_sizesuperiore a 5,ROUTING_PREFERENCE_TRAFFIC_AWARE_OPTIMAL, più di 10 waypoint intermedi,POLLENincapabilitiese undateohourpassato conAIR_QUALITYincapabilities. Se il tuo client MCP può limitare gli strumenti o gli argomenti degli strumenti, puoi anche bloccaresearch_along_routee i valori di questi argomenti nella configurazione dello strumento. - Monitora lo SKU Maps Grounding Pro nei report sulla fatturazione e imposta avvisi relativi al budget.
API Resolution
I tool agentici di Maps Experience forniscono l'API Resolution. Risolve il testo della posizione in formato libero e gli URL in identificatori di luoghi di Google Maps strutturati. L'API Resolution è disponibile come metodi REST e come strumenti sul server MCP:
- Risolvi i nomi (REST, MCP): risolvi un gruppo di nomi o indirizzi di località in entità di luoghi specifiche su Google Maps. Questo strumento aiuta a basare le query utente non strutturate su ID luogo stabili.
- Risolvi gli URL di Maps (REST, MCP): risolvi un gruppo di URL di Google Maps in entità di luoghi specifiche. I formati supportati includono URL di luoghi standard e URL abbreviati.
Puoi utilizzare gli ID luogo restituiti con altre API di Google Maps Platform. Ogni risposta include anche un link che salva i luoghi risolti come elenco in Google Maps.
Per saperne di più, consulta l'API Maps Tools Resolution.
Prova l'app di esempio (si apre in una nuova scheda)
Fatturazione e quote
Modalità di fatturazione
Con il modello di prezzi con pagamento a consumo di Google Maps Platform, l'utilizzo degli strumenti dell'agente Maps Experience viene calcolato per ogni richiesta. Ogni richiesta rappresenta un evento di fatturazione. L'utilizzo viene monitorato per ogni SKU del prodotto. La fattura mostra una voce per ogni SKU, oltre agli addebiti totali. Per saperne di più, consulta la panoramica dei report.
Ogni richiesta di Place Search, ricerca lungo il percorso, calcolo dei percorsi o ricerca del meteo, tramite il server MCP o con REST, viene fatturata con uno SKU:
Maps Grounding Essentials
o
Maps Grounding Pro.
Ogni richiesta search_along_route e qualsiasi richiesta che utilizza un'opzione Pro viene fatturata con lo SKU Pro. Una richiesta non viene mai fatturata con entrambi gli SKU e il numero di opzioni Pro in una richiesta non modifica l'addebito. Per le funzionalità e le opzioni che determinano lo SKU per ogni strumento, consulta Cosa viene fatturato con lo SKU Pro.
Le richieste di Maps Grounding Essentials vengono fatturate a 7,00 $per 1000 richieste dopo le prime 10.000 richieste di ogni mese. Le richieste di Maps Grounding Pro vengono fatturate a 14,00 $per 1000 richieste dopo le prime 5000 richieste di ogni mese. Entrambi gli SKU prevedono sconti per volume in caso di utilizzo mensile più elevato.
Per i dettagli sui prezzi, consulta la tabella dei prezzi principale e la tabella dei prezzi per l'India.
Le richieste API di risoluzione (ResolveNames e ResolveMapsUrls) vengono fatturate senza costi nell'ambito dello SKU API Places Ricerca testuale Essentials (IDs Only).
Se mostri i luoghi di una risposta search_places o search_along_route con Places UI Kit, puoi utilizzare il token di visualizzazione dei dati agentica (anteprima) in modo che le richieste di Places UI Kit non vengano fatturate.
L'utilizzo dello SKU Essentials è incluso nei piani Essentials e Pro Abbonati per risparmiare. L'utilizzo dello SKU Pro è incluso nel piano Pro.
Quote
Le seguenti quote si applicano agli strumenti e alle API forniti dai tool agentici di Experimente Maps:
- Ricerca luoghi: 300 query al minuto per ogni progetto.
- Ricerca lungo il percorso: 300 query al minuto per ogni progetto.
- Ricerca meteo: 300 query al minuto per ogni progetto.
- Calcola percorsi: 300 query al minuto per ogni progetto.
- Risoluzione dei nomi: 600 query al minuto per ogni progetto.
- Risolvi gli URL di Maps: 600 query al minuto per ogni progetto.
Le quote vengono conteggiate per ogni strumento e sono condivise dagli SKU Essentials e Pro. Una richiesta Pro consuma la stessa quota di una richiesta Essentials allo stesso strumento.
Ogni richiesta API Resolution viene conteggiata come una query, indipendentemente dal numero di elementi che contiene.
Norme e Termini di servizio
I tool agentici di Maps Experience sono soggetti ai Termini di servizio di Google Maps Platform, inclusi i Termini specifici dei servizi. Questa sezione descrive i requisiti di utilizzo aggiuntivi per gli strumenti dell'agente Maps Experience, inclusi gli LLM compatibili e l'attribuzione della fonte. I requisiti si applicano a tutti i risultati, indipendentemente dallo SKU con cui viene fatturata una richiesta.
Requisiti per gli LLM compatibili
Puoi utilizzare i tool agentici di Maps Experience 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 l'LLM che scegli di utilizzare. Prima di utilizzare i tool agentici di Maps Experience, devi esaminare i Termini di servizio di qualsiasi modello che intendi utilizzare con i tool agentici di Maps Experience. Non devi utilizzare gli strumenti dell'agente Maps Experience con modelli che utilizzano i dati inseriti nel modello per l'addestramento o il miglioramento del modello. È tua responsabilità assicurarti che l'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 dei servizi.
Requisiti di attribuzione per le origini di Google Maps
Ogni risposta dei tool agentici di Maps Experience include le fonti. Quando presenti i risultati dei tool agentici di Maps Experience, devi includere le fonti di Google Maps associate e soddisfare i seguenti requisiti:
- Le fonti di Google Maps devono seguire immediatamente i contenuti generati che supportano. Questi contenuti generati sono anche chiamati output con grounding.
- Le fonti di Google Maps devono essere visualizzabili con una sola interazione dell'utente.
Fonti per gli strumenti Cerca luoghi e Cerca lungo il percorso
Il campo places dello strumento search_places e il campo results[].place dello strumento search_along_route forniscono fonti che supportano summary. Per ogni luogo vengono restituiti i seguenti metadati:
place(nome della risorsa)idlocationgoogleMapsLinksattribution
Per ogni luogo, devi generare un'anteprima del link che soddisfi i seguenti requisiti:
- Attribuisci ogni fonte a Google Maps, seguendo le linee guida per l'attribuzione del testo dei tool agentici di Maps Experience.
- Link alla fonte utilizzando
googleMapsLinks.placeUrldalla risposta.
Questi requisiti si applicano anche ai riepiloghi che includono Place Details estesi di Pro, come gli approfondimenti delle recensioni. summary cita ogni luogo con un indice basato su zero, ad esempio [0], che rimanda a una voce in places o results.
Ogni luogo include anche googleMapsLinks.reviewsUrl, che rimanda alle recensioni del luogo su Google Maps. Gli utenti possono seguirlo per visualizzare le recensioni alla base di un
insight.
Interfacce vocali
Se la tua app presenta i risultati dei tool agentici di Maps Experience tramite voce, devi anche soddisfare i requisiti per le interfacce voice-first. In sintesi:
- Sourcing: mostra le fonti di Google Maps in una UI complementare che mostra un registro storico letterale della conversazione vocale.
- Informativa attiva: al momento dell'interazione, comunica agli utenti che i contenuti generati con l'AI potrebbero includere informazioni di Google Maps. Inoltre, comunica che le fonti dettagliate sono disponibili nell'UI complementare. Puoi farlo sullo schermo o tramite comandi vocali.
- Informativa permanente: mantieni un'informativa permanente, ad esempio in un menu delle impostazioni vocali, che indichi che i contenuti generati con l'AI potrebbero includere contenuti di Google Maps.
- Richieste degli utenti: rispondi con precisione alle domande degli utenti sulla fonte dei contenuti e indirizzali alla UI complementare per i dettagli.
Configura gli LLM per l'utilizzo del server MCP
Per utilizzare i tool agentici di Maps Experience, devi disporre di un progetto Google Cloud con il servizio API Tool agentici di Maps Experience abilitato. Ti serve anche una chiave API o un ID client OAuth. In seguito, puoi configurare gli LLM per accedere al server MCP. Il server MCP utilizza il trasporto HTTP trasmissibile in streaming.
Abilita i tool agentici di Maps Experience nel tuo progetto Google Cloud
Per abilitare l'API nel tuo progetto:
- Nella console Google Cloud, scegli il progetto che vuoi utilizzare per gli strumenti dell'agente Maps Experience.
- Abilita la fatturazione per il progetto nella console Google Cloud.
- Abilita i tool agentici di Experimente Maps nella libreria API della console Google Cloud.
Esegui l'autenticazione utilizzando una chiave API
Puoi utilizzare una chiave API esistente con i tool agentici di Maps Experience o crearne una nuova. In entrambi i casi, abilita il servizio API Maps Experience agent tools sia nel progetto Google Cloud sia nella chiave.
Per eseguire l'autenticazione utilizzando una chiave API:
- Crea o configura una chiave API seguendo i passaggi descritti in Inizia a utilizzare 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 dell'LLM.
Esegui l'autenticazione utilizzando OAuth
Puoi eseguire l'autenticazione utilizzando OAuth creando credenziali OAuth e passandole all'applicazione host MCP o server MCP.
Per eseguire l'autenticazione utilizzando OAuth:
- Nella console Google Cloud, scegli il progetto che vuoi utilizzare per gli strumenti dell'agente Maps Experience.
- 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 applicazione. Ad esempio, se stai creando un'applicazione web, aggiungi gli URI autorizzati per le richieste del browser e del server.
- Una volta creato il client, salva l'ID client e il secret.
- Quando configuri l'applicazione host MCP o server MCP, passa l'ID client OAuth e il secret. 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 gli LLM per accedere al server MCP dei tool agentici di Experimente Maps
Dopo aver attivato il servizio Strumenti dell'agente Maps Experience e creato le credenziali, puoi configurare gli LLM per accedere al server MCP. Segui la documentazione di configurazione dell'MCP del tuo LLM e utilizza l'URL del server MCP: https://mapstools.googleapis.com/mcp
Per saperne di più, consulta Configura l'MCP in un'applicazione di AI.
Configura i tool agentici di Maps Experience con Gemini CLI
Questa sezione fornisce un esempio di come configurare il server MCP degli strumenti dell'agente Maps Experience utilizzando Gemini CLI. Per maggiori dettagli, consulta i server MCP con l'interfaccia a riga di comando Gemini.
Dopo aver installato l'interfaccia a riga di comando di Gemini, esegui
gemini mcp addper configurare il 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/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, esegui il comando
/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_placesInizia a Chiedi a Maps con l'interfaccia a riga di comando. Ad esempio, prova "Consigliami alcuni ristoranti a Mountain View", che chiama lo strumento
search_placesper tuo conto.
Configura i tool agentici di Maps Experience con l'Agent Development Kit (ADK)
Questa sezione mostra come configurare il server MCP con l'Agent Development Kit (ADK) in Python, Java o TypeScript.
Python
Puoi trovare un'implementazione completa di questo esempio su GitHub nel repository adk-samples.
Passaggio 1: definisci l'agente con McpToolset per i tool agentici di Maps Experience
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 interagisci
- 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 il seguente comando per avviare l'interfaccia web ADK:adk web
- Interagisci con la UI:
- 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 a SFO."
- 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: "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" } } } }) ], });
Chiama gli strumenti con REST
Ogni strumento nei tool agentici di Maps Experience è disponibile anche come metodo REST. Chiama direttamente i metodi REST quando vuoi collegare gli strumenti al tuo agente o alla tua applicazione, ad esempio per dichiarare le tue funzioni per un modello, scegliere le opzioni che il modello può impostare o impostare valori predefiniti nel codice.
La tabella seguente elenca il metodo REST per ogni strumento:
| Strumento | Metodo 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 |
Una richiesta REST accetta le stesse opzioni dello strumento corrispondente e restituisce la stessa risposta. Nei corpi delle richieste e delle risposte REST, i nomi dei campi utilizzano la notazione a cammello minuscola, ad esempio textQuery anziché text_query. Le richieste REST vengono fatturate con gli stessi SKU, seguono le stesse regole per le opzioni Pro e vengono conteggiate per le stesse quote delle chiamate allo strumento MCP.
Per l'autenticazione, utilizza lo stesso progetto e le stesse credenziali Google Cloud del server MCP. Per i passaggi di configurazione, consulta Configura gli LLM per l'utilizzo del server MCP.
Passa una chiave API nell'intestazione X-Goog-Api-Key o un token di accesso OAuth con l'ambito https://www.googleapis.com/auth/maps-platform.mapstools nell'intestazione Authorization.
L'esempio seguente chiama il metodo 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"
Sostituisci API_KEY con la tua chiave API.
La risposta contiene gli stessi campi summary, places e contentToken di un risultato dello strumento search_places. La guida di ogni strumento mostra una versione REST del relativo esempio.
Condivisione di feedback
Per condividere un feedback sui tool agentici di Maps Experience, utilizza i seguenti moduli: