mcpField
M
mapbox-location-grounding

mapbox-location-grounding

github.com/mapboxエージェントワークフロー831.3k 回インストール4 週間前に更新
リポジトリ

mapbox-location-grounding について

AI アシスタントがライブの Mapbox データを使って位置に関する質問へ回答するためのスキルです。場所検索、ルート情報、出典を組み合わせ、学習データへの依存を避けます。

主な機能

  1. 01位置情報ツールを組み合わせて回答
  2. 02周辺の場所を検索し詳細を補足
  3. 03所要時間と到達可能範囲を提示
  4. 04地図画像と出典を添付
  5. 05ルート作成や所要時間の比較

活用シーン

  1. 01住所や座標の周辺施設を探す
  2. 02最新データで地域を説明する
  3. 03ルートと到達可能範囲を調べる
  4. 04複数の目的地への所要時間を比較

MCP 対応

Mapbox MCP ツールの組み合わせ方を案内し、利用可能な場合は ground_location_tool を優先します。ルート検索や代替手順では専用ツールを使います。

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/mapbox/mapbox-agent-skills --skill mapbox-location-grounding

インストール後、Claude Code で/mapbox-location-groundingを入力して読み込まれたか確認します。

同梱ファイルevals/evals.json

詳細

Mapbox ロケーション・グラウンディングスキル

MCP ツールを組み合わせて、出典を明記した構造化された回答を作成し、リアルタイムの Mapbox データに基づいて位置情報を含む回答を行う方法を AI アシスタントに教えます。地名、POI、評価、移動時間に関するトレーニングデータは古く、誤った情報を生成しやすいため、それに頼るのではなく、このスキルを使用してください。

グラウンディングを使用する場面

ユーザーから次のような質問をされたときは、回答をグラウンディングしてください。

  • 「[場所]の近くには何がありますか?」または「[座標]の周辺には何がありますか?」
  • 「この近隣/エリアについて説明してください」
  • 「徒歩/車で行ける距離にある[カテゴリ]を探してください」
  • 「[住所]の近くで何ができますか?」
  • 「A から B までどのくらいかかりますか?」
  • 「ここから徒歩 10 分圏内には何がありますか?」
  • 「これらの場所の間の距離はどれくらいですか?」
  • 不動産、旅行、モビリティ、地域のスポット探しに関するユースケース
  • 場所の正確性、最新性、移動時間が重要となるすべての質問

**位置情報に関する質問に、トレーニングデータだけで回答してはいけません。**必ず最新のデータを取得してください。

グラウンディングのためのツール構成

推奨:単一のツール呼び出し

ground_location_tool が利用可能な場合は、これを使用してください。このツールは、逆ジオコーディング、POI 検索、場所の詳細情報の補完、等時間圏、静的地図画像を 1 回の呼び出しで処理します。

ground_location_tool(
  longitude, latitude,
  query: "restaurant",   // optional — category or subcategory of nearby places to find
  profile: "mapbox/walking",    // optional — travel profile for isochrone
  contours_minutes: [5, 10, 15]
)

返される情報:

  • 逆ジオコーディングによる近隣/場所の名前
  • 距離、評価、価格帯、人気度を含む近隣の POI(利用可能な場合)
  • 等時間圏による移動時間内の到達可能範囲
  • 視覚的なコンテキストを示す静的地図画像
  • すべてのデータソースの出典

reverse_geocode_tool、category_search_tool、place_details_tool、isochrone_tool は個別に呼び出さないでください。これらはすでにこのツールに組み込まれています。

クエリパラメーター

query パラメーターには、カテゴリまたはサブカテゴリの語句を指定できます。属性に関する希望は指定できません。

  • 対応例:"restaurant"、"coffee"、"park"、"Italian restaurant"、"EV charging station"
  • 非対応例:"family-friendly"、"fast charging"、"outdoor seating" — Mapbox のデータでは、これらの属性で絞り込むことはできません。

