MCP Tools Reference: mapstools.googleapis.com

Tool: search_places

Rufen Sie dieses Tool auf, wenn die Anfrage des Nutzers darin besteht, Orte, Unternehmen, Adressen, Standorte, POIs oder andere Google Maps-bezogene Suchanfragen zu finden.

Eingabeanforderungen (WICHTIG):

  1. text_query (String – ERFORDERLICH): Die primäre Suchanfrage. Hier muss klar definiert werden, wonach die Nutzer suchen.

    • Beispiele: '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'.
    • Für bestimmte Ortsdetails: Geben Sie das gewünschte Attribut an (z.B. 'Google Store Mountain View opening hours', 'SF MoMa phone number', 'Shoreline Park Mountain View address').
  2. location_bias (Objekt – OPTIONAL): Damit können Sie Ergebnisse in der Nähe eines bestimmten geografischen Bereichs priorisieren.

    • Format: {"location_bias": {"circle": {"center": {"latitude": [value], "longitude": [value]}, "radius_meters": [value (optional)]}}}
    • Verwendung:
      • Umkreis von 5 km bevorzugen: {"location_bias": {"circle": {"center": {"latitude": 34.052235, "longitude": -118.243683}, "radius_meters": 5000}}}
      • Starke Gewichtung auf den Mittelpunkt: {"location_bias": {"circle": {"center": {"latitude": 34.052235, "longitude": -118.243683}}}} (radius_meters wird weggelassen).
  3. language_code (String – OPTIONAL): Die Sprache, in der die Zusammenfassung der Suchergebnisse angezeigt werden soll.

    • Format: Ein zweistelliger Sprachcode (ISO 639-1), optional gefolgt von einem Unterstrich und einem zweistelligen Ländercode (ISO 3166-1 alpha-2), z.B. en, ja, en_US, zh_CN, es_MX. Wenn der Sprachcode nicht angegeben ist, werden die Ergebnisse auf Englisch ausgegeben.
  4. region_code (String – OPTIONAL): Der Unicode-CLDR-Regionscode des Nutzers. Mit diesem Parameter werden die Ortsdetails angezeigt, z. B. der regionsspezifische Ortsname, falls verfügbar. Der Parameter kann sich je nach geltendem Recht auf die Ergebnisse auswirken.

    • Format: Ein zweistelliger Ländercode (ISO 3166-1 alpha-2), z.B. US, CA.

Anleitung für den Toolaufruf:

  • Standortinformationen (KRITISCH): Die Suche muss ausreichende Standortinformationen enthalten. Wenn der Ort mehrdeutig ist (z.B. nur „Pizzerien“), müssen Sie ihn in der text_query angeben (z.B. „Pizzerien in New York“) oder den Parameter location_bias verwenden. Geben Sie bei Bedarf den Namen der Stadt, des Bundeslandes/der Provinz und der Region/des Landes an, um Mehrdeutigkeiten zu vermeiden.

  • Geben Sie immer die spezifischste und kontextreichste text_query an, die möglich ist.

  • Verwenden Sie location_bias nur, wenn Koordinaten explizit angegeben sind oder wenn es angemessen und notwendig ist, einen Standort aus dem bekannten Kontext eines Nutzers abzuleiten, um bessere Ergebnisse zu erzielen.

  • Die fundierte Ausgabe muss der Quelle zugeordnet werden. Verwenden Sie dazu die Informationen aus dem Feld attribution, sofern verfügbar.

Das folgende Codebeispiel zeigt, wie Sie mit curl das MCP-Tool search_places aufrufen.

Curl-Anfrage
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
}'

Eingabeschema

Anfragenachricht für SearchText.

SearchTextRequest

JSON-Darstellung
{
  "textQuery": string,
  "languageCode": string,
  "regionCode": string,
  "pageSize": integer,
  "includeExtendedDetails": boolean,

  // Union field _location_bias can be only one of the following:
  "locationBias": {
    object (LocationBias)
  }
  // End of list of possible types for union field _location_bias.
}
Felder
textQuery

string

Erforderlich. Die Textabfrage.

languageCode

string

Optional. Die Sprache, in der die Zusammenfassung zurückgegeben werden soll. Wenn der Sprachcode nicht angegeben oder nicht erkannt wird, wird die Zusammenfassung mit einer Präferenz für Englisch zurückgegeben.

