Documentation de référence sur les outils MCP :
Ce document décrit les points de terminaison de l'API REST externe utilisés pour appeler les outils MCP (Model Context Protocol) Google à distance. Cette API sert de proxy sécurisé entre un client HTTP externe (comme curl ou un service Web) et le serveur MCP interne.
Obtenir les spécifications de l'outil MCP
Pour obtenir les spécifications des outils MCP pour tous les outils d'un serveur MCP, utilisez la méthode `tools/list`. L'exemple suivant montre comment utiliser curl pour lister tous les outils et leurs spécifications actuellement disponibles sur le serveur MCP.
| 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/list", "jsonrpc": "2.0", "id": 1 }' |
Outil : search_places
Appelez cet outil lorsque la demande de l'utilisateur consiste à trouver des lieux, des entreprises, des adresses, des emplacements, des points d'intérêt ou toute autre recherche liée à Google Maps.
Conditions requises pour les entrées (CRITIQUES) :
text_query(chaîne – OBLIGATOIRE) : requête de recherche principale. Elle doit définir clairement ce que l'utilisateur recherche.- Exemples :
'restaurants in New York','coffee shops near Golden Gate Park','SF MoMA','1600 Amphitheatre Pkwy, Mountain View, CA, USA','pets friendly parks in Manhattan, New York','date night restaurants in Chicago','accessible public libraries in Los Angeles'.
- Pour obtenir des informations spécifiques sur un lieu : incluez l'attribut demandé (par exemple,
'Google Store Mountain View opening hours','SF MoMa phone number','Shoreline Park Mountain View address').
- Exemples :
location_bias(objet – FACULTATIF) : utilisez ce paramètre pour privilégier les résultats à proximité d'une zone géographique spécifique.- Format :
{"location_bias": {"circle": {"center": {"latitude": [value], "longitude": [value]}, "radius_meters": [value (optional)]}}}
- Utilisation :
- Pour appliquer un biais à un rayon de 5 km :
{"location_bias": {"circle": {"center": {"latitude": 34.052235, "longitude": -118.243683}, "radius_meters": 5000}}} - Pour fortement biaiser vers le point central :
{"location_bias": {"circle": {"center": {"latitude": 34.052235, "longitude": -118.243683}}}}(en omettantradius_meters).
- Pour appliquer un biais à un rayon de 5 km :
- Format :
language_code(chaîne, FACULTATIF) : langue dans laquelle afficher le récapitulatif des résultats de recherche.- Format : code de langue à deux lettres (ISO 639-1), éventuellement suivi d'un trait de soulignement et d'un code pays à deux lettres (ISO 3166-1 alpha-2), par exemple :
en,ja,en_US,zh_CN,es_MX. Si le code de langue n'est pas fourni, les résultats seront en anglais.
- Format : code de langue à deux lettres (ISO 639-1), éventuellement suivi d'un trait de soulignement et d'un code pays à deux lettres (ISO 3166-1 alpha-2), par exemple :
region_code(chaîne – FACULTATIF) : code de région CLDR Unicode de l'utilisateur. Ce paramètre permet d'afficher les détails du lieu, comme son nom spécifique à la région, s'il est disponible. Ce paramètre peut avoir une incidence sur les résultats en fonction de la loi applicable.- Format : code pays à deux lettres (ISO 3166-1 alpha-2), par exemple
US,CA.
- Format : code pays à deux lettres (ISO 3166-1 alpha-2), par exemple
Instructions pour l'appel d'outil :
Informations de localisation (CRITIQUE) : la recherche doit contenir suffisamment d'informations de localisation. Si l'emplacement est ambigu (par exemple, "pizzerias"), vous devez le spécifier dans
text_query(par exemple, "pizzerias à New York") ou utilisez le paramètrelocation_bias. Incluez le nom de la ville, de l'État/de la province et de la région/du pays si nécessaire pour éviter toute ambiguïté.Fournissez toujours le
text_queryle plus spécifique et le plus riche en contexte possible.N'utilisez
location_biasque si des coordonnées sont explicitement fournies ou s'il est approprié et nécessaire d'inférer une position à partir du contexte connu d'un utilisateur pour obtenir de meilleurs résultats.
Les exemples suivants montrent comment utiliser curl pour appeler l'outil MCP search_places.
| 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": search_places, arguments: { // please fill these details according to tools MCP specification } }, "jsonrpc": "2.0", "id": 1 }' |
Outil : lookup_weather
Fournit les conditions actuelles, ainsi que les prévisions horaires et quotidiennes pour n'importe quel lieu. Utilisez cet outil pour toutes les questions liées à la météo.
Données spécifiques disponibles : température (actuelle, ressentie, maximale/minimale, indice de chaleur), vent (vitesse, rafales, direction), événements célestes (lever/coucher du soleil, phase de la lune), précipitations (type, probabilité, quantité/QPF), conditions atmosphériques (indice UV, humidité, nébulosité, probabilité d'orage) et adresse de localisation géocodée.
Conditions requises pour les entrées (CRITIQUES) :
Conditions actuelles : ne nécessite qu'un lieu (par exemple, une ville ou une adresse). Ne spécifiez pas de date ni d'heure.
Prévisions horaires : nécessitent une position et une heure (0 à 23). Utilisez cette option si l'utilisateur demande la météo à une heure précise ou en utilisant des expressions telles que "dans les prochaines heures" ou "plus tard dans la journée".
Prévisions quotidiennes : nécessitent une position et une date complète.
Gestion des dates (CRITIQUE) : les dates et heures fournies par l'utilisateur DOIVENT être exprimées dans le fuseau horaire local du lieu demandé. Les dates DOIVENT être décomposées en paramètres entiers distincts : année, mois et jour. Le format requis pour ces paramètres est le suivant : {"year":
Les exemples suivants montrent comment utiliser curl pour appeler l'outil MCP lookup_weather.
| 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": lookup_weather, arguments: { // please fill these details according to tools MCP specification } }, "jsonrpc": "2.0", "id": 1 }' |
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 concernant les entrées (CRITIQUES) : les champs origine et destination sont obligatoires. Chacun d'eux doit être fourni à l'aide de l'une des méthodes suivantes, imbriquées dans le champ correspondant :
address (chaîne, par exemple, "Tour Eiffel, Paris"). Remarque : Plus l'adresse saisie 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, origine par adresse et destination par lat_lng). Si l'origine ou la destination sont manquantes, vous DEVEZ demander des précisions à l'utilisateur avant d'essayer d'appeler l'outil.
Exemple d'appel d'outil : {"origin":{"address":"Eiffel Tower"},"destination":{"place_id":"ChIJt_5xIthw5EARoJ71mGq7t74"},"travel_mode":"DRIVE"}
Les exemples suivants montrent 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: { // please fill these details according to tools MCP specification } }, "jsonrpc": "2.0", "id": 1 }' |