MCP Reference: mapstools.googleapis.com

모델 컨텍스트 프로토콜 (MCP) 서버는 대규모 언어 모델 (LLM) 또는 AI 애플리케이션에 컨텍스트, 데이터 또는 기능을 제공하는 외부 서비스 간의 프록시 역할을 합니다. MCP 서버는 AI 애플리케이션을 데이터베이스 및 웹 서비스와 같은 외부 시스템에 연결하여 AI 애플리케이션이 이해할 수 있는 형식으로 응답을 변환합니다.

서버 설정

사용하기 전에 MCP 서버를 사용 설정하고 인증을 설정해야 합니다. Google 및 Google Cloud 원격 MCP 서버 사용에 대한 자세한 내용은 Google Cloud MCP 서버 개요를 참고하세요.

이는 Maps Grounding Lite API에서 제공하는 MCP 서버입니다. 서버는 개발자가 Google Maps Platform을 기반으로 LLM 애플리케이션을 빌드할 수 있는 도구를 제공합니다.

서버 엔드포인트

MCP 서비스 엔드포인트는 AI 애플리케이션 (MCP 클라이언트의 호스트)이 보안 표준 연결을 설정하는 데 사용하는 MCP 서버의 네트워크 주소 및 통신 인터페이스 (일반적으로 URL)입니다. LLM이 컨텍스트를 요청하거나, 도구를 호출하거나, 리소스에 액세스할 때 사용하는 연락처입니다. Google MCP 엔드포인트는 전역 또는 리전일 수 있습니다.

mapstools.googleapis.com MCP 서버에는 다음과 같은 MCP 엔드포인트가 있습니다.

MCP 도구

MCP 도구는 MCP 서버가 LLM 또는 AI 애플리케이션에 노출하여 실제 작업을 실행하는 함수 또는 실행 가능한 기능입니다.

mapstools.googleapis.com MCP 서버에는 다음과 같은 도구가 있습니다.

MCP 도구
search_places

사용자의 요청이 장소, 비즈니스, 주소, 위치, 관심분야 또는 기타 Google 지도 관련 검색인 경우 이 도구를 호출합니다.

입력 요구사항 (중요):

  1. text_query (문자열 - 필수): 기본 검색 쿼리입니다. 사용자가 무엇을 찾고 있는지 명확하게 정의해야 합니다.

    • 예: 'restaurants in New York', 'coffee shops near Golden Gate Park', 'SF MoMA', '1600 Amphitheatre Pkwy, Mountain View, CA, USA', 'pets friendly parks in Manhattan, New York', 'date night restaurants in Chicago', 'accessible public libraries in Los Angeles'
    • 특정 장소 세부정보: 요청된 속성 (예: 'Google Store Mountain View opening hours', 'SF MoMa phone number', 'Shoreline Park Mountain View address')을 포함합니다.
  2. location_bias (객체 - 선택사항): 특정 지리적 영역 근처의 결과를 우선순위로 지정하는 데 사용합니다.

    • 형식: {"location_bias": {"circle": {"center": {"latitude": [value], "longitude": [value]}, "radius_meters": [value (optional)]}}}
    • 사용:
      • 5km 반경으로 편향되도록 하려면 {"location_bias": {"circle": {"center": {"latitude": 34.052235, "longitude": -118.243683}, "radius_meters": 5000}}}
      • 중심점을 향해 강하게 편향되도록 하려면 {"location_bias": {"circle": {"center": {"latitude": 34.052235, "longitude": -118.243683}}}} (radius_meters 생략)
  3. language_code (문자열 - 선택사항): 검색 결과 요약을 표시할 언어입니다.

    • 형식: 두 글자로 된 언어 코드(ISO 639-1)와 선택적으로 뒤에 오는 밑줄 및 두 글자로 된 국가 코드(ISO 3166-1 alpha-2)(예: en, ja, en_US, zh_CN, es_MX) 언어 코드가 제공되지 않으면 결과가 영어로 표시됩니다.
  4. region_code (문자열 - 선택사항): 사용자의 유니코드 CLDR 지역 코드입니다. 이 매개변수는 사용 가능한 경우 지역별 장소 이름과 같은 장소 세부정보를 표시하는 데 사용됩니다. 이 매개변수는 관련 법규에 따라 결과에 영향을 줄 수 있습니다.

    • 형식: 두 자리 국가 코드(ISO 3166-1 alpha-2)(예: US, CA)

