Инструмент: compute_routes
Вычисляет маршрут между указанными пунктами отправления и назначения. Поддерживаемые режимы передвижения: АВТОМОБИЛЬ (по умолчанию), ПЕШКОМ.
Требования к входным данным (КРИТИЧЕСКИ ВАЖНО): Необходимо указать как источник , так и получателя . Каждый из них должен быть предоставлен одним из следующих способов, вложенным в соответствующее поле:
Адрес: (строка, например, 'Эйфелева башня, Париж'). Примечание: чем точнее или детальнее входной адрес, тем лучше будут результаты.
lat_lng: (object, {"latitude": number, "longitude": number})
place_id: (строка, например, 'ChIJOwE_Id1w5EAR4Q27FkL6T_0') Примечание: Этот идентификатор можно получить с помощью инструмента search_places. Допускается любая комбинация типов ввода (например, пункт отправления по адресу, пункт назначения по широте и долготе). Если пункт отправления или назначения отсутствует, ОБЯЗАТЕЛЬНО запросите у пользователя уточнение, прежде чем пытаться вызвать инструмент.
Пример вызова инструмента: {"origin":{"address":"Eiffel Tower"},"destination":{"place_id":"ChIJt_5xIthw5EARoJ71mGq7t74"},"travel_mode":"DRIVE"}
В следующем примере показано, как использовать curl для вызова инструмента MCP compute_routes .
| Запрос 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 }' |
Схема ввода
ComputeRoutesRequest.
ComputeRoutesRequest
| JSON-представление |
|---|
{ "origin": { object ( |
| Поля | |
|---|---|
origin | Обязательно. Начальная точка маршрута. |
destination | Обязательно. Пункт назначения. |
travelMode | Необязательно. Указывает вид транспорта. |
Путевая точка
| JSON-представление |
|---|
{ // Union field |
| Поля | |
|---|---|
Поле объединения location_type . Различные способы представления местоположения. location_type может принимать только одно из следующих значений: | |
latLng | Точка, заданная с использованием географических координат. |
placeId | Идентификатор места, связанный с путевой точкой. |
address | Адрес в удобочитаемом виде или код «плюс». Подробности см. на сайте https://plus.codes . |
LatLng
| JSON-представление |
|---|
{ "latitude": number, "longitude": number } |
| Поля | |
|---|---|
latitude | Широта в градусах. Она должна находиться в диапазоне [-90,0, +90,0]. |
longitude | Долгота в градусах. Она должна находиться в диапазоне [-180,0, +180,0]. |
Схема вывода
ComputeRoutesResponse.
ComputeRoutesResponse
| JSON-представление |
|---|
{
"routes": [
{
object ( |
| Поля | |
|---|---|
routes[] | Содержит маршруты между запрошенным пунктом отправления и назначения. В настоящее время возвращается только один маршрут. |
Маршрут
| JSON-представление |
|---|
{ "distanceMeters": integer, "duration": string } |
| Поля | |
|---|---|
distanceMeters | Пройденное расстояние по маршруту в метрах. |
duration | Время, необходимое для прохождения маршрута. Длительность в секундах, содержащая до девяти знаков после запятой, заканчивающаяся на « |
Продолжительность
| JSON-представление |
|---|
{ "seconds": string, "nanos": integer } |
| Поля | |
|---|---|
seconds | Секунды, выраженные знаком, представляют собой промежуток времени. Должны находиться в диапазоне от -315 576 000 000 до +315 576 000 000 включительно. Примечание: эти границы вычисляются по формуле: 60 сек/мин * 60 мин/час * 24 часа/сутки * 365,25 дней/год * 10000 лет |
nanos | Доли секунды со знаком, отображаемые с наносекундным разрешением. Длительности менее одной секунды обозначаются полем 0 |
Аннотации инструментов
Подсказка о разрушительном эффекте: ❌ | Подсказка об идемпотентности: ❌ | Подсказка только для чтения: ✅ | Подсказка об открытом мире: ❌