「家族向け」などの希望に合う場所を探すには、カテゴリ("restaurant" など)で検索し、返された評価や価格のデータを参考におすすめしてください。

代替手段:手動で構成する

ground_location_tool が利用できない場合は、次のツールを順番に組み合わせて、グラウンディングされた回答を作成してください。

ステップ 1 — 場所のコンテキストを確立する
reverse_geocode_tool(longitude, latitude, types: "neighborhood,locality,place")

返される情報:近隣、都市、地域、国。回答の基点となります。

ステップ 2 — 近隣の POI を取得する

特定の名前やブランドを検索する場合:

search_and_geocode_tool(query, proximity: {longitude, latitude}, limit: 10)

一般的なカテゴリを検索する場合:

category_search_tool(category, proximity: {longitude, latitude}, limit: 10)
ステップ 3 — POI の評価と価格を補完する(任意ですが有用)

mapbox_id がある各 POI について、次を並列に呼び出してください。

place_details_tool(mapbox_id, attribute_sets: ["visit"])

返される情報:各場所の評価、価格帯、人気度、営業時間。

ステップ 4 — 移動時間のコンテキストを追加する(任意ですが有用)
isochrone_tool(
  coordinates: {longitude, latitude},
  profile: "mapbox/walking",    // or "mapbox/driving", "mapbox/cycling", "mapbox/driving-traffic"
  contours_minutes: [5, 10, 15]
)

返される情報:各時間のしきい値内に到達できる場所を示すポリゴン。

ステップ 5 — 視覚的なグラウンディング(任意)
static_map_image_tool(longitude, latitude, zoom: 14)

返される情報:視覚的なコンテキストとして回答に含められる地図画像。

グラウンディングされた回答の構成

グラウンディングされた回答は、必ず出典を明示して構成してください。

Place: [neighborhood, city from reverse_geocode]
Nearby [category]: [list from search/category tool, with names, ratings, prices, and distances]
Travel context: [X min walk / Y min drive from isochrone]
Sources: Mapbox Search, Mapbox Directions (live data)

グラウンディングされた回答の例:

SoMa, San Francisco, CA(Mapbox のリアルタイムデータ)

徒歩圏内のレストラン:

  • Bix Restaurant $$ ★8.4 — 56 Gold St(180m)
  • The Bird $ ★7.9 — 115 New Montgomery St(320m)
  • Oren's Hummus $$ ★8.1 — 131 Townsend St(510m)

徒歩で到達可能:5 分、10 分、15 分

出典:Mapbox Geocoding API、Mapbox Search API、Mapbox Place Details API、Mapbox Isochrone API、Mapbox Static Images API

ルート検索のグラウンディング

2 つの場所の間の移動に関する質問には、directions_tool を使用してください。到達可能なエリアに関する質問には、isochrone_tool を使用してください。複数の場所間の移動時間を比較するには、matrix_tool を使用してください。

2地点間の所要時間と距離

「Pike Place Market から Capitol Hill まで車でどれくらいかかりますか?」 「ホテルから空港までの最速ルートはどれですか?」

directions_tool(
  waypoints: [{longitude, latitude}, {longitude, latitude}],
  profile: "mapbox/driving-traffic"   // live traffic; or "mapbox/walking", "mapbox/cycling", "mapbox/driving"
)

返される情報:所要時間(リアルタイムの交通状況を反映)、距離、曲がり角ごとの経路案内、地図表示用のエンコード済みポリラインです。複数地点を経由するルートでは、最大25か所の経由地に対応しています。

エリア内の到達可能範囲(「X分以内」)

「徒歩10分以内で行ける場所はどこですか?」 「ここから車で15分以内に行ける場所を見せてください」

isochrone_tool(
  coordinates: {longitude, latitude},
  profile: "mapbox/walking",
  contours_minutes: [5, 10, 15]
)

