Outil : search_places
Appelez cet outil lorsque la demande de l'utilisateur consiste à trouver des lieux, des établissements, des adresses, des emplacements, des points d'intérêt ou toute autre recherche liée à Google Maps.
Exigences concernant 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 donner la priorité aux 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 facultative) : 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
USouCA.
- 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 le paramètre
text_query(par exemple, "pizzerias à New York") ou utiliser 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.La sortie ancrée doit être attribuée à la source à l'aide des informations du champ
attribution, le cas échéant.
L'exemple de code suivant montre 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": { // Provide these details according to the MCP tool specification. } }, "jsonrpc": "2.0", "id": 1 }' |
Schéma d'entrée
Message de requête pour SearchText.
SearchTextRequest
| Représentation JSON |
|---|
{ "textQuery": string, "languageCode": string, "regionCode": string, // Union field |
| Champs | |
|---|---|
textQuery |
Obligatoire. Requête textuelle. |
languageCode |
Facultatif. Langue dans laquelle la réponse doit être fournie. Si le code de langue n'est pas spécifié ou n'est pas reconnu, le résumé en anglais sera renvoyé. Par exemple, "en" pour l'anglais. Liste actuelle des langues disponibles : https://developers.google.com/maps/faq#languagesupport. |
regionCode |
Facultatif. Code Unicode (CLDR) du pays ou de la région d'où provient la demande. 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. Par exemple, "US" pour les États-Unis. Pour en savoir plus, consultez https://www.unicode.org/cldr/charts/latest/supplemental/territory_language_information.html. Notez que les codes régionaux à trois chiffres ne sont pas acceptés pour le moment. |
Champ d'union
|
|
locationBias |
Région facultative permettant de biaiser les résultats de recherche. Si une position explicite figure dans |
LocationBias
| Représentation JSON |
|---|
{
"circle": {
object ( |
| Champs | |
|---|---|
circle |
Facultatif. Cercle défini par un point central et un rayon. |
Cercle
| Représentation JSON |
|---|
{ "center": { object ( |
| Champs | |
|---|---|
center |
Obligatoire. Point central du cercle. |
Champ d'union
|
|
radiusMeters |
Rayon du cercle en mètres. Le rayon doit être inférieur ou égal à 50 000 mètres. |
LatLng
| Représentation JSON |
|---|
{ "latitude": number, "longitude": number } |
| Champs | |
|---|---|
latitude |
Latitude en degrés. Elle doit être comprise dans la plage [-90.0, +90.0]. |
longitude |
Longitude en degrés. Elle doit être comprise dans la plage [-180.0, +180.0]. |
Schéma de sortie
Message de réponse pour SearchText.
SearchTextResponse
| Représentation JSON |
|---|
{
"places": [
{
object ( |
| Champs | |
|---|---|
places[] |
Uniquement en sortie. Liste des lieux mentionnés dans le résumé. |
summary |
Uniquement en sortie. Un résumé en langage naturel des résultats de recherche. Le résumé peut contenir des citations commençant par zéro, comme "[0]", "[1]", "[2]", etc. Ces citations correspondent aux emplacements correspondants dans le champ |
PlaceView
| Représentation JSON |
|---|
{ "place": string, "id": string, "googleMapsLinks": { object ( |
| Champs | |
|---|---|
place |
Nom de ressource du lieu sous-jacent, au format "places/{id}". |
id |
ID du lieu sous-jacent. |
googleMapsLinks |
Liens permettant de déclencher différentes actions Google Maps. |
attribution |
Mention obligatoire à afficher avec le lieu. |
Champ d'union
|
|
location |
Position de ce lieu. |
LatLng
| Représentation JSON |
|---|
{ "latitude": number, "longitude": number } |
| Champs | |
|---|---|
latitude |
Latitude en degrés. Elle doit être comprise dans la plage [-90.0, +90.0]. |
longitude |
Longitude en degrés. Elle doit être comprise dans la plage [-180.0, +180.0]. |
GoogleMapsLinks
| Représentation JSON |
|---|
{ "directionsUrl": string, "placeUrl": string, "writeAReviewUrl": string, "reviewsUrl": string, "photosUrl": string } |
| Champs | |
|---|---|
directionsUrl |
Lien permettant d'afficher l'itinéraire vers le lieu. Le lien ne renseigne que le lieu de destination et utilise le mode de déplacement par défaut |
placeUrl |
Lien permettant d'afficher ce lieu. |
writeAReviewUrl |
Un lien permettant de rédiger un avis sur ce lieu dans Google Maps. |
reviewsUrl |
Un lien permettant d'afficher les avis sur ce lieu dans Google Maps. |
photosUrl |
Un lien permettant d'afficher les photos de ce lieu sur Google Maps. |
Attribution
| Représentation JSON |
|---|
{ "title": string, "url": string } |
| Champs | |
|---|---|
title |
Titre à afficher pour l'attribution. |
url |
URL à associer pour l'attribution. |
Annotations d'outils
Les annotations d'outil sont envoyées aux clients MCP pour décrire le risque de base d'un outil donné. La plupart des clients traitent ces indices comme non fiables, mais ils peuvent être utilisés pour déterminer quand un message de confirmation peut être envoyé à un utilisateur.
En plus de la chaîne de titre, les indications booléennes suivantes sont définies comme suit :
readOnlyHint: si la valeur est "true", l'outil ne modifie pas son environnement. Valeur par défaut : "false".destructiveHint: si la valeur est "true", l'outil peut effectuer des actions destructrices. Si la valeur est "false", l'outil ne peut effectuer que des actions d'ajout. Valeur par défaut : "true".idempotentHint: si la valeur est "true", appeler l'outil à plusieurs reprises avec les mêmes arguments n'aura aucun effet supplémentaire sur son environnement. Valeur par défaut : "false".openWorldHint: si la valeur est "true", l'outil peut interagir avec un "monde ouvert" d'entités externes. Si la valeur est "false", l'outil ne peut interagir qu'avec des entités internes. Par exemple, un outil de recherche Web serait en monde ouvert, tandis qu'un outil de mémoire ne le serait pas.
Indication destructive : ❌ | Indication idempotente : ❌ | Indication en lecture seule : ✅ | Indication Open World : ❌