mcpField
H
HERE Maps MCP Server

HERE Maps MCP Server

ローカル
github.com/limingchinaメディア・デザイン769 週間前に更新

HERE Maps MCP Server について

HERE Maps MCP Serverは、MCPを通じてLLMにHERE Mapsの機能を提供します。住所検索、場所検索、ルート案内、交通情報、地図画像に対応しています。

主な機能

  1. 01住所と座標のジオコーディング
  2. 02周辺スポット検索
  3. 03交通手段別のルート案内
  4. 04交通事故情報の取得
  5. 05地図画像の表示

活用シーン

  1. 01住所の座標検索や座標からの住所特定
  2. 02周辺のスポット検索
  3. 032地点間のルート取得
  4. 04周辺の交通情報確認や地図表示

MCP 対応

HERE Maps Platformのジオコーディング、場所検索、ルート案内、交通情報、地図表示をMCPツールとしてクライアントに提供します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

HERE Maps MCP サーバー

このプロジェクトは、HERE Maps Platform API の機能をツールとして LLM に公開する、Model Context Protocol(MCP)準拠のサーバーを提供します。

目標

LLM が標準化された MCP インターフェースを通じて、ジオコーディング、リバースジオコーディング、場所検索、ルーティング、交通情報、地図表示などの HERE Maps サービスを利用できるようにすることを目指しています。

HERE Maps ツール

以下の HERE Maps サービスが MCP ツールとして実装されています。

  1. ジオコーディング:

    • MCP ツール: maps_geocode
    • 説明: 住所を地理座標に変換します
    • HERE API: Geocoding & Search API v7 - Geocode
    • 入力: address(文字列)
    • 出力: location(緯度/経度の座標)、address(書式設定された住所)、id を含む JSON
  2. リバースジオコーディング:

    • MCP ツール: maps_reverse_geocode
    • 説明: 座標を住所に変換します
    • HERE API: Geocoding & Search API v7 - Reverse Geocode
    • 入力: latitude(数値)、longitude(数値)
    • 出力: address(書式設定された住所)、position(緯度/経度の座標)、id を含む JSON
  3. 場所検索(POI):

    • MCP ツール: maps_search_places
    • 説明: 特定の場所の周辺にある施設(例:レストラン、ATM)を検索します
    • HERE API: Geocoding & Search API v7 - Discover
    • 入力: latitude(数値)、longitude(数値)、query(文字列。例:"coffee"、"restaurant")
    • 出力: 各施設の name、address、position(緯度/経度の座標)、category を含む施設のリスト
  4. ルーティング(経路案内):

    • MCP ツール: maps_directions
    • 説明: HERE Maps Routing API を使用して、2 地点間の経路案内を取得します
    • HERE API: Routing API v8
    • 入力:
      • origin('latitude,longitude' 形式の文字列)
      • destination('latitude,longitude' 形式の文字列)
      • transportMode(文字列:"car"、"pedestrian"、"bicycle"、"truck"、"scooter"、"bus"、"taxi")
    • 出力: summary(所要時間と距離)、polyline(経路の座標)、actions(ナビゲーションの指示)を含む JSON
  5. 交通情報:

    • MCP ツール: maps_get_traffic_incidents
    • 説明: 指定した円内の交通事故情報を取得します
    • HERE API: Traffic API v7
    • 入力:
      • center('latitude,longitude' 形式の文字列)
      • radius(メートル単位の数値)
    • 出力: description、startTime、endTime、type、criticality を含む交通事故情報のリスト
  6. 地図の表示:

    • MCP ツール: maps_display
    • 説明: 指定した座標、ズームレベル、スタイルで地図を表示します
    • HERE API: Map Image API v3
    • 入力:
      • center('latitude,longitude' 形式の文字列)
      • zoomLevel(数値。ズームレベルの範囲は 0(広域)から 20(最大拡大)です。デフォルトは 14 です。)
      • style(文字列:"explore.day"、"explore.night"、"explore.satellite.day"、"lite.day"、"lite.night"、"lite.satellite.day"、"logistics.day"、"logistics.night"、"logistics.satellite.day"、"satellite.day"、"topo.day"、"topo.night")
    • 出力: レンダリングされた地図画像

はじめに

npm パッケージはまだ公開されていないため、現在はリポジトリをクローンして、MCP サーバーをローカルで実行する方法のみ利用できます。

  1. リポジトリをクローンします
git clone https://github.com/limingchina/here-maps-mcp-server.git
  1. Node.js と npm をインストールします Node.js のウェブサイトの手順に従って、最新バージョンの Node.js と npm をインストールします。

  2. 依存関係をインストールします

cd here-maps-mcp-server/src/node
npm install
  1. 認証ガイド(API キー)を確認して、HERE Maps API キーを取得します

  2. MCP サーバーを実行します

HERE_MAPS_API_KEY=<YOUR_HERE_API_KEY> npx .

これにより、「npm run build」コマンドが自動的に実行され、MCP サーバープロジェクトがビルドされた後、サーバーが起動します。次のメッセージが表示されます。

HERE Maps MCP Server running on stdio

