MCP Tools Reference: mapstools.googleapis.com

Outil : compute_routes

Calcule un itinéraire entre un point de départ et une destination spécifiés. Modes de transport acceptés : DRIVE (par défaut), WALK.

Exigences d'entrée (CRITIQUES) : nécessite origin et destination. Chacun doit être fourni à l'aide de l'une des méthodes suivantes, imbriquée dans son champ respectif :

  • address : (chaîne, par exemple, "Tour Eiffel, Paris"). Remarque : Plus l'adresse d'entrée est précise, meilleurs seront les résultats.

  • lat_lng: : (objet, {"latitude": number, "longitude": number})

  • place_id: : (chaîne, par exemple, "ChIJOwE_Id1w5EAR4Q27FkL6T_0"). Remarque : Cet ID peut être obtenu à partir de l'outil search_places. Toute combinaison de types d'entrée est autorisée (par exemple, point de départ par adresse, destination par lat_lng). Si le point de départ ou la destination est manquant, vous DEVEZ demander des précisions à l'utilisateur avant de tenter d'appeler l'outil.

Exemple d'appel d'outil : {"origin":{"address":"Eiffel Tower"},"destination":{"place_id":"ChIJt_5xIthw5EARoJ71mGq7t74"},"travel_mode":"DRIVE"}

  • La sortie ancrée doit être attribuée à la source à l'aide des informations du champ attribution, le cas échéant.

L'exemple suivant montre comment utiliser curl pour appeler l'outil MCP compute_routes.

Requête 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
}'
                

Schéma d'entrée

ComputeRoutesRequest.

ComputeRoutesRequest

Représentation JSON
{
  "origin": {
    object (Waypoint)
  },
  "destination": {
    object (Waypoint)
  },
  "travelMode": enum (RouteTravelMode)
}
Champs
origin

object (Waypoint)

Obligatoire. Point de départ.

destination

object (Waypoint)

Obligatoire. Point de cheminement de destination.

travelMode

enum (RouteTravelMode)

Facultatif. Spécifie le mode de transport.

Waypoint

Représentation JSON
{

  // Union field location_type can be only one of the following:
  "latLng": {
    object (LatLng)
  },
  "placeId": string,
  "address": string
  // End of list of possible types for union field location_type.
}
Champs
Champ d'union location_type. Différentes façons de représenter un lieu. location_type ne peut être qu'un des éléments suivants :
latLng

object (LatLng)

Point spécifié à l'aide de coordonnées géographiques.

placeId

string

ID de lieu associé au repère.

address

string

Adresse lisible ou code Plus. Pour en savoir plus, consultez https://plus.codes.

LatLng

Représentation JSON
{
  "latitude": number,
  "longitude": number
}
Champs
latitude

number

Latitude en degrés. Elle doit être comprise dans la plage [-90.0, +90.0].

longitude

number

Longitude en degrés. Elle doit être comprise dans la plage [-180.0, +180.0].

RouteTravelMode

Ensemble de valeurs utilisées pour spécifier le mode de transport.

Enums
ROUTE_TRAVEL_MODE_UNSPECIFIED Aucun mode de transport spécifié. La valeur par défaut est DRIVE.
DRIVE Trajet en voiture de tourisme.
WALK Trajet à pied. REMARQUE : Les itinéraires WALK sont en version bêta et peuvent parfois ne pas inclure de trottoirs ou de voies piétonnes clairs. Vous devez afficher cet avertissement à l'utilisateur pour tous les itinéraires à pied que vous affichez dans votre application.

Schéma de sortie

ComputeRoutesResponse.

ComputeRoutesResponse

Représentation JSON
{
  "routes": [
    {
      object (Route)
    }
  ]
}
Champs
routes[]

object (Route)

Contient les itinéraires entre le point de départ et la destination demandés. Actuellement, un seul itinéraire est renvoyé.

Itinéraire

Représentation JSON
{
  "distanceMeters": integer,
  "duration": string,
  "attribution": {
    object (Attribution)
  }
}
Champs
distanceMeters

integer

Distance de l'itinéraire, en mètres.

duration

string (Duration format)

Durée nécessaire pour parcourir l'itinéraire.

Durée en secondes avec neuf chiffres au maximum après la virgule et se terminant par 's'. Exemple : "3.5s".

attribution

object (Attribution)

Attribution requise à afficher avec l'itinéraire.

Durée

Représentation JSON
{
  "seconds": string,
  "nanos": integer
}
Champs
seconds

string (int64 format)

Secondes signées de la période. Doit être compris entre -315 576 000 000 et +315 576 000 000 inclus. Remarque : Ces limites sont calculées à partir de : 60 s/min * 60 min/h * 24 h/jour * 365,25 jours/an * 10 000 ans

nanos

integer

Fractions de secondes signées avec une précision de l'ordre de la nanoseconde de la période. Les durées inférieures à une seconde sont représentées par un champ seconds égal à 0 et un champ nanos positif ou négatif. Pour les durées d'une seconde ou plus, une valeur non nulle pour le champ nanos doit avoir le même signe que le champ seconds. Doit être compris entre -999 999 999 et +999 999 999 inclus.

Attribution

Représentation JSON
{
  "title": string,
  "url": string
}
Champs
title

string

Titre à afficher pour l'attribution.

url

string

URL à associer pour l'attribution.

Annotations d'outil

Indication destructive : ❌ | Indication idempotente : ❌ | Indication en lecture seule : ✅ | Indication Open World : ❌