MCP Reference: mapstools.googleapis.com

Model Context Protocol(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 エンドポイントをグローバルまたはリージョンにすることができます。

Maps Grounding Lite API MCP サーバーには、次の MCP エンドポイントがあります。

  • https://mapstools.googleapis.com/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)]}}}
    • 使用方法:
      • 半径 5 km にバイアスをかけるには: {"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(文字列 - 省略可): 検索結果の概要を表示する言語。

    • 形式: 2 文字の言語コード(ISO 639-1)。オプションで、アンダースコアと 2 文字の国コード(ISO 3166-1 alpha-2)が続きます(例: enjaen_USzh_CNes_MX)。言語コードが指定されていない場合、結果は英語で返されます。
  4. region_code(文字列 - 省略可): ユーザーの Unicode CLDR リージョン コード。このパラメータは、地域固有の場所の名前など、場所の詳細を表示するために使用されます(利用可能な場合)。このパラメータは、適用される法律に基づいて結果に影響を与える可能性があります。

    • 形式: 2 文字の国コード(ISO 3166-1 alpha-2)。例: USCA

ツール呼び出しの手順:

  • 位置情報(重大): 検索には十分な位置情報が含まれている必要があります。場所が曖昧な場合(「ピザ屋」など)、text_query で指定するか(「ニューヨークのピザ屋」など)、location_bias パラメータを使用する必要があります。曖昧さを解消するために、必要に応じて市区町村、都道府県、リージョン / 国名を含めます。

  • 常に、可能な限り具体的でコンテキストに即した text_query を提供します。

  • 座標が明示的に指定されている場合、またはユーザーの既知のコンテキストから位置情報を推測することが適切なかつより良い結果を得るために必要な場合にのみ、location_bias を使用します。

  • グラウンディングされた出力は、attribution フィールドの情報が利用可能な場合は、その情報を使用してソースに帰属させる必要があります。

lookup_weather

現在の天気情報、1 時間ごとの予報、毎日の予報など、包括的な天気データを取得します。

利用可能なデータ: 気温(現在、体感温度、最高/最低、暑さ指数)、風(風速、突風、風向)、天体現象(日の出/日の入り、月相)、降水(種類、確率、量/QPF)、大気条件(UV 指数、湿度、雲量、雷雨の確率)、ジオコード化された位置情報。

場所と場所に関するルール(重要):

天気データがリクエストされる場所は、location フィールドを使用して指定します。このフィールドは「oneof」構造です。つまり、正確な天気データのルックアップを保証するために、以下の 3 つの場所サブフィールドのうち 1 つのみに値を指定する必要があります。

  1. 地理座標(lat_lng)

    • 正確な緯度と経度の座標が提供された場合に使用します。
    • 例: {"location": {"lat_lng": {"latitude": 34.0522, "longitude": -118.2437}}} // ロサンゼルス
  2. プレイス ID(place_id)

    • 曖昧さのない文字列識別子(Google マップのプレイス ID)。
    • place_id は search_places ツールから取得できます。
    • 例: {"location": {"place_id": "ChIJLU7jZClu5kcR4PcOOO6p3I0"}} // エッフェル塔
  3. アドレス文字列(address)

    • ジオコーディングに固有性が必要な自由形式の文字列。
    • 市区町村と地域: 常に地域/国を含めます(例: 「ロンドン、英国」。「ロンドン」は不可)。
    • 住所: 住所を省略せずに入力します(例: 「1600 Pennsylvania Ave NW, Washington, DC」)。
    • 郵便番号: 国名と併記する必要があります(例: 「90210, USA」。「90210」は不可)。
    • 例: {"location": {"address": "1600 Pennsylvania Ave NW, Washington, DC"}}

使用モード:

  • Current Weather(現在の天気): location のみを提供します。datehour を指定しないでください。

  • 1 時間ごとの天気予報: locationdatehour(0 ~ 23)を指定します。特定の時間(「午後 5 時」など)や、「次の数時間」、「本日中」などの表現に使用します。お客様が分単位で指定した場合は、時間単位で切り捨てます。現在から 120 時間を超える時間単位の天気予報は対象外です。過去 24 時間までの時間別天気予報がサポートされています。

  • 日別の予報: locationdate を提供します。hour を指定しないでください。一般的な日付のリクエスト(「明日の天気」、「金曜日の天気」、「12 月 25 日の天気」など)に使用します。今日の日付がコンテキストに含まれていない場合は、お客様に確認する必要があります。本日を含む 10 日を超える毎日の天気予報は対象外です。過去の天気はサポートされていません。

パラメータの制約:

  • タイムゾーン: datehour の入力はすべて、ユーザーのタイムゾーンではなく、場所の現地タイムゾーンを基準にする必要があります。
  • 日付形式: 入力は {year, month, day} 個の整数に分割する必要があります。
  • 単位: デフォルトは METRIC です。ユーザーが米国の基準を暗示している場合や、明示的にリクエストしている場合は、華氏/マイルの units_systemIMPERIAL に設定します。
  • グラウンディングされた出力は、attribution フィールドの情報が利用可能な場合は、その情報を使用してソースに帰属させる必要があります。

compute_routes

指定された出発地と目的地の間の移動ルートを計算します。サポートされている移動手段: DRIVE(デフォルト)、WALK。

入力要件(重要): 出発地目的地の両方が必要です。それぞれを次のいずれかの方法で、それぞれのフィールド内にネストして指定する必要があります。

  • address:(文字列。例: 「エッフェル塔、パリ」)。注: 入力する住所が詳細であるほど、より正確な結果が得られます。

  • lat_lng:(オブジェクト、{"latitude": 数値, "longitude": 数値})

  • place_id:(文字列、例: 'ChIJOwE_Id1w5EAR4Q27FkL6T_0')注: この ID は search_places ツールから取得できます。入力タイプの任意の組み合わせが許可されます(例: 発信元はアドレス、宛先は lat_lng)。出発地または目的地のいずれかが欠落している場合は、ツールを呼び出す前に必ずユーザーに確認してください

ツール呼び出しの例: {"origin":{"address":"Eiffel Tower"},"destination":{"place_id":"ChIJt_5xIthw5EARoJ71mGq7t74"},"travel_mode":"DRIVE"}

  • グラウンディングされた出力は、attribution フィールドの情報が利用可能な場合は、その情報を使用してソースに帰属させる必要があります。

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