MCP Reference: mapstools.googleapis.com

Сервер протокола контекста модели (MCP) выступает в качестве прокси-сервера между внешним сервисом, предоставляющим контекст, данные или возможности для приложения, использующего большие языковые модели (LLM) или искусственного интеллекта. Серверы MCP соединяют приложения ИИ с внешними системами, такими как базы данных и веб-сервисы, преобразуя их ответы в формат, понятный приложению ИИ.

Настройка сервера

Перед использованием необходимо включить серверы MCP и настроить аутентификацию . Дополнительную информацию об использовании удаленных серверов MCP Google и Google Cloud см. в разделе «Обзор серверов MCP Google Cloud» .

Это MCP-сервер, предоставляемый API Maps Grounding Lite. Сервер предоставляет разработчикам инструменты для создания LLM-приложений на основе платформы Google Maps.

Серверные конечные точки

Конечная точка сервиса MCP — это сетевой адрес и интерфейс связи (обычно URL) сервера MCP, который приложение ИИ (хост для клиента MCP) использует для установления безопасного стандартизированного соединения. Это точка контакта для LLM, позволяющая запросить контекст, вызвать инструмент или получить доступ к ресурсу. Конечные точки Google MCP могут быть глобальными или региональными.

Сервер MCP mapstools.googleapis.com имеет следующую конечную точку MCP:

  • https://mapstools.googleapis.com/mcp

Инструменты MCP

Инструмент MCP — это функция или исполняемый файл, который сервер MCP предоставляет приложению LLM или AI для выполнения действий в реальном мире.

Сервер mapstools.googleapis.com MCP содержит следующие инструменты:

Инструменты MCP
поиск_мест

Используйте этот инструмент, когда пользователь запрашивает информацию о местах, компаниях, адресах, локациях, достопримечательностях или выполняет любой другой поиск, связанный с Google Maps.

Требования к входным данным (КРИТИЧЕСКИ ВАЖНЫ):

  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 (object - OPTIONAL): Используйте это для определения приоритета результатов, полученных вблизи определенной географической области.

    • Формат: {"location_bias": {"circle": {"center": {"latitude": [value], "longitude": [value]}, "radius_meters": [value (optional)]}}}
    • Применение:
      • Для смещения в радиус 5 км: {"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 (строка - НЕОБЯЗАТЕЛЬНО): Код региона Unicode CLDR пользователя. Этот параметр используется для отображения сведений о месте, таких как название места в конкретном регионе, если таковое имеется. Параметр может влиять на результаты в зависимости от применимого законодательства.

    • Формат: двухбуквенный код страны (ISO 3166-1 alpha-2), например, US , CA

Инструкции по вызову специалиста:

  • Информация о местоположении (КРИТИЧЕСКИ ВАЖНО): Поиск должен содержать достаточно информации о местоположении. Если местоположение неоднозначно (например, просто «пиццерии»), необходимо указать его в text_query (например, «пиццерии в Нью-Йорке») или использовать параметр location_bias . При необходимости для уточнения следует указать название города, штата/провинции и региона/страны.

  • Всегда указывайте максимально конкретный и контекстно насыщенный text_query .

  • Используйте location_bias только в том случае, если координаты указаны явно или если определение местоположения на основе известного пользователю контекста является целесообразным и необходимым для получения лучших результатов.

lookup_weather

Получает исчерпывающие данные о погоде, включая текущие условия, почасовые и суточные прогнозы.

Доступны следующие данные: температура (текущая, ощущаемая, максимальная/минимальная, индекс жары), ветер (скорость, порывы, направление), небесные явления (восход/заход солнца, фаза луны), осадки (тип, вероятность, количество/QPF), атмосферные условия (УФ-индекс, влажность, облачность, вероятность грозы) и адрес с геолокацией.

Местоположение и правила определения местоположения (КРИТИЧЕСКИ ВАЖНО):

Местоположение, для которого запрашиваются данные о погоде, указывается с помощью поля «местоположение». Это поле имеет структуру «один из», то есть для обеспечения точного поиска данных о погоде НЕОБХОДИМО указать значение ТОЛЬКО для ОДНОГО из трех подполей местоположения, указанных ниже.

  1. Географические координаты (широта_долгота)

    • Используйте этот метод, если вам предоставлены точные координаты широты и долготы.
    • Пример: "lat_lng": { "latitude": 34.0522, "longitude": -118.2437 } // Los Angeles
  2. Идентификатор места (place_id)

    • Однозначный строковый идентификатор (идентификатор места в Google Maps).
    • Идентификатор места (place_id) можно получить с помощью инструмента search_places.
    • Пример: "place_id": "ChIJLU7jZClu5kcR4PcOOO6p3I0" // Eiffel Tower
  3. Адресная строка (адрес)

    • Строка произвольной формы, требующая конкретизации для геокодирования.
    • Город и регион: Всегда указывайте регион/страну (например, "Лондон, Великобритания", а не "Лондон").
    • Адрес: Укажите полный адрес (например, "1600 Pennsylvania Ave NW, Washington, DC").
    • Почтовые индексы: ОБЯЗАТЕЛЬНО должны сопровождаться названием страны (например, "90210, США", а НЕ "90210").

Режимы использования:

  1. Текущая погода: Укажите только location . Не указывайте date и hour .

  2. Почасовой прогноз: укажите location , date и hour (0-23). ​​Используйте для конкретных временных промежутков (например, «в 17:00») или для терминов типа «в ближайшие несколько часов» или «позже сегодня». Если пользователь указывает минуты, округлите до ближайшего часа в меньшую сторону. Почасовой прогноз на период более 120 часов вперед не поддерживается. Исторические почасовые прогнозы погоды поддерживаются на период до 24 часов назад.

  3. Ежедневный прогноз: укажите location и date . Не указывайте hour . Используйте для общих запросов на день (например, «погода на завтра», «погода в пятницу», «погода 25 декабря»). Если сегодняшняя дата отсутствует в контексте, следует уточнить это у пользователя. Ежедневный прогноз на период более 10 дней, включая сегодняшний день, не поддерживается. Исторические данные о погоде не поддерживаются.

Ограничения параметров:

  • Часовые пояса: Все введенные date и hour должны быть относительными к местному часовому поясу местоположения , а не к часовому поясу пользователя.
  • Формат даты: Входные данные должны быть разделены на целые числа в формате {year, month, day} .
  • Единицы измерения: по умолчанию — METRIC . Установите units_system в значение IMPERIAL для градусов Фаренгейта/миль, если пользователь подразумевает стандарты США или явно запрашивает их.
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"}

Получить технические характеристики инструмента 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
}'