MCP Tools Reference: mapstools.googleapis.com

Tool: search_along_route

Rufen Sie dieses Tool auf, wenn der Nutzer Orte, Unternehmen oder POIs entlang einer Reiseroute finden möchte (z.B. „Tankstellen auf dem Weg nach Tahoe“, „Cafés zwischen SF und San Jose“). Der Aufruf dieses Tools verursacht höhere Kosten als search_places. Verwenden Sie daher search_places, wenn Sie in der Nähe eines einzelnen Standorts und nicht entlang einer Route suchen.

Eingabeanforderungen (WICHTIG):

  1. text_query (String – ERFORDERLICH): Eine Beschreibung in natürlicher Sprache, wonach entlang der Route gesucht werden soll.

    • Beispiele: 'ev chargers', 'coffee', 'vegetarian restaurants', 'rest stops'.
  2. Routenspezifikation (ERFORDERLICH – geben Sie genau EINE der folgenden Optionen an):

    • retrieval_token (String): Die retrieval_token, die von einem vorherigen compute_routes-Aufruf für eine DRIVE-Route zurückgegeben wurde. Diese Option sollte bevorzugt werden, wenn die Route bereits berechnet wurde. Das Token ist 10 Minuten lang gültig.
    • route_endpoints (Objekt): Die origin und destination der Route. Jeder muss mit address, lat_lng oder place_id angegeben werden.
      • Beispiel: {"route_endpoints": {"origin": {"address": "San Francisco, CA"}, "destination": {"address": "Lake Tahoe, CA"}}}
    • encoded_polyline (String): Eine codierte Polylinie, die eine DRIVE-Route darstellt.
  3. travel_mode (Enum – OPTIONAL): DRIVE (Standard), WALK oder BICYCLE. WALK und BICYCLE werden nur mit route_endpoints unterstützt. TRANSIT wird nicht unterstützt.

  4. routing_preference (enum – OPTIONAL):

    • ROUTING_PREFERENCE_TRAFFIC_UNAWARE (Standard): Die Route und Umwege werden ohne Echtzeit-Verkehrsinformationen berechnet. Niedrigste Latenz.
    • ROUTING_PREFERENCE_TRAFFIC_AWARE_OPTIMAL: Verwendet die aktuelle Verkehrslage, sofern verfügbar. Wird für WALK oder BICYCLE nicht unterstützt. Setze diesen Wert NUR, wenn der Nutzer nach Verkehr, Staus oder verkehrsbedingten Umleitungszeiten fragt. Es führt zu einer höheren Latenz.
  5. include_extended_details (boolesch – OPTIONAL): Legen Sie diesen Wert nur dann auf true fest, wenn die Anfrage qualitative Rezensionsstatistiken, bestimmte Menüpunkte oder Angebote, die Atmosphäre, Tipps für Besucher oder die Auslastung, die Verfügbarkeit von Ladestationen für Elektrofahrzeuge, Benzinpreise oder andere detaillierte qualitative Informationen erfordert. Die Standardeinstellung ist false. Das Aktivieren kann die Latenz erhöhen.

  6. language_code (String – OPTIONAL): Die Sprache für die Ergebniszusammenfassung und die Place Details, z.B. en, ja, en-US. Die Standardeinstellung ist en-US.

  7. region_code (String – OPTIONAL): Der Unicode-CLDR-Regionscode des Nutzers, z.B. US, CA.

Anweisungen für den Toolaufruf:

  • Jedes Ergebnis enthält einen detour_summary (falls verfügbar), der die zusätzliche Entfernung (localized_detour_distance) und, sofern die Route nicht als encoded_polyline angegeben wurde, die zusätzliche Zeit (detour_duration) beschreibt, die durch den Halt an diesem Ort entsteht. Verwenden Sie sie, um Optionen zu vergleichen.
  • Die Antwort summary kann nullbasierte Zitate (z.B. „[0]“) enthalten, die auf Einträge in results verweisen.
  • Die fundierte Ausgabe muss der Quelle mithilfe des Felds attribution der einzelnen results[].place-Elemente zugeordnet werden, sofern verfügbar.

Das folgende Codebeispiel zeigt, wie Sie mit curl das MCP-Tool search_along_route 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_along_route",
    "arguments": {
      // Provide these details according to the MCP tool specification.
    }
  },
  "jsonrpc": "2.0",
  "id": 1
}'