Beispiel: „en“ für Englisch.

Aktuelle Liste der unterstützten Sprachen: https://developers.google.com/maps/faq#languagesupport

regionCode

string

Optional. Der Länder-/Regionscode (CLDR) des Standorts, von dem die Anfrage stammt, im Unicode-Format. Mit diesem Parameter werden die Ortsdetails angezeigt, z. B. der regionsspezifische Ortsname, falls verfügbar. Der Parameter kann sich je nach anwendbarem Recht auf die Ergebnisse auswirken.

Beispiel: „DE“ für Deutschland.

Weitere Informationen finden Sie unter https://www.unicode.org/cldr/charts/latest/supplemental/territory_language_information.html.

Dreistellige Regionscodes werden derzeit nicht unterstützt.

pageSize

integer

Optional. Die maximale Anzahl der zurückzugebenden Orte (bis zu 5). Der Dienst gibt möglicherweise weniger als diesen Wert zurück. Der Standardwert ist 5.

includeExtendedDetails

boolean

Optional. Enthält erweiterte Ortsdetails in der Antwort.

Setzen Sie dieses Feld auf true, wenn die Nutzeranfrage detaillierte qualitative Informationen, Echtzeitdynamik oder spezielle Entitätsattribute erfordert: - Qualitative Rezensionen, Kundenstimmung und Feedback. - Spezifische Angebote wie Menüpunkte, Gerichte, Spezialitäten, Getränke oder Highlights des Unternehmens. – Qualitative Atmosphäre, Inneneinrichtung, Ästhetik, Ambiente oder Stimmung. - Echtzeitdaten und spezielle Informationen zu Einrichtungen, Besucherrichtlinien/-tipps, Wartezeiten.

Lassen Sie false (Standard) für Standardsuchen (z.B. Küchen, Geschäftstypen), Standort-/Adresssuchen, Kontaktdaten, Öffnungszeiten und Standardmetadaten/-ausstattung stehen.

Wenn Sie dieses Feld aktivieren, erhöht sich die Latenz.

Union-Feld _location_bias.

Für _location_bias ist nur einer der folgenden Werte zulässig:

locationBias

object (LocationBias)

Eine optionale Region, auf die die Suchergebnisse ausgerichtet werden sollen. Wenn in text_query ein expliziter Standort angegeben ist, wird dieser anstelle dieses Felds verwendet, um die Suchergebnisse zu beeinflussen.

LocationBias

JSON-Darstellung
{
  "circle": {
    object (Circle)
  }
}
Felder
circle

object (Circle)

Optional. Ein Kreis, der durch einen Mittelpunkt und einen Radius definiert ist. radius_meters ist optional. Wenn nichts anderes festgelegt ist, werden die Ergebnisse auf den Mittelpunkt ausgerichtet.

Kreis

JSON-Darstellung
{
  "center": {
    object (LatLng)
  },

  // Union field _radius_meters can be only one of the following:
  "radiusMeters": number
  // End of list of possible types for union field _radius_meters.
}
Felder
center

object (LatLng)

Erforderlich. Der Mittelpunkt des Kreises.

Union-Feld _radius_meters.

Für _radius_meters ist nur einer der folgenden Werte zulässig:

radiusMeters

number

Der Radius des Kreises in Metern. Der Radius darf maximal 50.000 Meter betragen.

LatLng

JSON-Darstellung
{
  "latitude": number,
  "longitude": number
}
Felder
latitude

number

Der Breitengrad in Grad. Er muss im Bereich [-90,0, +90,0] liegen.

longitude

number

Der Längengrad in Grad. Er muss im Bereich [-180,0, +180,0] liegen.

Ausgabeschema

Antwortnachricht für SearchText.

SearchTextResponse

JSON-Darstellung
{
  "places": [
    {
      object (PlaceView)
    }
  ],
  "summary": string,
  "contentToken": string
}
Felder
places[]

object (PlaceView)

Nur Ausgabe. Die Liste der Orte, die in der Zusammenfassung erwähnt werden.

summary

string

Nur Ausgabe. Eine Zusammenfassung der Suchergebnisse in natürlicher Sprache. Die Zusammenfassung kann nullbasierte Zitate wie „[0]“, „[1]“, „[2]“ usw. enthalten. Diese Zitate sind den entsprechenden Orten im Feld places zugeordnet.