これは、MCP サーバーが実行中で、MCP リクエストを受け付ける準備ができていることを意味します。「Ctrl-C」でサーバーを停止できます。通常は、Claude などのクライアントアプリケーションで MCP サーバーを設定します。適切に設定すると、クライアントがサーバーを自動的に起動します。

MCP の設定

  1. MCP サーバーの設定を MCP クライアント(例:Claude)に追加します。 「Settings」->「Developer」->「Edit Config」
    {
      "mcpServers": {
      "here-maps": {
        "command": "npx",
        "args": [
          "-y",
          "/<You local checkout directory of this project>/src/node"
        ],
        "env": {
          "HERE_MAPS_API_KEY": "<YOUR_HERE_API_KEY>"
        }
      }
     }
    }
    
  2. Claude など、一部の MCP クライアントでは、新しい設定を反映するためにアプリを再起動する必要があります。

使用例:

  1. ベルリン中心部にあるフランス料理店を探してください。 これにより、ベルリン中心部の地理座標を調べるためのジオコードツール呼び出しが行われます。次に、場所検索ツールが呼び出されます。以下は出力例です。検索結果の出力は省略されています。
    I'd be happy to help you find some French restaurants in central Berlin. Let me search for places that should suit your needs.
    maps_geocode
    Request{
      `address`: `Central Berlin, Germany`
    }
    Response{
      "location": {
         "lat": 52.52427,
         "lng": 13.4026
      },
      "address": "Central, Rosenthaler Straße 39, 10178 Berlin, Deutschland",
      "id": "here:pds:place:276u33db-602fbe3989e243d38221c312af23a0e1"
    }
    Now I'll search for French restaurants in this area
    maps_search_places
    Request{
      `query`: `French restaurant`,
      `latitude`: 52.52427,
      `longitude`: 13.4026
    }
    Response[
      {
        "name": "Oxymoron",
        "address": "Oxymoron, Rosenthaler Straße 40, 10178 Berlin, Deutschland",
        "position": {
          "lat": 52.52401,
          "lng": 13.40249
        },
        "category": "Restaurant"
      },
      {
        "name": "Barist",
        "address": "Barist, Am Zwirngraben 13, 10178 Berlin, Deutschland",
        "position": {
          "lat": 52.5229,
          "lng": 13.4024
        },
        "category": "Bar oder Pub"
      }
      ......<Abbreviated>
    ]
    Here are some excellent French restaurants in central Berlin:
    
    L'Ami Fritz - Located on Max-Beer-Straße 29, this authentic French restaurant is right in the heart of central Berlin.
    Sucre Et Sel - Found on Torstraße 132, offering French cuisine with a name that means "Sugar and Salt" in French.
    Ratatouille Berlin - Located on Ackerstraße 2, named after the famous French dish and likely offering traditional French fare.
    Bandol sur Mer - A more upscale French restaurant on Torstraße 167, named after a coastal town in southern France known for its wines.
    Cafe Fleury - On Weinbergsweg 20, a French-style café that likely offers classic French breakfast and lunch options.
    Brasserie Torbar - Found on Torstraße 183, a brasserie-style restaurant offering French cuisine.
    Les Pâtisseries de Sébastien - While primarily a patisserie on Invalidenstraße 157, this is perfect if you're looking for authentic French pastries and desserts.
    
    All these establishments are located within central Berlin and are within relatively close proximity to one another. Would you like more specific information about any of these restaurants?RetryClaude can make mistakes. Please double-check responses.You are out of free messages until 2:00 AMUpgrade plan5 3.7 SonnetChat controls 3.7 SonnetOur most intelligent model yet Learn more
    
  2. ライニッケンドルフからミッテまでのルートを計算できますか? これにより、ライニッケンドルフとミッテ(ベルリンの2つの地区)の地理座標を調べるため、ジオコードツールが2回呼び出されます。次に、ルート検索(経路案内)ツールが呼び出されます。出力はClaudeで確認できます。
  3. パリ中心部の交通状況はどうですか? これにより、パリ中心部の地理座標を調べるため、ジオコードツールが2回呼び出されます。次に、交通インシデントツールが呼び出されます。出力はClaudeで確認できます。
  4. パリ中心部の地図を表示できますか? これにより、パリ中心部の地理座標を調べるためのジオコードツール呼び出しが行われます。次に、表示ツールが呼び出されます。 Claudeでは、地図はツール呼び出し結果内の画像としてチャットウィンドウに表示されます。また、画像のURLも返されます。URLをコピーしてブラウザーに貼り付けると、画像を表示できます。URLにはAPIキーが含まれているため、チャット履歴を共有することはおすすめしません。 README の画像

開発

デバッグを簡単にするために、MCP inspector toolの使用をおすすめします。ローカルのウェブサーバーが起動します。入力パラメーターに対して各ツール呼び出しが期待どおりの結果を返すかどうかを簡単に確認できます。このプロジェクトでは、次のコマンドを実行してMCP inspector toolを起動できます。

cd src/node
npm run build && npx @modelcontextprotocol/inspector -e HERE_MAPS_API_KEY=<YOU_HERE_API_KEY> node dist/index.js

その他の地図サービス向けMCPサーバー

貢献

このリポジトリを自由にフォークして、ニーズに合わせて変更してください。ツールの定義や実装の詳細を改善したい場合は、ぜひ貢献してください。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。