도구 호출 안내:

  • 위치 정보 (심각): 검색에 충분한 위치 정보가 포함되어야 합니다. 위치가 모호한 경우 (예: '피자 가게'만) text_query에 지정 (예: '뉴욕의 피자 가게')해야 합니다. 또는 location_bias 매개변수를 사용하세요. 명확성을 위해 필요한 경우 도시, 주/도, 지역/국가 이름을 포함합니다.

  • 항상 최대한 구체적이고 맥락이 풍부한 text_query을 제공하세요.

  • 좌표가 명시적으로 제공되거나 사용자의 알려진 컨텍스트에서 위치를 추론하는 것이 더 나은 결과를 위해 적절하고 필요한 경우에만 location_bias를 사용하세요.

lookup_weather

현재 날씨, 시간별, 일별 예보를 비롯한 포괄적인 날씨 데이터를 가져옵니다.

사용 가능한 특정 데이터: 온도 (현재, 체감, 최대/최소, 열 지수), 바람 (풍속, 돌풍, 방향), 천체 현상 (일출/일몰, 달의 위상), 강수 (유형, 확률, 양/QPF), 대기 조건 (자외선 지수, 습도, 운량, 뇌우 확률), 지오코딩된 위치 주소

위치 및 위치 규칙 (중요): 날씨 데이터를 요청하는 위치는 'location' 필드를 사용하여 지정됩니다. 이 필드는 'oneof' 구조입니다. 즉, 정확한 날씨 데이터 조회를 위해 아래의 세 가지 위치 하위 필드 중 하나에만 값을 제공해야 합니다(MUST).

  1. 지리 좌표 (lat_lng)

    • 정확한 위도/경도 좌표가 제공된 경우에 사용합니다.
    • 예: 'lat_lng': { 'latitude': 34.0522, 'longitude': -118.2437 } // Los Angeles
  2. 장소 ID (place_id)

    • 명확한 문자열 식별자 (Google 지도 장소 ID)입니다.
    • place_id는 search_places 도구에서 가져올 수 있습니다.
    • 예: 'place_id': 'ChIJLU7jZClu5kcR4PcOOO6p3I0' // 에펠탑
  3. 주소 문자열 (address)

    • 지오코딩에 구체성이 필요한 자유 형식 문자열입니다.
    • 도시 및 지역: 항상 지역/국가를 포함합니다 (예: '런던, 영국', '런던' 아님).
    • 상세 주소: 전체 주소를 입력합니다 (예: '1600 Pennsylvania Ave NW, Washington, DC').
    • 우편번호: 국가 이름과 함께 사용해야 합니다 (예: '90210, USA', '90210' 아님).

사용 모드: 1. 현재 날씨: address만 제공해 줘. datehour를 지정하지 마세요.

  1. 시간별 예보: address, date, hour (0~23)을 제공합니다. 특정 시간 (예: '오후 5시') 또는 '앞으로 몇 시간', '오늘 오후'과 같은 용어에 사용합니다. 사용자가 분을 지정하면 가장 가까운 시간으로 내림합니다. 현재로부터 48시간이 지난 시간의 시간별 예보는 지원되지 않습니다.

  2. 일기예보: addressdate을 제공합니다. hour를 지정하지 마세요. 일반적인 날짜 요청 (예: '내일 날씨', '금요일 날씨', '12월 25일 날씨')에 사용합니다. 오늘 날짜가 맥락에 없는 경우 사용자에게 명확히 해야 합니다. 오늘을 포함하여 7일을 초과하는 일일 예측은 지원되지 않습니다. 이전 날씨는 지원되지 않습니다.

매개변수 제약 조건: * 시간대: 모든 datehour 입력은 사용자의 시간대가 아닌 위치의 현지 시간대를 기준으로 해야 합니다.

  • 날짜 형식: 입력은 {year, month, day} 정수로 구분해야 합니다.

  • 단위: 기본값은 METRIC입니다. 사용자가 미국 표준을 암시하거나 명시적으로 요청하는 경우 화씨/마일의 units_systemIMPERIAL로 설정합니다.

compute_routes

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

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

  • 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"}

MCP 도구 사양 가져오기

MCP 서버의 모든 도구에 대한 MCP 도구 사양을 가져오려면 tools/list 메서드를 사용하세요. 다음 예시에서는 curl을 사용하여 MCP 서버 내에서 현재 사용할 수 있는 모든 도구와 사양을 나열하는 방법을 보여줍니다.

curl 요청
                      curl --location 'https://mapstools.googleapis.com/mcp' \
--header 'content-type: application/json' \
--header 'accept: application/json, text/event-stream' \
--data '{
    "method": "tools/list",
    "jsonrpc": "2.0",
    "id": 1
}'