contentToken

string

Nur Ausgabe. Ein verschlüsseltes Token, das den Suchkontext enthält und an visuelle Rendering-Dienste von Google Maps, SDKs oder das Maps Agentic UI Toolkit (A2UI) übergeben werden kann, um interaktive UI-Komponenten für die zurückgegebenen Suchergebnisse anzuzeigen.

PlaceView

JSON-Darstellung
{
  "place": string,
  "id": string,
  "googleMapsLinks": {
    object (GoogleMapsLinks)
  },
  "attribution": {
    object (Attribution)
  },

  // Union field _location can be only one of the following:
  "location": {
    object (LatLng)
  }
  // End of list of possible types for union field _location.
}
Felder
place

string

Der Ressourcenname des zugrunde liegenden Orts im Format „places/{id}“.

id

string

Die Orts-ID des zugrunde liegenden Ortes.

googleMapsLinks

object (GoogleMapsLinks)

Links zum Auslösen verschiedener Google Maps-Aktionen.

attribution

object (Attribution)

Erforderliche Quellenangabe, die mit dem Ort angezeigt werden soll.

Union-Feld _location.

Für _location ist nur einer der folgenden Werte zulässig:

location

object (LatLng)

Die Position dieses Ortes.

LatLng

JSON-Darstellung
{
  "latitude": number,
  "longitude": number
}
Felder
latitude

number

Der Breitengrad in Grad. Er muss im Bereich [-90,0, +90,0] liegen.

longitude

number

Der Längengrad in Grad. Er muss im Bereich [-180,0, +180,0] liegen.

JSON-Darstellung
{
  "directionsUrl": string,
  "placeUrl": string,
  "writeAReviewUrl": string,
  "reviewsUrl": string,
  "photosUrl": string
}
Felder
directionsUrl

string

Ein Link, über den die Wegbeschreibung zum Ort angezeigt wird. Über den Link wird nur der Zielort ausgefüllt und der Standard-Reisemodus DRIVE verwendet.

placeUrl

string

Ein Link, über den dieser Ort angezeigt wird.

writeAReviewUrl

string

Ein Link, über den Sie eine Rezension für diesen Ort auf Google Maps schreiben können.

reviewsUrl

string

Ein Link, über den Rezensionen zu diesem Ort auf Google Maps angezeigt werden.

photosUrl

string

Ein Link, über den Fotos dieses Ortes auf Google Maps angezeigt werden.

Attribution

JSON-Darstellung
{
  "title": string,
  "url": string
}
Felder
title

string

Der Titel, der für die Attribution angezeigt werden soll.

url

string

Die URL, auf die für die Attribution verlinkt werden soll.

Tool-Annotationen

Tool-Anmerkungen werden an MCP-Clients gesendet, um das grundlegende Risiko eines bestimmten Tools zu beschreiben. Die meisten Clients behandeln diese Hinweise als nicht vertrauenswürdig, sie können aber verwendet werden, um zu entscheiden, wann eine Bestätigungsaufforderung an einen Nutzer gesendet werden soll.

Zusätzlich zum Titelstring werden die folgenden booleschen Hinweise definiert:

  • readOnlyHint: Wenn „true“, ändert das Tool seine Umgebung nicht. Standardeinstellung: false.
  • destructiveHint: Wenn „true“, kann das Tool destruktive Aktionen ausführen. Wenn „false“, kann das Tool nur additive Aktionen ausführen. Standardeinstellung: true.
  • idempotentHint: Wenn „true“, hat das wiederholte Aufrufen des Tools mit denselben Argumenten keine zusätzlichen Auswirkungen auf die Umgebung. Standardeinstellung: false.
  • openWorldHint: Wenn „true“, kann das Tool mit einer „offenen Welt“ externer Entitäten interagieren. Wenn „false“, kann das Tool nur mit internen Entitäten interagieren. Ein Tool für die Websuche wäre beispielsweise ein Open-World-Tool, ein Tool für gemerkte Informationen dagegen nicht.

Destruktiver Hinweis: ❌ | Idempotenter Hinweis: ❌ | Lesezugriff-Hinweis: ✅ | Hinweis „Open World“: ❌