Strumento: compute_routes
Calcola un percorso di viaggio tra un'origine e una destinazione specificate. Modalità di viaggio supportate: DRIVE (impostazione predefinita), WALK.
Requisiti di input (CRITICI): richiede sia origin che destination. Ciascuno deve essere fornito utilizzando uno dei seguenti metodi, nidificato nel rispettivo campo:
address: (stringa, ad es. "Torre Eiffel, Parigi"). Nota: più granulare o specifico è l'indirizzo di input, migliori saranno i risultati.
lat_lng: (oggetto, {"latitude": number, "longitude": number})
place_id: (stringa, ad es. "ChIJOwE_Id1w5EAR4Q27FkL6T_0"). Nota: questo ID può essere ottenuto dallo strumento search_places. È consentita qualsiasi combinazione di tipi di input (ad es. origine per indirizzo, destinazione per lat_lng). Se manca l'origine o la destinazione, DEVI chiedere all'utente di chiarire prima di tentare di chiamare lo strumento.
Esempio di chiamata dello strumento: {"origin":{"address":"Eiffel Tower"},"destination":{"place_id":"ChIJt_5xIthw5EARoJ71mGq7t74"},"travel_mode":"DRIVE"}
- L'output basato su dati concreti deve essere attribuito all'origine utilizzando le informazioni del campo
attribution, se disponibili.
Il seguente esempio mostra come utilizzare curl per richiamare lo strumento MCP compute_routes.
| Richiesta curl |
|---|
curl --location 'https://mapstools.googleapis.com/mcp' \ --header 'content-type: application/json' \ --header 'accept: application/json, text/event-stream' \ --data '{ "method": "tools/call", "params": { "name": "compute_routes", "arguments": { // provide these details according to the tool's MCP specification } }, "jsonrpc": "2.0", "id": 1 }' |
Schema di input
ComputeRoutesRequest.
ComputeRoutesRequest
| Rappresentazione JSON |
|---|
{ "origin": { object ( |
| Campi | |
|---|---|
origin |
Obbligatorio. Waypoint di origine. |
destination |
Obbligatorio. Waypoint di destinazione. |
travelMode |
Facoltativo. Specifica la modalità di trasporto. |
Waypoint
| Rappresentazione JSON |
|---|
{ // Union field |
| Campi | |
|---|---|
Campo unione location_type. Diversi modi per rappresentare una località. location_type può essere solo uno dei seguenti tipi: |
|
latLng |
Un punto specificato utilizzando le coordinate geografiche. |
placeId |
L'ID luogo associato al waypoint. |
address |
Indirizzo leggibile o Plus Code. Per maggiori dettagli, visita la pagina https://plus.codes. |
LatLng
| Rappresentazione JSON |
|---|
{ "latitude": number, "longitude": number } |
| Campi | |
|---|---|
latitude |
La latitudine in gradi. Deve essere compresa nell'intervallo [-90.0, +90.0]. |
longitude |
La longitudine in gradi. Deve essere compresa nell'intervallo [-180.0, +180.0]. |
RouteTravelMode
Un insieme di valori utilizzati per specificare la modalità di viaggio.
| Enum | |
|---|---|
ROUTE_TRAVEL_MODE_UNSPECIFIED |
Nessuna modalità di viaggio specificata. Il valore predefinito è DRIVE. |
DRIVE |
Viaggio in auto. |
WALK |
Viaggio a piedi. NOTA: i percorsi WALK sono in versione beta e a volte potrebbero mancare marciapiedi o percorsi pedonali chiari. Devi mostrare questo avviso all'utente per tutti i percorsi a piedi visualizzati nella tua app. |
Schema di output
ComputeRoutesResponse.
ComputeRoutesResponse
| Rappresentazione JSON |
|---|
{
"routes": [
{
object ( |
| Campi | |
|---|---|
routes[] |
Contiene i percorsi tra l'origine e la destinazione richieste. Al momento viene restituito un solo percorso. |
Route
| Rappresentazione JSON |
|---|
{
"distanceMeters": integer,
"duration": string,
"attribution": {
object ( |
| Campi | |
|---|---|
distanceMeters |
La distanza di viaggio del percorso, in metri. |
duration |
La durata necessaria per percorrere il percorso. Una durata in secondi con un massimo di nove cifre frazionarie, che termina con ' |
attribution |
Attribuzione obbligatoria da mostrare con il percorso. |
Duration
| Rappresentazione JSON |
|---|
{ "seconds": string, "nanos": integer } |
| Campi | |
|---|---|
seconds |
Secondi firmati dell'intervallo di tempo. Deve essere compreso tra -315.576.000.000 e +315.576.000.000 inclusi. Nota: questi limiti vengono calcolati da: 60 sec/min * 60 min/ora * 24 ore/giorno * 365,25 giorni/anno * 10.000 anni |
nanos |
Frazioni firmate di un secondo con una risoluzione in nanosecondi dell'intervallo di tempo. Le durate inferiori a un secondo sono rappresentate con un campo |
Attribution
| Rappresentazione JSON |
|---|
{ "title": string, "url": string } |
| Campi | |
|---|---|
title |
Il titolo da visualizzare per l'attribuzione. |
url |
L'URL a cui rimandare per l'attribuzione. |
Annotazioni dello strumento
Suggerimento distruttivo: ❌ | Suggerimento idempotente: ❌ | Suggerimento di sola lettura: ✅ | Suggerimento Open World: ❌