Eingabeschema

Anfragenachricht für SearchAlongRoute.

SearchAlongRouteRequest

JSON-Darstellung
{
  "textQuery": string,
  "languageCode": string,
  "regionCode": string,
  "routingPreference": enum (RoutingPreference),
  "includeExtendedDetails": boolean,
  "travelMode": enum (RouteTravelMode),

  // Union field route_spec can be only one of the following:
  "encodedPolyline": string,
  "retrievalToken": string,
  "routeEndpoints": {
    object (RouteEndpoints)
  }
  // End of list of possible types for union field route_spec.
}
Felder
textQuery

string

Erforderlich. Suchanfrage in natürlicher Sprache (z.B. „Ladestationen für Elektrofahrzeuge“, „Kaffee“).

languageCode

string

Optional. Die Sprache für die Zusammenfassung und die Ortsdetails. Der Standardwert ist „en-US“.

regionCode

string

Optional. Länder-/Regionscode (CLDR) des Standorts (z.B. „US“).

routingPreference

enum (RoutingPreference)

Optional. Optionale Routing-Einstellung, die angibt, wie Verkehrsdaten verwendet werden. Die Standardeinstellung ist TRAFFIC_UNAWARE.

includeExtendedDetails

boolean

Optional. Enthält erweiterte Ortsdetails in der Antwort.

Setzen Sie dieses Feld auf true, wenn die Nutzeranfrage umfassende 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.

Das Aktivieren dieses Felds kann zu einer höheren Latenz führen.

travelMode

enum (RouteTravelMode)

Optional. Gibt die Mobilitätsform an, die zur Berechnung der Route und der Umwege verwendet wird. Die Standardeinstellung ist DRIVE. WALK und BICYCLE werden nur mit route_endpoints unterstützt. TRANSIT wird nicht unterstützt.

Union-Feld route_spec. Routenspezifikation: entweder eine vorhandene Route, ein Routentoken oder Start- und Zielendpunkte. Für route_spec ist nur einer der folgenden Werte zulässig:
encodedPolyline

string

Ein codierter Polylinien-String, der die Route darstellt. Weitere Informationen finden Sie unter https://developers.google.com/maps/documentation/utilities/polylinealgorithm.

retrievalToken

string

Ein Abruftoken, das von einem vorherigen ComputeRoutes-Aufruf zurückgegeben wurde und die Route darstellt.

routeEndpoints

object (RouteEndpoints)

Explizite Routenendpunkte (Start und Ziel)

RouteEndpoints

JSON-Darstellung
{
  "origin": {
    object (Waypoint)
  },
  "destination": {
    object (Waypoint)
  }
}
Felder
origin

object (Waypoint)

Erforderlich. Startpunkt (Adresse, Orts-ID oder geografische Koordinaten).

destination

object (Waypoint)

Erforderlich. Zielpunkt (Adresse, Orts-ID oder geografische Koordinaten).

Zwischenstopp

JSON-Darstellung
{

  // 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.
}
Felder
Union-Feld location_type. Verschiedene Möglichkeiten, einen Ort darzustellen. Für location_type ist nur einer der folgenden Werte zulässig:
latLng

object (LatLng)

Ein Punkt, der mit geografischen Koordinaten angegeben wird.

placeId

string

Die Orts-ID, die dem Wegpunkt zugeordnet ist.

address

string

Menschenlesbare Adresse oder Plus Code. Weitere Informationen finden Sie unter https://plus.codes.

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.

RoutingPreference

Eine Reihe von Werten, die Faktoren angeben, die bei der Berechnung der Route berücksichtigt werden sollen.

Enums
ROUTING_PREFERENCE_UNSPECIFIED Keine Routing-Einstellung angegeben. Die Standardeinstellung ist ROUTING_PREFERENCE_TRAFFIC_UNAWARE.
ROUTING_PREFERENCE_TRAFFIC_UNAWARE Berechnet Routen, ohne die aktuelle Verkehrslage zu berücksichtigen. Geeignet, wenn die Verkehrslage keine Rolle spielt oder nicht zutrifft. Die Verwendung dieses Werts führt zur niedrigsten Latenz.
ROUTING_PREFERENCE_TRAFFIC_AWARE_OPTIMAL

