MCP Reference: mapstools.googleapis.com

これは、Maps Experience Agent Tools が提供する MCP サーバーです。このサーバーは、デベロッパーが Google Maps Platform 上に LLM アプリケーションを構築するためのツールを提供します。

Model Context Protocol(MCP)サーバーは、大規模言語モデル(LLM)または AI アプリケーションにコンテキスト、データ、機能を提供する外部サービスとの間のプロキシとして機能します。MCP サーバーは、AI アプリケーションをデータベースやウェブサービスなどの外部システムに接続し、そのレスポンスを AI アプリケーションが理解できる形式に変換します。

サーバーの設定

使用する前に、MCP サーバーを有効にして認証を設定する必要があります。Google と Google Cloud のリモート MCP サーバーの使用方法については、Google Cloud MCP サーバーの概要をご覧ください。

サーバー エンドポイント

MCP サービス エンドポイントは、安全で標準化された接続を確立するために AI アプリケーション(MCP クライアントのホスト)が使用する MCP サーバーのネットワーク アドレスと通信インターフェース(通常は URL)です。これは、LLM がコンテキストをリクエストしたり、ツールを呼び出したり、リソースにアクセスしたりするための接続ポイントとなります。

Maps Experience Agent Tools 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'
    • Place Details の場合: リクエストする属性('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)を続けます(例: en、ja、en_US、zh_CN、es_MX)。言語コードが指定されていない場合、結果は英語で表示されます。
  4. region_code(文字列 - 省略可): ユーザーの Unicode CLDR リージョン コード。このパラメータは、地域固有の場所名など、Place Details を表示するために使用されます(利用可能な場合)。このパラメータは、適用される法律に基づいて結果に影響を与える可能性があります。

    • 形式: 2 文字の国コード(ISO 3166-1 alpha-2)(例: US、CA)。
  5. page_size(整数 - 省略可): 返される場所の最大数(1~10)。デフォルトは 5 です5 より大きい値を設定するのは、ユーザーが 5 つ以上の場所を比較する場合のみです。6 から 10 までの値は、費用とレイテンシが高くなります。

  6. include_extended_details(ブール値 - 省略可): ユーザー リクエストに、豊富な定性的分析情報、リアルタイムのダイナミクス、または特殊なエンティティ属性が必要な場合は、このフィールドを true に設定します。デフォルトでは false に設定されます。これを true に設定すると、費用とレイテンシが増加します。

ツール呼び出しの手順:

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

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

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

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

lookup_weather 天気、大気質(AQI と汚染物質)、花粉(木、草、雑草、植物種のアレルゲン レベル)など、ある場所の包括的な環境情報を取得します。天気と大気質については、現在の状況、1 時間ごとの予測 / 履歴、日別の予測を取得できます。花粉については、日別の予測のみを取得できます(今日から 4 日後まで。1 時間ごとのデータや過去のデータはありません)。利用可能な環境ドメインと機能(capabilities: WEATHER、AIR_QUALITY、POLLEN - 重要): * 明示的な選択が必須: すべての呼び出しで、capabilities に WEATHER、AIR_QUALITY、POLLEN のいずれかを必ず含める必要があります。capabilities を省略することはできません。* 広範 / 曖昧な屋外に関するクエリ(完全な屋外環境スイート): ユーザーが特定のドメインに限定せずに、屋外、旅行、状況に関する一般的な質問をした場合(例: 「今、ランニングをするのに屋外の状況はどうですか?」)、3 つの機能すべてを明示的に含め(capabilities: ["WEATHER", "AIR_QUALITY", "POLLEN"])、完全な屋外環境スイート(天気 + 大気質 + 花粉)を返します。過去の date / hour の場合は、履歴がない POLLEN を除外します。* 対象ドメインの選択(特定のクエリ): ユーザーが 1 つまたは 2 つのドメインのみを具体的にリクエストした場合(例: 「シアトルの現在の AQI はリアルタイムでどうなっていますか?」)、リクエストされた機能(WEATHER、AIR_QUALITY、POLLEN)のみを含めます。リクエストされたドメインのみが実行され、返されます。ドメインごとに利用可能な特定のデータ: * 天気(weather): 気温(現在、体感、最高 / 最低、熱指数)、風(風速、突風、風向)、天体イベント(日の出 / 日の入り、月相)、降水量(種類、確率、量 / QPF)、大気条件(UV 指数、湿度、雲量、雷雨確率、気圧)。* 大気質(air_quality): 世界および地域の大気質指数(AQI 値、カテゴリ、主要な汚染物質)、7 つの感受性グループにわたる健康に関する推奨事項、汚染物質濃度(include_pollutant_concentration: true)。各指数には独自の主要な汚染物質があります。指数ごとに報告してください(例: 米国の AQI に世界の AQI の汚染物質を指定しないでください)。* 花粉(pollen): 樹木、草、雑草のカテゴリ別、植物種別の 1 日のユニバーサル花粉指数(UPI、0 ~ 5)(index.value とその index.category、例: 1 = 「非常に低い」)、シーズン中のステータス、交差反応、健康に関する推奨事項。* 花粉フィールドがない: in_season がない場合は、季節外れであることを意味します。index なしで返された植物種は、ユーザーがその植物について尋ねた場合を除き、省略します。その場合は、その植物の花粉データは今日報告されていないことを伝えます(レベルを推測しないでください)。場所のルール(重要): 対象地域は、次の oneof サブフィールドのいずれか 1 つのみを使用して location で指定する必要があります。1. 地理座標(lat_lng): * 正確な緯度 / 経度座標がわかっている場合に使用します。* 例: {"location": {"lat_lng": {"latitude": 34.0522, "longitude": -118.2437}}} 2. プレイス ID(place_id): * 明確な Google マップのプレイス ID(search_places または resolve_names から取得したものなど)。* 例: {"location": {"place_id": "ChIJLU7jZClu5kcR4PcOOO6p3I0"}} 3. 住所文字列(address): * 市区町村 / 地域、近隣地域、ランドマーク、スポット、番地、郵便番号。市区町村 / 国も指定することをおすすめします。* 例: {"location": {"address": "Paris, France"}} 時間と使用モード(date と hour - 重要): * 現地タイムゾーンの参照: すべての date({year, month, day})と hour(0-23)の入力は、リクエストされた location の現地常用タイムゾーン(例: "Paris tomorrow at 13:00" のクエリでは Europe/Paris の現地の日付と時間 13 を使用)で表す必要があります。UTC や呼び出し元のタイムゾーンは使用しないでください。* 1. 現在の状況(date と hour を省略): * location とターゲット capabilities(WEATHER、AIR_QUALITY、POLLEN)を指定します。date または hour は指定しないでください。* リクエストされたドメインのリアルタイムの現在の状況(CC)(現在の天気、現在の時間の大気質、今日の花粉予報)を返します。* 大気質の場合、現在の状況は 1 時間単位です。今日全体の大気質や屋外に関する一般的な質問に回答する場合は、これだけを使用しないでください(以下の日次クエリを使用してください)。* 2. 1 時間ごとの天気予報 / 履歴(date と hour を指定 0-23): * location、date({year, month, day})、hour(0-23)、ターゲット capabilities を指定します。分単位で記載されている場合は、最も近い時間に切り捨てます。* 重要な制約(hour が設定されている場合、date は必須): date を指定せずに hour を指定する(date を省略し、hour を設定する)ことは許可されていません。エラーが発生します。ユーザーが今日の特定の時間(例: "at 13:00 today")について尋ねている場合でも、date(今日の location)と hour の両方を入力する必要があります。* YYYY-MM-DD-HH でリクエストされた天気や大気質を 1 時間ごとに検索し、YYYY-MM-DD でリクエストされた花粉を 1 日ごとに検索します。* 天気に関する「いつ」の質問: いつ / 何時 / 最適な時間を尋ねる天気に関する質問(例: "what time will it stop raining?")の場合、該当する時間帯について 1 時間ごとの WEATHER 呼び出し(date + hour)を使用します。1 日の天気予報には 1 時間ごとの値はありません。屋外での活動全般に関する「いつ / 最適な時間」の質問(例: "when is the best time to go walking today?")については、1 日のクエリで説明されている大気質(および花粉)の 1 日全体の呼び出しに加えて、1 時間ごとの WEATHER 呼び出しを行います。* 3. 1 日のクエリ(date を指定し、hour を省略): * location、date(リクエストされた location の現地時間での {year, month, day})を hour なしで指定し、1 日のクエリのターゲット capabilities(例: "weather and pollen in London tomorrow")を指定します。 * 今日の大気質と屋外に関する一般的な質問: 大気質に関する質問と、今日に関する屋外に関する一般的な質問(大気質を含む)(例: "how will the air quality change today"、"is today a good day for a picnic?")の場合、date を今日の location の日付(時間は省略)に設定して、その日の 1 時間ごとの大気質シリーズを取得します。現在の状況の呼び出しだけでは、現在の時間の大気質しか返されないため、十分ではありません。ユーザーが「現在」についても尋ねている場合は、追加できます。* 大気質の時間枠: 1 日の時間枠("air quality between noon and 6 PM" など)に関する大気質の質問については、個々の時間をサンプリングするのではなく、その日付の 1 回の Daily 呼び出しを優先し、大気質シリーズから時間枠の時間を読み取ります。1 時間ごとに電話をかける場合は、時間枠のすべての時間帯をカバーします。* リクエストされた天気や花粉の日次予測と、その日の 1 時間ごとの大気質シリーズを、現地時間の 1 日全体(現地時間の 00:00 ~ 23:00)にわたって返します。過去の日付の場合は 24 時間の履歴、将来の日付の場合は 24 時間の予測、今日の場合はそれ以前の時間(履歴)、現在の時間、残りの時間(予測)を返します。ドメイン別のサポート対象期間: * 天気: 24 時間前から 240 時間(10 日)先までの 1 時間単位(過去の時間には date と hour の両方が必要)。今日を含む 10 日先(今日から 9 日後まで)までの 1 日単位。1 日単位の履歴はなし。* Air Quality: 720 時間(30 日)前から 96 時間(4 日)後までの 1 時間単位。1 日全体の呼び出しは、この期間内に収まる必要があります(実際には、今日から 29 日前から 3 日後まで)。* 花粉: 1 日単位のみ、今日から 4 日後まで(今日を含めて 5 日間)。過去の日付は含まれず、hour は無視されます。* (注: 複数の機能がリクエストされ、date/hour がそのいずれかの範囲外にある場合でも、呼び出しは成功し、サポートされている機能のみが返されます。)* 範囲外のリクエスト: リクエストされた日付または時間が上記のドメインのサポート範囲外である可能性がある場合(過去の日付の花粉など)でも、リクエストされた日付 / 時間に対して lookup_weather を呼び出します。エラーにはサポート範囲が示されます。代わりに別の日付、時間、ドメインを呼び出さないでください。ドメイン オプションとアトリビューション: * 言語(language_code): 省略可能な BCP-47 言語コード(例: "fr")。デフォルトは "en" です。* 天気情報の単位(weather_options.units_system または units_system): デフォルトは METRIC です。お客様が米国標準を暗示している場合、またはインペリアル単位を明示的にリクエストしている場合は、IMPERIAL(華氏 / mph)に設定します。weather_options.units_system(推奨)と最上位の units_system の両方でサポートされています。両方を指定する場合は、競合しないようにする必要があります。* 大気質オプション(air_quality_options): 特定の汚染物質濃度(PM2.5、PM10、O3、NO2、SO2、CO)が必要な場合は include_pollutant_concentration: true を設定します。必要に応じて、index_region_code(2 文字の ISO 国コード、例: "US")を設定して、特定の地域の AQI スケールをリクエストします。デフォルトでは、レスポンスにはユニバーサル AQI とその場所の地域 AQI が含まれます。* 帰属表示: グラウンディングされた出力は、返された各ドメイン コンテナ(weather.attribution、air_quality.attribution、pollen.attribution)内の attribution フィールドを使用して、ソースに帰属させる必要があります。* 返される時刻: Air Quality の date_time 値は、すでにその場所の現地時間(utc_offset を含む)になっているため、そのまま表示します。天気 date_time(現在と 1 時間ごと)と日の出 / 日の入りの時刻は UTC です。time_zone を使用して、その場所の現地時間に変換します。すべての時刻を現地時間としてラベル付けします。
compute_routes

出発地と目的地の間の移動ルートを計算します。必要に応じて、中間地点を経由することもできます。各ルートの距離と所要時間を返します。

入力要件(重要):

  1. origin と destination(オブジェクト - 必須): それぞれ、次のいずれか 1 つのみを使用して指定する必要があります。

    • address(文字列、例: 'Eiffel Tower, Paris')。名前付きの場所、ランドマーク、ビジネスは直接解決されるため、ウェイポイントをジオコーディングするためだけに search_places を呼び出さないでください。お客様が言及した都市、地域、国をすべて含めます。
    • lat_lng(オブジェクト、{"latitude": number, "longitude": number})。
    • place_id(文字列、例: 'ChIJOwE_Id1w5EAR4Q27FkL6T_0')。例: search_places。
  2. intermediate_waypoints(オブジェクトの配列 - 省略可): 出発地と目的地の間に設定する、最大 25 か所の経由地(順番に並べる)。origin と同じ形式。TRANSIT ではサポートされていません。ユーザーがリクエストした経由地のみを含めます。10 個を超える中間ウェイポイントを指定すると、費用とレイテンシが増加します。

  3. travel_mode(列挙型 - 省略可): DRIVE(デフォルト)、WALK、BICYCLE、TRANSIT。

  4. タイミング(省略可 - 最大 1 つ設定): UTC オフセットを含む RFC 3339 タイムスタンプ(例: '2026-09-19T08:00:00-07:00')。デフォルトは「今すぐ出発」です。TRANSIT の場合、時間は過去 7 日以内、または将来 100 日以内です。他のモードの場合、時刻は 365 日後まで指定できます。過去の時刻は指定できません。

    • departure_time: ユーザーが出発時刻を指定した場合(例: 「明日の午前 8 時」)に使用します。
    • arrival_time: ユーザーが到着時刻を指定した場合(例: 「午前 9 時までに到着」)に使用します。
  5. routing_preference(列挙型 - 省略可):

    • ROUTING_PREFERENCE_TRAFFIC_UNAWARE(デフォルト): リアルタイムの交通状況、事故、通行止めを無視します。レイテンシが最も低い。
    • ROUTING_PREFERENCE_TRAFFIC_AWARE_OPTIMAL: 可能な場合は、リアルタイムの交通状況を使用します。WALK または BICYCLE ではサポートされていません。この設定は、お客様から交通状況、渋滞、交通状況を考慮した到着予定時刻について問い合わせを受けた場合にのみ行ってください。コストとレイテンシが増加します。
  6. location_bias(オブジェクト - 省略可): ウェイポイントの住所の場所名の曖昧さを解消するために使用される {"latitude": number, "longitude": number}。名前があいまい(例: 「Springfield」)で、ユーザーが地域を指定していない場合は、address で指定された名前をそのまま使用し、地域を推測するのではなく、目的の地域に location_bias を設定します。

  7. compute_alternative_routes(ブール値 - 省略可): ユーザーがルート オプションまたは代替ルートをリクエストした場合にのみ、true に設定します。デフォルトは false で、おすすめのルートのみが返されます。

  8. include_polyline(ブール値 - 省略可): ルート ジオメトリ(encoded_polyline)が必要な場合にのみ true に設定します。デフォルトは false です。

ツール呼び出しの手順:

  • 出発地または目的地が不明な場合は、ツールを呼び出す前にユーザーに確認する必要があります。
  • 「A から B までの距離は?」という質問の場合、B を origin、A を destination として使用します。

ツール呼び出しの例: {"origin":{"address":"Eiffel Tower"},"destination":{"place_id":"ChIJt_5xIthw5EARoJ71mGq7t74"},"intermediate_waypoints":[{"address":"Louvre Museum"}],"travel_mode":"DRIVE","departure_time":"2026-09-19T08:00:00+02:00"}

回答の手順:

  • 代替ルートがリクエストされた場合、ルートはおすすめ度の高い順に並べ替えられます。
  • routes が空の場合は、ルートが見つからなかったことをユーザーに伝えます。ルートを推測しないでください。
  • DRIVE 経路沿いの場所を検索するには、経路の retrieval_token を search_along_route に渡します。トークンは 10 分間有効です。
  • ツールから返された事実のみを述べてください。ターンバイターン方式の経路、交通機関の路線、駅、プラットフォーム、乗り換えを創作しないでください。
  • グラウンディングされた出力は、各ルートの attribution フィールド(使用可能な場合)を使用してソースに帰属させる必要があります。
search_along_route

ユーザーが旅行ルート沿いの場所、店舗、スポットを検索したい場合(例: 「タホに向かう途中のガソリンスタンド」、「サンフランシスコとサンノゼの間のカフェ」)に、このツールを呼び出します。このツールを呼び出すと、search_places よりも費用が高くなります。そのため、ルート沿いではなく、1 つの場所の近くを検索する場合は、代わりに search_places を使用してください。

入力要件(重要):

  1. text_query(文字列 - 必須): ルート沿いで検索する内容の自然言語による説明。

    • 例: 'ev chargers'、'coffee'、'vegetarian restaurants'、'rest stops'
  2. ルートの指定(必須 - 次のいずれか 1 つのみを指定):

    • 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 ルートを表すエンコードされたポリライン。
  3. travel_mode(列挙型 - 省略可): DRIVE(デフォルト)、WALK、BICYCLE。WALK と BICYCLE は route_endpoints でのみサポートされています。TRANSIT はサポートされていません。

  4. routing_preference(列挙型 - 省略可):

    • ROUTING_PREFERENCE_TRAFFIC_UNAWARE(デフォルト): ライブ交通情報を使用せずにルートと迂回路を計算します。レイテンシが最も低い。
    • ROUTING_PREFERENCE_TRAFFIC_AWARE_OPTIMAL: 可能な場合は、リアルタイムの交通状況を使用します。WALK または BICYCLE ではサポートされていません。この設定は、ユーザーが交通状況、渋滞、交通状況を考慮した迂回時間について尋ねた場合にのみ行ってください。レイテンシが高くなります。
  5. include_extended_details(ブール値 - 省略可): リクエストに、定性的なクチコミの分析情報、特定のメニュー項目やサービス、雰囲気、訪問者のヒントや混雑状況、EV 充電器の利用可能性、ガソリン価格、その他の詳細な定性的情報が必要な場合にのみ、true に設定します。デフォルトでは false に設定されます。有効にすると、レイテンシが増加する可能性があります。

  6. language_code(文字列 - 省略可): 結果の概要と Place Details の言語(en、ja、en-US など)。デフォルトは en-US です。

  7. region_code(文字列 - 省略可): ユーザーの Unicode CLDR リージョン コード(例: US、CA)。

ツール呼び出しの手順:

  • 各結果には、その場所に立ち寄ることで発生する追加の距離(localized_detour_distance)と、ルートが encoded_polyline として指定されていない場合は追加の時間(detour_duration)を記述する detour_summary(利用可能な場合)が含まれます。オプションの比較に使用します。
  • レスポンス summary には、results のエントリを参照する 0 ベースの引用(「[0]」など)が含まれる場合があります。
  • グラウンディングされた出力は、利用可能な場合は各 results[].place の attribution フィールドを使用してソースに関連付ける必要があります。
resolve_names

特定の場所のクエリ(ランドマーク名や正確な住所)のバッチリストを、正規の Google マップ プレイス ID に解決します。

入力要件(重要):

  1. queries(オブジェクトの配列 - 必須): 解決する位置情報クエリのリスト。最大 20 個のクエリを指定できます。

    • 各クエリ オブジェクトには、次のものが必要です。
      • text(文字列 - 必須): 解決する特定の場所の名前または住所を表すテキストクエリ。
        • 例: 'Googleplex, Mountain View, CA'、'1600 Amphitheatre Pkwy, Mountain View, CA'、'Eiffel Tower, Paris'
  2. location_bias(オブジェクト - 省略可): 特定の地理的エリアに近い結果を優先する場合に使用します。

    • 形式: {"viewport": {"low": {"latitude": [value], "longitude": [value]}, "high": {"latitude": [value], "longitude": [value]}}}
  3. region_code(文字列 - 省略可): 結果をバイアスするユーザーの Unicode CLDR リージョン コード(2 文字の国コード、例: US、CA)。

ツール呼び出しの手順:

  • 具体性(重要): 検索語句は、特定の場所の名前または住所を表している必要があります。'restaurants' などの一般的な検索や、'Starbucks' などのチェーン名はサポートされていません。
  • 呼び出す予定のダウンストリーム ツールが、未加工の住所または場所名の文字列を直接受け入れる場合は、このツールを呼び出さないでください。

Google マップに保存する:

  • レスポンスには save_to_maps_url フィールドが含まれます。これは、正常に解決されたすべての場所を含む単一の Google マップのリンクです。
  • 解決された場所をリストとして Google マップに保存、共有、または開く場合は、このリンクをユーザーに提示します。このリンクは自分で作成しないでください。

エラー処理(重大):

  • これはバッチ処理ツールです。リクエストが「混合結果」を返すことがあります(例: 一部のクエリは正常に解決され、他のクエリは失敗する)。
  • results の出力リストは、入力 queries インデックスと 1 対 1 でマッピングされることが保証されます。クエリが失敗すると、results リストの対応するインデックスに空の Result メッセージ(entity が設定されていない)が返されます。
  • レスポンスの failed_requests マップ フィールドを必ず確認して、失敗したクエリ インデックスを特定してください。failed_requests のキーは、リクエストで失敗したクエリの 0 ベースのインデックスを表します。部分的な失敗が原因でバッチ呼び出し全体が失敗したと想定しないでください。
resolve_maps_urls

Google マップの URL のリストを正規の Google マップ プレイス ID に解決します。

このツールを呼び出すタイミング(重要):

  • このツールは、ユーザーが 1 つ以上の Google マップの共有リンクまたは URL(例: 「https://maps.app.goo.gl/...」)を提供した場合に使用します。'https://www.google.com/maps/place/...'、'https://maps.google.com/...' など)があり、基盤となる正規のプレイス ID を抽出する必要がある場合。
  • 1 つのバッチ リクエストで解決する URL を最大 20 個指定できます。

入力要件(重要):

  • urls(文字列の配列 - 必須): 解決する Google マップの URL のリスト。各 URL は、有効な単一の場所の Google マップ URL である必要があります。

Google マップに保存する:

  • レスポンスには save_to_maps_url フィールドが含まれます。これは、正常に解決されたすべての場所を含む単一の Google マップのリンクです。
  • ユーザーが解決済みの場所を Google マップでリストとして保存、共有、または開きたい場合(会話で共有された場所を収集する場合など)、このリンクをユーザーに提示します。このリンクは自分で作成しないでください。

エラー処理(重大):

  • これはバッチ処理ツールです。リクエストが「混合結果」を返すことがあります(例: 一部の URL は正常に解決されるが、他の URL は失敗する)。
  • entities の出力リストは、入力 urls インデックスと 1 対 1 でマッピングされることが保証されます。URL の解決に失敗すると、entities リストの対応するインデックスに空の Entity メッセージ(フィールドが設定されていない)が返されます。
  • レスポンスの failed_requests マップ フィールドを必ず確認して、失敗した URL インデックスを特定してください。failed_requests のキーは、リクエスト内の失敗した URL の 0 ベースのインデックスを表します。部分的な失敗が原因でバッチ呼び出し全体が失敗したと想定しないでください。

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