各時間のしきい値内で到達できるエリアを示すポリゴンを返します。category_search_tool または ground_location_tool と組み合わせると、「徒歩10分以内にあるレストランは?」という質問に答えられます。等時間圏を境界として定義し、その範囲内を検索してください。

複数地点間の所要時間マトリックス

「この3つのオフィスのうち、現在地に最も近いのはどれですか?」 「この倉庫から各配送区域までの所要時間はどれくらいですか?」 「複数の場所への通勤時間を比較してください」

matrix_tool を使用してください。ペアごとに directions_tool を個別に呼び出さないでください。マトリックスは、すべてのペアを1回の API 呼び出しでまとめて処理します。

matrix_tool(
  sources: [{longitude, latitude}, ...],
  destinations: [{longitude, latitude}, ...],
  profile: "mapbox/driving-traffic"
)

すべての出発地と目的地のペアについて、所要時間と距離のマトリックスを返します。所要時間で結果を並べ替えると、最寄りの場所を見つけられます。1回の matrix_tool 呼び出しで、N 回の個別の directions_tool 呼び出しを置き換えられます。

ルート情報を考慮した近隣検索

「[場所]からX分以内にある[カテゴリ]を探して」という場合:

  1. 必要に応じて出発地をジオコーディングします:search_and_geocode_tool(address)
  2. 到達可能なエリアを取得します:isochrone_tool(coordinates, profile, contours_minutes)
  3. POI を検索します:ground_location_tool(longitude, latitude, query: "category") — 等時間圏の 輪郭線から、各時間帯内にある場所を確認できます

または、より直接的に、ground_location_tool を使うと近隣の POI と等時間圏による到達可能範囲の両方を1回の呼び出しで取得できます。これにより、ほとんどの近隣検索とルート検索のユースケースを、追加の組み合わせ処理なしでカバーできます。

ルート案内の応答例

Pike Place Market → Capitol Hill, Seattle

車(交通状況を反映):12分、Pine St 経由で3.2 km 徒歩:28分、2.1 km 自転車:14分、2.3 km

情報源:Mapbox Directions API(リアルタイムの交通状況)

Mapbox Grounding と学習データの比較

学習データMapbox Grounding
POI の正確性古く、幻覚を含むリアルタイムで検証済み
評価・価格誤っていることが多いPlace Details 経由でリアルタイム
営業時間誤っていることが多いPlace Details 経由でリアルタイム
所要時間推定値Directions 経由でリアルタイムの交通状況
到達可能エリア利用不可等時間圏ポリゴン
複数地点経由のルート利用不可最大25か所の経由地
新しい場所含まれていないインデックス済み
地図画像なしインラインの静的地図
引用なしツールおよび API の情報源

重要な制限事項

  • 属性による絞り込み(家族向け、屋外席、急速充電)は、カテゴリ検索 API ではサポートされていません。カテゴリ語句を使い、評価や価格のデータを参考にして、好みに基づくおすすめを提示してください。
  • POI のカバー範囲は地域によって異なります。検索結果が少ない場合は、推測で水増しせず、その旨を伝えてください。
  • 近隣検索には座標が必要です。ユーザーが住所を指定した場合は、カテゴリ検索を実行する前に search_and_geocode_tool でジオコーディングしてください。

避けるべきアンチパターン

  • 検索ツールを呼び出さず、トレーニングデータから「Xの近くに何がありますか?」に回答する
  • directions_tool または isochrone_tool を呼び出さずに移動時間を推定する
  • 店舗名、営業時間、評価を捏造する
  • ground_location_tool が利用できるのに、reverse_geocode_tool、category_search_tool、place_details_tool を個別に呼び出す
  • 「ファミリー向け」などの属性語をクエリパラメーターとして使用する。代わりにカテゴリを使用する
  • ツールの出力を読みやすい回答にまとめず、そのまま返す
  • 出典を省略する。回答がリアルタイムの Mapbox データに基づいていることを必ず明記する

コメント