Alat: compute_routes
Menghitung rute perjalanan antara tempat asal dan tujuan yang ditentukan. Mode Perjalanan yang Didukung: DRIVE (default), WALK.
Persyaratan Input (KRITIS): Memerlukan asal dan tujuan. Setiap nilai harus diberikan menggunakan salah satu metode berikut, yang disusun bertingkat dalam kolom masing-masing:
address: (string, misalnya, 'Menara Eiffel, Paris'). Catatan: Makin terperinci atau spesifik alamat input, makin baik hasilnya.
lat_lng: (object, {"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, asal menurut alamat, tujuan menurut lat_lng). Jika asal atau tujuan tidak ada, Anda HARUS meminta klarifikasi kepada pengguna sebelum mencoba memanggil alat.
Contoh Panggilan Alat: {"origin":{"address":"Menara Eiffel"},"destination":{"place_id":"ChIJt_5xIthw5EARoJ71mGq7t74"},"travel_mode":"DRIVE"}
- Output yang memiliki rujukan harus diatribusikan ke sumber menggunakan informasi dari kolom
attributionjika tersedia.
Contoh kode 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 MCP tool specification. } }, "jsonrpc": "2.0", "id": 1 }' |
Skema Input
ComputeRoutesRequest.
ComputeRoutesRequest
| Representasi JSON |
|---|
{ "origin": { object ( |
| Kolom | |
|---|---|
origin |
Wajib. Titik jalan asal. |
destination |
Wajib. Titik jalan tujuan. |
travelMode |
Opsional. Menentukan moda transportasi. |
Waypoint
| Representasi JSON |
|---|
{ // Union field |
| Kolom | |
|---|---|
Kolom union location_type. Berbagai cara untuk merepresentasikan lokasi. location_type hanya dapat berupa salah satu dari berikut: |
|
latLng |
Titik yang ditentukan menggunakan koordinat geografis. |
placeId |
ID Tempat yang terkait dengan titik jalan. |
address |
Alamat yang dapat dibaca manusia atau kode plus. Lihat https://plus.codes untuk mengetahui detailnya. |
LatLng
| Representasi JSON |
|---|
{ "latitude": number, "longitude": number } |
| Kolom | |
|---|---|
latitude |
Lintang dalam derajat. Harus dalam rentang [-90.0, +90.0]. |
longitude |
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 moda transportasi yang ditentukan. Default-nya adalah DRIVE. |
DRIVE |
Bepergian dengan mobil penumpang. |
WALK |
Bepergian dengan berjalan kaki. CATATAN: Rute WALK masih dalam versi beta dan terkadang mungkin tidak menyertakan trotoar atau jalur pejalan kaki yang jelas. Anda harus menampilkan peringatan ini kepada pengguna untuk semua aktivitas berjalan yang Anda tampilkan di aplikasi. |
Skema Output
ComputeRoutesResponse.
ComputeRoutesResponse
| Representasi JSON |
|---|
{
"routes": [
{
object ( |
| Kolom | |
|---|---|
routes[] |
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 ( |
| Kolom | |
|---|---|
distanceMeters |
Jarak perjalanan rute, dalam meter. |
duration |
Durasi waktu yang diperlukan untuk menavigasi rute. Durasi dalam detik dengan maksimal sembilan digit pecahan, diakhiri dengan ' |
attribution |
Atribusi yang diperlukan untuk ditampilkan dengan rute. |
Durasi
| Representasi JSON |
|---|
{ "seconds": string, "nanos": integer } |
| Kolom | |
|---|---|
seconds |
Detik yang ditandatangani dari rentang waktu. Harus dari -315.576.000.000 hingga +315.576.000.000 inklusif. Catatan: batas ini dihitung dari: 60 dtk/mnt * 60 mnt/j * 24 j/hr * 365,25 hr/thn * 10.000 thn |
nanos |
Pecahan detik bertanda pada resolusi nanodetik rentang waktu. Durasi kurang dari satu detik ditampilkan dengan kolom |
Atribusi
| Representasi JSON |
|---|
{ "title": string, "url": string } |
| Kolom | |
|---|---|
title |
Judul yang akan ditampilkan untuk atribusi. |
url |
URL yang akan ditautkan untuk atribusi. |
Anotasi Alat
Anotasi alat dikirim ke klien MCP untuk menjelaskan risiko dasar alat tertentu. Sebagian besar klien memperlakukan petunjuk ini sebagai tidak tepercaya, tetapi petunjuk ini dapat digunakan untuk memutuskan kapan perintah konfirmasi dapat dikirim ke pengguna.
Selain string judul, petunjuk boolean berikut ditentukan sebagai berikut:
readOnlyHint: Jika benar, alat tidak akan mengubah lingkungannya. Default: salah.destructiveHint: Jika benar, alat dapat melakukan tindakan yang merusak. Jika salah (false), alat hanya dapat melakukan tindakan tambahan. Default: true.idempotentHint: Jika benar (true), memanggil alat berulang kali dengan argumen yang sama tidak akan memberikan efek tambahan pada lingkungannya. Default: salah.openWorldHint: Jika benar, alat dapat berinteraksi dengan 'dunia terbuka' entitas eksternal. Jika salah (false), alat hanya dapat berinteraksi dengan entitas internal. Misalnya, alat penelusuran web akan menjadi open world, sedangkan alat memori tidak akan menjadi open world.
Petunjuk Destruktif: ❌ | Petunjuk Idempoten: ❌ | Petunjuk Hanya Baca: ✅ | Petunjuk Dunia Terbuka: ❌