MCP Tools Reference: mapstools.googleapis.com

Alat: compute_routes

Menghitung rute perjalanan antara tempat asal dan tujuan yang ditentukan. Mode Perjalanan yang Didukung: DRIVE (default), WALK.

Persyaratan Input (PENTING): Memerlukan tempat asal dan tujuan. Setiap tempat asal dan tujuan harus diberikan menggunakan salah satu metode berikut, yang berada dalam kolomnya masing-masing:

  • address: (string, misalnya, 'Eiffel Tower, Paris'). Catatan: Makin detail atau spesifik alamat input, makin baik hasilnya.

  • lat_lng: (objek, {"latitude": number, "longitude": number})

  • place_id: (string, misalnya, 'ChIJOwE_Id1w5EAR4Q27FkL6T_0') Catatan: ID ini dapat diperoleh dari alat search_places. Kombinasi jenis input apa pun diizinkan (misalnya, tempat asal berdasarkan alamat, tujuan berdasarkan lat_lng). Jika tempat asal atau tujuan tidak ada, Anda HARUS meminta klarifikasi kepada pengguna sebelum mencoba memanggil alat.

Contoh Panggilan Alat: {"origin":{"address":"Eiffel Tower"},"destination":{"place_id":"ChIJt_5xIthw5EARoJ71mGq7t74"},"travel_mode":"DRIVE"}

  • Output yang didasarkan pada data harus dikaitkan dengan sumber menggunakan informasi dari kolom attribution jika tersedia.

Contoh berikut menunjukkan cara menggunakan curl untuk memanggil alat MCP compute_routes.

Permintaan 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
}'
                

Skema Input

ComputeRoutesRequest.

ComputeRoutesRequest

Representasi JSON
{
  "origin": {
    object (Waypoint)
  },
  "destination": {
    object (Waypoint)
  },
  "travelMode": enum (RouteTravelMode)
}
Kolom
origin

object (Waypoint)

Wajib. Waypoint tempat asal.

destination

object (Waypoint)

Wajib. Waypoint tujuan.

travelMode

enum (RouteTravelMode)

Opsional. Menentukan mode transportasi.

Waypoint

Representasi JSON
{

  // 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.
}
Kolom
Kolom union location_type. Berbagai cara untuk merepresentasikan lokasi. location_type hanya dapat berupa salah satu di antara berikut:
latLng

object (LatLng)

Titik yang ditentukan menggunakan koordinat geografis.

placeId

string

ID Tempat yang terkait dengan waypoint.

address

string

Alamat yang dapat dibaca manusia atau kode plus. Lihat https://plus.codes untuk mengetahui detailnya.

LatLng

Representasi JSON
{
  "latitude": number,
  "longitude": number
}
Kolom
latitude

number

Lintang dalam derajat. Harus dalam rentang [-90.0, +90.0].

longitude

number

Bujur dalam derajat. Harus dalam rentang [-180.0, +180.0].

RouteTravelMode

Kumpulan nilai yang digunakan untuk menentukan mode perjalanan.

Enum
ROUTE_TRAVEL_MODE_UNSPECIFIED Tidak ada mode perjalanan yang ditentukan. Default-nya adalah DRIVE.
DRIVE Perjalanan dengan mobil penumpang.
WALK Perjalanan dengan berjalan kaki. CATATAN: Rute WALK masih dalam versi beta dan terkadang tidak memiliki trotoar atau jalur pejalan kaki yang jelas. Anda harus menampilkan peringatan ini kepada pengguna untuk semua rute jalan kaki yang Anda tampilkan di aplikasi.

Skema Output

ComputeRoutesResponse.

ComputeRoutesResponse

Representasi JSON
{
  "routes": [
    {
      object (Route)
    }
  ]
}
Kolom
routes[]

object (Route)

Berisi rute antara tempat asal dan tujuan yang diminta. Saat ini, hanya satu rute yang ditampilkan.

Rute

Representasi JSON
{
  "distanceMeters": integer,
  "duration": string,
  "attribution": {
    object (Attribution)
  }
}
Kolom
distanceMeters

integer

Jarak perjalanan rute, dalam meter.

duration

string (Duration format)

Lamanya waktu yang diperlukan untuk menavigasi rute.

Durasi dalam detik dengan maksimal sembilan digit pecahan, yang diakhiri dengan 's'. Contoh: "3.5s".

attribution

object (Attribution)

Atribusi yang diperlukan untuk ditampilkan bersama rute.

Durasi

Representasi JSON
{
  "seconds": string,
  "nanos": integer
}
Kolom
seconds

string (int64 format)

Detik yang ditandatangani dari rentang waktu. Harus dari -315.576.000.000 hingga +315.576.000.000 inklusif. Catatan: batas ini dihitung dari: 60 detik/menit * 60 menit/jam * 24 jam/hari * 365,25 hari/tahun * 10.000 tahun

nanos

integer

Pecahan detik yang ditandatangani pada resolusi nanodetik dari rentang waktu. Durasi kurang dari satu detik direpresentasikan dengan kolom seconds 0 dan kolom nanos positif atau negatif. Untuk durasi satu detik atau lebih, nilai non-nol untuk kolom nanos harus memiliki tanda yang sama dengan kolom seconds. Harus dari -999.999.999 hingga +999.999.999 inklusif.

Atribusi

Representasi JSON
{
  "title": string,
  "url": string
}
Kolom
title

string

Judul yang akan ditampilkan untuk atribusi.

url

string

URL yang akan ditautkan untuk atribusi.

Anotasi Alat

Petunjuk Destruktif: ❌ | Petunjuk Idempoten: ❌ | Petunjuk Hanya Baca: ✅ | Petunjuk Dunia Terbuka: ❌