MCP Tools Reference: mapstools.googleapis.com

도구: compute_routes

지정된 출발지와 목적지 간의 이동 경로를 계산합니다. 지원되는 이동 수단: 자동차 (기본값), 도보

입력 요구사항 (중요): 출발지와 도착지가 모두 필요합니다. 각각은 다음 방법 중 하나를 사용하여 해당 필드 내에 중첩되어 제공되어야 합니다.

  • address: (문자열, 예: '에펠탑, 파리') 참고: 입력 주소가 세부적이거나 구체적일수록 더 나은 결과를 얻을 수 있습니다.

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

  • place_id: (문자열, 예: 'ChIJOwE_Id1w5EAR4Q27FkL6T_0') 참고: 이 ID는 search_places 도구에서 가져올 수 있습니다. 입력 유형의 조합은 허용됩니다 (예: 주소별 출발지, lat_lng별 도착지). 출발지 또는 목적지가 누락된 경우 도구를 호출하기 전에 사용자에게 명확한 정보를 요청해야 합니다(MUST).

도구 호출 예: {"origin":{"address":"Eiffel Tower"},"destination":{"place_id":"ChIJt_5xIthw5EARoJ71mGq7t74"},"travel_mode":"DRIVE"}

  • 그라운딩된 출력은 가능한 경우 attribution 필드의 정보를 사용하여 소스를 표시해야 합니다.

다음 코드 샘플은 curl를 사용하여 compute_routes MCP 도구를 호출하는 방법을 보여줍니다.

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

입력 스키마

ComputeRoutesRequest입니다.

ComputeRoutesRequest

JSON 표현
{
  "origin": {
    object (Waypoint)
  },
  "destination": {
    object (Waypoint)
  },
  "travelMode": enum (RouteTravelMode)
}
필드
origin

object (Waypoint)

필수 항목입니다. 출발지 경유지입니다.

destination

object (Waypoint)

필수 항목입니다. 대상 경유지입니다.

travelMode

enum (RouteTravelMode)

선택사항입니다. 이동 수단을 지정합니다.

경유지

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.
}
필드
통합 필드 location_type. 위치를 나타내는 다양한 방법 location_type은 다음 중 하나여야 합니다.
latLng

object (LatLng)

지리 좌표를 사용하여 지정된 지점입니다.

placeId

string

경유지와 연결된 장소 ID입니다.

address

string

사람이 읽을 수 있는 주소 또는 Plus Code입니다. 자세한 내용은 https://plus.codes를 참고하세요.

LatLng

JSON 표현
{
  "latitude": number,
  "longitude": number
}
필드
latitude

number

위도입니다. 범위는 [-90.0, +90.0]입니다.

longitude

number

경도입니다. 범위는 [-180.0, +180.0]입니다.

RouteTravelMode

이동 모드를 지정하는 데 사용되는 값의 집합입니다.

열거형
ROUTE_TRAVEL_MODE_UNSPECIFIED 지정된 이동 수단이 없습니다. 기본값은 DRIVE입니다.
DRIVE 승용차로 이동합니다.
WALK 도보로 이동 참고: WALK 경로는 베타 버전이며 명확한 인도나 보행자 전용 도로가 누락될 수 있습니다. 앱에 표시되는 모든 걷기에 대해 사용자에게 이 경고를 표시해야 합니다.

출력 스키마

ComputeRoutesResponse입니다.

ComputeRoutesResponse

JSON 표현
{
  "routes": [
    {
      object (Route)
    }
  ]
}
필드
routes[]

object (Route)

요청된 출발지와 목적지 간의 경로를 포함합니다. 현재는 하나의 경로만 반환됩니다.

경로

JSON 표현
{
  "distanceMeters": integer,
  "duration": string,
  "attribution": {
    object (Attribution)
  }
}
필드
distanceMeters

integer

경로의 이동 거리(미터)입니다.

duration

string (Duration format)

경로를 탐색하는 데 필요한 시간입니다.

소수점 아래가 최대 9자리까지이고 's'로 끝나는 초 단위 기간입니다. 예를 들면 "3.5s"입니다.

attribution

object (Attribution)

경로와 함께 표시해야 하는 저작자 표시입니다.

기간

JSON 표현
{
  "seconds": string,
  "nanos": integer
}
필드
seconds

string (int64 format)

시간 범위의 서명된 초입니다. -315,576,000,000~+315,576,000,000(포함) 사이여야 합니다. 참고: 이 범위는 60초/분 * 60분/시간 * 24시간/일 * 365.25일/년 * 10,000년에서 계산됩니다.

nanos

integer

시간 범위의 나노초 해상도에서 초의 부호 있는 분수입니다. 1초 미만의 시간은 0 seconds 필드와 양수 또는 음수 nanos 필드로 표시됩니다. 1초 이상의 기간의 경우 nanos 필드의 0이 아닌 값은 seconds 필드와 부호가 같아야 합니다. -999,999,999~+999,999,999(끝값 포함) 사이여야 합니다.

기여 분석

JSON 표현
{
  "title": string,
  "url": string
}
필드
title

string

출처에 표시할 제목입니다.

url

string

출처 표시를 위해 연결할 URL입니다.

도구 주석

도구 주석은 MCP 클라이언트에 전송되어 특정 도구의 기본 위험을 설명합니다. 대부분의 클라이언트는 이러한 힌트를 신뢰할 수 없는 것으로 취급하지만, 확인 메시지를 사용자에게 전송할 시점을 결정하는 데 사용할 수 있습니다.

제목 문자열과 함께 다음 불리언 힌트는 다음과 같이 정의됩니다.

  • readOnlyHint: true인 경우 도구가 환경을 수정하지 않습니다. 기본값: false.
  • destructiveHint: true인 경우 도구가 파괴적인 작업을 실행할 수 있습니다. false인 경우 도구는 추가 작업만 실행할 수 있습니다. 기본값은 true입니다.
  • idempotentHint: true인 경우 동일한 인수로 도구를 반복적으로 호출해도 환경에 추가적인 영향을 미치지 않습니다. 기본값: false.
  • openWorldHint: true인 경우 도구가 외부 엔티티의 '오픈 월드'와 상호작용할 수 있습니다. false인 경우 도구는 내부 항목과만 상호작용할 수 있습니다. 예를 들어 웹 검색 도구는 오픈 월드이지만 메모리 도구는 오픈 월드가 아닙니다.

파괴적 힌트: ❌ | 동일한 힌트: ❌ | 읽기 전용 힌트: ✅ | 오픈 월드 힌트: ❌