도구: search_along_route
사용자가 이동 경로를 따라 장소, 비즈니스 또는 관심 장소를 찾으려고 할 때 이 도구를 호출합니다(예: '타호로 가는 길에 있는 주유소', '샌프란시스코와 산호세 사이의 커피숍'). 이 도구를 호출하면 search_places보다 비용이 더 많이 들므로 경로가 아닌 단일 위치 근처를 검색할 때는 search_places를 대신 사용하세요.
입력 요구사항(중요):
text_query(문자열 - 필수): 경로를 따라 검색할 항목에 대한 자연어 설명입니다.- 예시:
'ev chargers','coffee','vegetarian restaurants','rest stops'.
- 예시:
경로 사양(필수 - 다음 중 하나만 제공):
retrieval_token(문자열):DRIVE경로에 대한 이전compute_routes호출에서 반환된retrieval_token입니다. 경로가 이미 계산된 경우 이 방법을 사용하는 것이 좋습니다. 토큰은 10분 동안 유효합니다.route_endpoints(객체): 경로의origin및destination입니다. 각각은address,lat_lng또는place_id중 하나를 사용하여 제공해야 합니다.- 예:
{"route_endpoints": {"origin": {"address": "San Francisco, CA"}, "destination": {"address": "Lake Tahoe, CA"}}}
- 예:
encoded_polyline(문자열):DRIVE경로를 나타내는 인코딩된 다중선입니다.
travel_mode(enum - 선택사항):DRIVE(기본값),WALK또는BICYCLEWALK및BICYCLE는route_endpoints에서만 지원됩니다.TRANSIT는 지원되지 않습니다.routing_preference(enum - 선택사항):ROUTING_PREFERENCE_TRAFFIC_UNAWARE(기본값): 실시간 교통정보 없이 경로와 우회 경로를 계산합니다. 가장 짧은 지연 시간ROUTING_PREFERENCE_TRAFFIC_AWARE_OPTIMAL: 가능한 경우 실시간 교통 상황을 사용합니다.WALK또는BICYCLE에는 지원되지 않습니다. 사용자가 교통정보, 혼잡도 또는 교통 상황에 따른 우회 시간에 대해 문의하는 경우에만 이 값을 설정합니다. 지연 시간이 길어집니다.
include_extended_details(불리언 - 선택사항): 요청에 정성적 리뷰 인사이트, 특정 메뉴 항목 또는 제공 서비스, 분위기, 방문자 팁 또는 혼잡도, EV 충전기 사용 가능 여부, 휘발유 가격 또는 기타 풍부한 정성적 세부정보가 필요한 경우에만true로 설정합니다. 기본값은false입니다. 사용 설정하면 지연 시간이 늘어날 수 있습니다.language_code(문자열 - 선택사항): 결과 요약 및 장소 세부정보의 언어입니다(예:en,ja,en-US). 기본값은en-US입니다.region_code(문자열 - 선택사항): 사용자의 유니코드 CLDR 지역 코드입니다(예:US,CA).
도구 호출 안내:
- 각 결과에는 해당 장소에 정차하여 발생하는 추가 거리(
localized_detour_distance)를 설명하는detour_summary(사용 가능한 경우)가 포함되며, 경로가encoded_polyline로 지정되지 않은 경우 추가 시간(detour_duration)이 포함됩니다. 이를 사용하여 옵션을 비교합니다. - 응답
summary에는results의 항목을 참조하는 0 기반 인용(예: '[0]')이 포함될 수 있습니다. - 그라운딩된 출력은 가능한 경우 각
results[].place의attribution필드를 사용하여 소스에 기여해야 합니다.
다음 코드 샘플은 curl를 사용하여 search_along_route 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": "search_along_route", "arguments": { // Provide these details according to the MCP tool specification. } }, "jsonrpc": "2.0", "id": 1 }' |
입력 스키마
SearchAlongRoute의 요청 메시지입니다.
SearchAlongRouteRequest
| JSON 표현 |
|---|
{ "textQuery": string, "languageCode": string, "regionCode": string, "routingPreference": enum ( |
| 필드 | |
|---|---|
textQuery |
필수 항목입니다. 자연어 검색어(예: 'EV 충전기', '커피')입니다. |
languageCode |
선택사항입니다. 요약 및 장소 세부정보의 언어입니다. 기본값은 'en-US'입니다. |
regionCode |
선택사항입니다. 위치의 국가/지역 코드(CLDR)입니다(예: 'US'). |
routingPreference |
선택사항입니다. 교통정보 데이터가 사용되는 방식을 지정하는 선택적 경로 환경설정입니다. 기본값은 TRAFFIC_UNAWARE입니다. |
includeExtendedDetails |
선택사항입니다. 응답에 확장된 장소 세부정보를 포함합니다. 사용자 요청에 풍부한 정성적 인사이트, 실시간 역학 또는 전문 항목 속성이 필요한 경우 이 필드를 표준 탐색 검색(예: 요리, 매장 유형), 위치/주소 조회, 연락처 정보, 영업시간, 표준 메타데이터/편의시설의 경우 이 필드를 사용 설정하면 지연 시간이 길어질 수 있습니다. |
travelMode |
선택사항입니다. 경로 및 우회 경로를 계산하는 데 사용되는 이동 수단을 지정합니다. 기본값은 |
통합 필드 route_spec. 경로 사양: 기존 경로, 경로 토큰 또는 출발지/목적지 엔드포인트입니다. route_spec은 다음 중 하나여야 합니다. |
|
encodedPolyline |
경로를 나타내는 인코딩된 다중선 문자열입니다. https://developers.google.com/maps/documentation/utilities/polylinealgorithm을 참고하세요. |
retrievalToken |
경로를 나타내는 이전 ComputeRoutes 호출에서 반환된 검색 토큰입니다. |
routeEndpoints |
명시적 경로 엔드포인트(출발지 및 목적지) |
RouteEndpoints
| JSON 표현 |
|---|
{ "origin": { object ( |
| 필드 | |
|---|---|
origin |
필수 항목입니다. 출발지(주소, 장소 ID 또는 지리적 좌표)입니다. |
destination |
필수 항목입니다. 도착 지점(주소, 장소 ID 또는 지리적 좌표)입니다. |
경유지
| JSON 표현 |
|---|
{ // Union field |
| 필드 | |
|---|---|
통합 필드 location_type. 위치를 나타내는 다양한 방법 location_type은 다음 중 하나여야 합니다. |
|
latLng |
지리적 좌표를 사용하여 지정된 지점입니다. |
placeId |
경유지와 연결된 장소 ID입니다. |
address |
사람이 읽을 수 있는 주소 또는 Plus Code입니다. 자세한 내용은 https://plus.codes를 참고하세요. |
LatLng
| JSON 표현 |
|---|
{ "latitude": number, "longitude": number } |
| 필드 | |
|---|---|
latitude |
위도입니다. 범위는 [-90.0, +90.0]입니다. |
longitude |
경도입니다. 범위는 [-180.0, +180.0]입니다. |
RoutingPreference
경로를 계산할 때 고려해야 할 요소를 지정하는 값 집합입니다.
| 열거형 | |
|---|---|
ROUTING_PREFERENCE_UNSPECIFIED |
라우팅 환경설정이 지정되지 않았습니다. 기본값은 ROUTING_PREFERENCE_TRAFFIC_UNAWARE입니다. |
ROUTING_PREFERENCE_TRAFFIC_UNAWARE |
실시간 교통 상황을 고려하지 않고 경로를 계산합니다. 교통 상황이 중요하지 않거나 적용되지 않는 경우에 적합합니다. 이 값을 사용하면 지연 시간이 가장 짧습니다. |
ROUTING_PREFERENCE_TRAFFIC_AWARE_OPTIMAL |
교통정보 데이터를 사용할 수 있는 경우 실시간 교통 상황을 고려하여 경로를 계산합니다. 이 값은 Pro 등급을 트리거하고 더 높은 청구 비용과 지연 시간을 발생시킵니다. |
RouteTravelMode
이동 수단을 지정하는 데 사용되는 값 집합입니다.
| 열거형 | |
|---|---|
ROUTE_TRAVEL_MODE_UNSPECIFIED |
지정된 이동 수단이 없습니다. 기본값은 DRIVE입니다. |
DRIVE |
승용차로 이동합니다. |
WALK |
도보로 이동합니다. 참고: WALK 경로는 베타 버전이며 명확한 보도 또는 보행자 전용 도로가 누락될 수 있습니다. 앱에 표시하는 모든 도보 경로에 대해 이 경고를 사용자에게 표시해야 합니다. |
BICYCLE |
자전거로 이동합니다. |
TRANSIT |
대중교통으로 이동합니다. |
출력 스키마
SearchAlongRoute의 응답 메시지입니다.
SearchAlongRouteResponse
| JSON 표현 |
|---|
{
"results": [
{
object ( |
| 필드 | |
|---|---|
results[] |
출력 전용입니다. 경로를 따라 발견된 검색 결과의 순위 목록입니다. |
summary |
출력 전용입니다. 검색 결과 및 우회로 장단점을 자연어로 요약합니다. |
contentToken |
출력 전용입니다. 검색 컨텍스트를 캡슐화하는 암호화된 토큰으로, Google 지도 시각적 렌더링 서비스, SDK 또는 지도 에이전트 UI 툴킷(A2UI)에 전달하여 반환된 검색 결과에 대한 대화형 UI 구성요소를 표시할 수 있습니다. |
결과
| JSON 표현 |
|---|
{ "place": { object ( |
| 필드 | |
|---|---|
place |
출력 전용입니다. 경로를 따라 발견된 장소에 대한 세부정보입니다. |
detourSummary |
출력 전용입니다. 이 장소를 경로의 중간 경유지로 추가하여 발생한 우회 측정항목입니다. 우회 측정항목을 계산할 수 없는 경우 생략되거나 비어 있습니다. |
PlaceView
| JSON 표현 |
|---|
{ "place": string, "id": string, "googleMapsLinks": { object ( |
| 필드 | |
|---|---|
place |
기본 장소의 리소스 이름이며 'places/{id}' 형식입니다. |
id |
기본 장소의 장소 ID입니다. |
googleMapsLinks |
다양한 Google 지도 작업을 트리거하는 링크 |
attribution |
장소와 함께 표시할 필수 저작자 표시입니다. |
통합 필드
|
|
location |
이 장소의 위치입니다. |
LatLng
| JSON 표현 |
|---|
{ "latitude": number, "longitude": number } |
| 필드 | |
|---|---|
latitude |
위도입니다. 범위는 [-90.0, +90.0]입니다. |
longitude |
경도입니다. 범위는 [-180.0, +180.0]입니다. |
GoogleMapsLinks
| JSON 표현 |
|---|
{ "directionsUrl": string, "placeUrl": string, "writeAReviewUrl": string, "reviewsUrl": string, "photosUrl": string } |
| 필드 | |
|---|---|
directionsUrl |
장소로 가는 경로를 표시하는 링크입니다. 링크는 도착 위치만 채우고 기본 이동 수단 |
placeUrl |
이 장소를 표시하는 링크입니다. |
writeAReviewUrl |
Google 지도에서 이 장소에 대한 리뷰를 작성할 수 있는 링크입니다. |
reviewsUrl |
Google 지도에서 이 장소의 리뷰를 표시하는 링크입니다. |
photosUrl |
Google 지도에서 이 장소의 사진을 표시하는 링크입니다. |
기여 분석
| JSON 표현 |
|---|
{ "title": string, "url": string } |
| 필드 | |
|---|---|
title |
저작자 표시에 표시할 제목입니다. |
url |
저작자 표시를 위해 연결할 URL입니다. |
DetourSummary
| JSON 표현 |
|---|
{ "detourDuration": string, "localizedDetourDistance": string } |
| 필드 | |
|---|---|
detourDuration |
기본 경로에서 이 장소로 우회하는 데 필요한 추가 이동 시간입니다. 경로가 소수점 아래가 최대 9자리까지이고 ' |
localizedDetourDistance |
기본 경로에서 이 장소로 우회하는 데 필요한 추가 거리로, 요청 언어로 표시되도록 형식이 지정됩니다(예: '1.2마일' 또는 '1.9km'). |
기간
| JSON 표현 |
|---|
{ "seconds": string, "nanos": integer } |
| 필드 | |
|---|---|
seconds |
기간의 부호 있는 초입니다. -315,576,000,000~+315,576,000,000(포함) 사이여야 합니다. 참고: 이 경계는 60초/분 * 60분/시간 * 24시간/일 * 365.25일/년 * 10,000년으로 계산됩니다. |
nanos |
기간의 나노초 단위로 부호가 있는 초수입니다. 1초 미만의 기간은 0 |
도구 주석
도구 주석은 특정 도구의 기본 위험을 설명하기 위해 MCP 클라이언트에 전송됩니다. 대부분의 클라이언트는 이러한 힌트를 신뢰할 수 없는 것으로 취급하지만, 사용자에게 확인 메시지를 보낼 시점을 결정하는 데 사용할 수 있습니다.
제목 문자열과 함께 다음 불리언 힌트가 정의됩니다.
readOnlyHint: true인 경우 도구가 환경을 수정하지 않습니다. 기본값: false.destructiveHint: true이면 도구가 파괴적인 작업을 수행할 수 있습니다. false이면 도구는 추가 작업만 수행할 수 있습니다. 기본값은 true입니다.idempotentHint: true인 경우 동일한 인수로 도구를 반복적으로 호출해도 환경에 추가적인 영향을 미치지 않습니다. 기본값: false.openWorldHint: true인 경우 도구는 외부 항목의 '오픈 월드'와 상호작용할 수 있습니다. false이면 도구는 내부 항목과만 상호작용할 수 있습니다. 예를 들어 웹 검색 도구는 오픈 월드이지만 메모리 도구는 오픈 월드가 아닙니다.
Destructive Hint: ❌ | Idempotent Hint: ❌ | Read Only Hint: ✅ | Open World Hint: ❌