MCP Tools Reference: mapstools.googleapis.com

Narzędzie: compute_routes

Oblicza trasę podróży między określonym miejscem początkowym a docelowym. Obsługiwane środki transportu: DRIVE (domyślny), WALK.

Wymagania dotyczące danych wejściowych (KRYTYCZNE): wymaga zarówno origin, jak i destination. Każdy z nich musi być podany w jeden z tych sposobów w odpowiednim polu:

  • address: (ciąg znaków, np. „Wieża Eiffla, Paryż”). Uwaga: im bardziej szczegółowy lub konkretny jest adres wejściowy, tym lepsze będą wyniki.

  • lat_lng: (obiekt, {"latitude": liczba, "longitude": liczba})

  • place_id: (ciąg znaków, np. 'ChIJOwE_Id1w5EAR4Q27FkL6T_0') Uwaga: ten identyfikator można uzyskać za pomocą narzędzia search_places. Dozwolona jest dowolna kombinacja typów danych wejściowych (np. miejsce docelowe według adresu, miejsce docelowe według współrzędnych lat_lng). Jeśli brakuje źródła lub miejsca docelowego, musisz poprosić użytkownika o wyjaśnienie, zanim spróbujesz wywołać narzędzie.

Przykład wywołania narzędzia: {"origin":{"address":"Eiffel Tower"},"destination":{"place_id":"ChIJt_5xIthw5EARoJ71mGq7t74"},"travel_mode":"DRIVE"}

Poniższy przykład pokazuje, jak używać znaku curl do wywoływania narzędzia compute_routes MCP.

Żądanie 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": {
      // provide these details according to the tool's MCP specification
    }
  },
  "jsonrpc": "2.0",
  "id": 1
}'
                

Schemat danych wejściowych

ComputeRoutesRequest.

ComputeRoutesRequest

Zapis JSON
{
  "origin": {
    object (Waypoint)
  },
  "destination": {
    object (Waypoint)
  },
  "travelMode": enum (RouteTravelMode)
}
Pola
origin

object (Waypoint)

Wymagane. Punkt początkowy.

destination

object (Waypoint)

Wymagane. Punkt docelowy.

travelMode

enum (RouteTravelMode)

Opcjonalnie: Określa środek transportu.

Punkt pośredni

Zapis JSON
{

  // Union field location_type can be only one of the following:
  "latLng": {
    object (google.type.LatLng)
  },
  "placeId": string,
  "address": string
  // End of list of possible types for union field location_type.
}
Pola
Pole zbiorcze location_type. Różne sposoby przedstawiania lokalizacji. location_type może mieć tylko jedną z tych wartości:
latLng

object (google.type.LatLng)

Punkt określony za pomocą współrzędnych geograficznych.

placeId

string

Identyfikator miejsca powiązany z punktem pośrednim.

address

string

Adres w formie czytelnej dla człowieka lub kod Plus Code. Więcej informacji znajdziesz na https://plus.codes.

LatLng

Zapis JSON
{
  "latitude": number,
  "longitude": number
}
Pola
latitude

number

Szerokość geograficzna w stopniach. Musi mieścić się w zakresie od –90,0 do +90,0.

longitude

number

Długość geograficzna w stopniach. Musi mieścić się w zakresie [–180,0, +180,0].

Schemat wyjściowy

ComputeRoutesResponse.

ComputeRoutesResponse

Zapis JSON
{
  "routes": [
    {
      object (Route)
    }
  ]
}
Pola
routes[]

object (Route)

Zawiera trasy między miejscem początkowym a docelowym. Obecnie zwracana jest tylko 1 trasa.

Trasa

Zapis JSON
{
  "distanceMeters": integer,
  "duration": string
}
Pola
distanceMeters

integer

Odległość do pokonania na trasie w metrach.

duration

string (Duration format)

czas potrzebny na pokonanie trasy.

Czas trwania w sekundach z maksymalnie 9 miejscami po przecinku, zakończony znakiem „s”. Przykład: "3.5s".

Czas trwania

Zapis JSON
{
  "seconds": string,
  "nanos": integer
}
Pola
seconds

string (int64 format)

Podpisane sekundy przedziału czasu. Musi mieścić się w zakresie od -315 576 000 000 do +315 576 000 000 włącznie. Uwaga: te granice są obliczane na podstawie: 60 s/min * 60 min/godz. * 24 godz./dzień * 365,25 dni/rok * 10 000 lat.

nanos

integer

Ułamki sekundy ze znakiem w nanosekundowej rozdzielczości przedziału czasu. Czasy trwania krótsze niż sekunda są reprezentowane przez pole 0 seconds i pole nanos z wartością dodatnią lub ujemną. W przypadku czasów trwania wynoszących co najmniej 1 sekundę niezerowa wartość pola nanos musi mieć ten sam znak co pole seconds. Wartość musi mieścić się w zakresie od -999 999 999 do +999 999 999 włącznie.

Adnotacje narzędzi

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