Berechnet Routen unter Berücksichtigung der aktuellen Verkehrslage, sofern Verkehrsdaten verfügbar sind. Für TRANSIT werden Echtzeitdaten zu öffentlichen Verkehrsmitteln wie Verspätungen und Ausfälle verwendet, sofern verfügbar.

Dieser Wert löst die Pro-Stufe aus und führt zu höheren Abrechnungskosten und einer höheren Latenz.

RouteTravelMode

Eine Reihe von Werten, mit denen die Mobilitätsform angegeben wird.

Enums
ROUTE_TRAVEL_MODE_UNSPECIFIED Keine Mobilitätsform angegeben. Die Standardeinstellung ist DRIVE.
DRIVE Fahrt mit dem Pkw
WALK Zu Fuß gehen. HINWEIS: WALK-Routen befinden sich in der Betaphase. Es kann vorkommen, dass Gehwege oder Fußgängerwege fehlen. Sie müssen diese Warnung für alle Fußgängerrouten anzeigen, die in Ihrer App angezeigt werden.
BICYCLE Fahrrad
TRANSIT Öffentliche Verkehrsmittel nutzen

Ausgabeschema

Antwortnachricht für SearchAlongRoute.

SearchAlongRouteResponse

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

object (Result)

Nur Ausgabe. Die sortierte Liste der Suchergebnisse entlang der Route.

summary

string

Nur Ausgabe. Zusammenfassung der Suchergebnisse und der Vor- und Nachteile von Umwegen in natürlicher Sprache. Kann nullbasierte Quellenangaben (z.B. „[0]“, „[1]“) enthalten, die auf die entsprechenden Einträge in der Liste results verweisen.

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.

Ergebnis

JSON-Darstellung
{
  "place": {
    object (PlaceView)
  },
  "detourSummary": {
    object (DetourSummary)
  }
}
Felder
place

object (PlaceView)

Nur Ausgabe. Details zum Ort, der entlang der Route gefunden wurde.

detourSummary

object (DetourSummary)

Nur Ausgabe. Umwegmesswerte, die durch das Hinzufügen dieses Ortes als Zwischenstopp entlang der Route entstehen. Wird weggelassen oder ist leer, wenn die Umwegmesswerte nicht berechnet werden konnten.

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.

DetourSummary

JSON-Darstellung
{
  "detourDuration": string,
  "localizedDetourDistance": string
}
Felder
detourDuration

string (Duration format)

Die zusätzliche Fahrtzeit, die für den Umweg von der Hauptroute zu diesem Ort erforderlich ist. Dieser Wert wird nicht festgelegt, wenn die Route durch encoded_polyline angegeben wird.

Die Dauer in Sekunden mit bis zu neun Nachkommastellen und am Ende mit „s“. Beispiel: "3.5s".

localizedDetourDistance

string

Die zusätzliche Entfernung, die für einen Umweg von der Hauptroute zu diesem Ort erforderlich ist, formatiert für die Anzeige in der Sprache der Anfrage (z. B. „1,2 Meilen“ oder „1,9 km“).

Dauer

JSON-Darstellung
{
  "seconds": string,
  "nanos": integer
}
Felder
seconds

string (int64 format)

Vorzeichenbehaftete Sekunden der Zeitspanne. Muss zwischen -315.576.000.000 und +315.576.000.000 (einschließlich) liegen. Hinweis: Diese Grenzen werden so berechnet: 60 Sek./Min. * 60 Min./Std. * 24 Std./Tag * 365,25 Tage/Jahr * 10.000 Jahre

nanos

integer

Vorzeichenbehaftete Sekundenbruchteile mit Nanosekundenauflösung der Zeitspanne. Dauern von weniger als einer Sekunde werden mit einem seconds-Feld mit dem Wert 0 und einem positiven oder negativen nanos-Feld dargestellt. Bei einer Dauer von einer Sekunde oder mehr muss ein Wert ungleich null für das Feld nanos dasselbe Vorzeichen wie das Feld seconds haben. Muss zwischen -999.999.999 und +999.999.999 liegen.

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 jedoch 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 frei verfügbar, ein Tool für gemerkte Informationen jedoch nicht.

Destructive Hint: ❌ | Idempotent Hint: ❌ | Read Only Hint: ✅ | Open World Hint: ❌