MCP Tools Reference: mapstools.googleapis.com

Tool: search_places

Rufen Sie dieses Tool auf, wenn der Nutzer nach Orten, Unternehmen, Adressen, Standorten, Sehenswürdigkeiten oder anderen Google Maps-bezogenen Suchanfragen sucht.

Eingabeanforderungen (WICHTIG):

  1. text_query (String – ERFORDERLICH): Die primäre Suchanfrage. Darin muss klar definiert werden, wonach der Nutzer sucht.

    • 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:Fügen Sie das angeforderte Attribut hinzu (z.B. 'Google Store Mountain View opening hours', 'SF MoMa phone number', 'Shoreline Park Mountain View address').
  2. location_bias (object – 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:
      • So legen Sie einen Radius von 5 km fest:{"location_bias": {"circle": {"center": {"latitude": 34.052235, "longitude": -118.243683}, "radius_meters": 5000}}}
      • Starke Gewichtung des Zentralpunkts: {"location_bias": {"circle": {"center": {"latitude": 34.052235, "longitude": -118.243683}}}} (radius_meters wird ausgelassen).
  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 angezeigt.
  4. region_code (String – OPTIONAL): Der Unicode-CLDR-Regionscode des Nutzers. Mit diesem Parameter werden die Ortsdetails wie der regionsspezifische Ortsname angezeigt, sofern verfügbar. Der Parameter kann sich je nach anwendbarem Recht auf die Ergebnisse auswirken.

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

Anleitung für Toolaufruf:

  • Standortinformationen (WICHTIG): Die Suche muss ausreichend Standortinformationen enthalten. Wenn der Standort nicht eindeutig ist (z.B. nur „Pizzerien“), müssen Sie ihn in text_query angeben (z.B. „Pizzerien in New York“) oder den Parameter location_bias verwenden. Fügen Sie bei Bedarf den Namen der Stadt, des Bundesstaats/der Provinz und der Region/des Landes hinzu, um Mehrdeutigkeiten zu vermeiden.

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

  • Verwenden Sie location_bias nur, wenn Koordinaten explizit angegeben werden oder wenn das Ableiten eines Standorts aus dem bekannten Kontext eines Nutzers angemessen und für bessere Ergebnisse erforderlich ist.

  • 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,

  // 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 Textanfrage.

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 wie der regionsspezifische Ortsname angezeigt, sofern 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.

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 gewichten.

LocationBias

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

object (Circle)

Optional. Ein Kreis, der durch Mittelpunkt und Radius definiert wird. 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
}
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 Zitationen wie „[0]“, „[1]“, „[2]“ usw. enthalten. Diese Zitationen entsprechen den entsprechenden Stellen im Feld places.

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 Orts.

googleMapsLinks

object (GoogleMapsLinks)

Links zum Auslösen verschiedener Google Maps-Aktionen.

attribution

object (Attribution)

Erforderliche Quellenangabe, die mit dem Ort angezeigt werden muss.

Union-Feld _location.

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

location

object (LatLng)

Die Position dieses Orts.

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 zur Wegbeschreibung zum Ort. Der Link füllt nur den Zielort aus und verwendet den Standard-Fahrmodus DRIVE.

placeUrl

string

Ein Link, um diesen Ort zu zeigen.

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 Sie Rezensionen zu diesem Ort in Google Maps aufrufen können.

photosUrl

string

Ein Link, über den Sie Fotos dieses Orts in Google Maps aufrufen können.

Attribution

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

string

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

url

string

Die URL, auf die für die Quellenangabe 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 ein Bestätigungs-Prompt an einen Nutzer gesendet werden soll.

Zusammen mit dem Titelstring werden die folgenden booleschen Hinweise so 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 Einheiten interagieren. Wenn „false“, kann das Tool nur mit internen Einheiten interagieren. Ein Tool für die Websuche wäre beispielsweise Open World, ein Tool für das Gedächtnis nicht.

Destruktiver Hinweis: ❌ | Idempotenter Hinweis: ❌ | Hinweis „Nur lesen“: ✅ | Hinweis „Offene Welt“: ❌