Mapsi Mcp について
Mapsi Mcpは、AIコーディングアシスタントからMapsiのOpenStreetMapベースの地理空間APIを利用できるMCPサーバーです。住所検索、経路、空間分析、地図出力など18種類のツールを備え、一括処理にも対応します。
主な機能
- 01ジオコーディングと住所正規化
- 02経路検索と到達圏
- 03移動マトリックスとGPS軌跡のマップマッチング
- 04場所・標高・タイムゾーン検索
- 05H3セルとポリゴン判定
- 06一括ジオコーディングと地図URL
活用シーン
- 01住所データに座標を追加
- 02近隣施設や経路の検索
- 03地点周辺のサービス圏を分析
- 04Mapsiタイルや静的地図を表示
MCP 対応
MCP対応クライアントにMapsiの地理空間ツール18種類を公開します。設定されたMapsi APIキーでAPI呼び出しを認証します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
18掲載時のツール一覧 · 3 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| q | string | はい | ジオコーディングする完全な住所または場所名。 |
| countries | string | いいえ | 検索結果の優先指定に使用する ISO 3166-1 alpha-2 国コード。カンマ区切りで最大 4 個。ユーザーの国がわかっている場合は必ず渡してください。 |
| limit | integer | いいえ | 返す結果の最大数。デフォルトは 5、最大は 25 です。最適な候補を 1 件だけ必要とする場合は 1 を指定してください。 |
| lang | string | いいえ | 応答言語コード(BCP 47)。デフォルト:en。 |
| focus.lat | number | いいえ | 結果の優先順位付けに使う緯度(例:ユーザーの現在地)。範囲:-90~90。 |
| focus.lon | number | いいえ | 結果の優先順位付けに使う経度。範囲:-180~180。 |
詳細
mapsi-mcp
Mapsi 向けの MCP サーバー — AI コーディングアシスタント向けの 18 種類の地理空間ツールです。Claude Code、Cursor、Windsurf、または MCP 対応 IDE を Mapsi API に直接接続できます。
OpenStreetMap ベース · セルフホスト可能なインフラストラクチャ · Google Maps ベンダーへのロックインなし
クイックスタート
1. API キーを取得します:mapsi.dev/console/api-keys(無料枠:1 日あたり 1,000 回、クレジットカード不要)
2. IDE に設定を追加します:
Claude Code / Claude Desktop
~/.claude.json(またはプロジェクトルートの .mcp.json)に追加します:
{
"mcpServers": {
"mapsi": {
"command": "npx",
"args": ["-y", "mapsi-mcp"],
"env": { "MAPSI_API_KEY": "msk_your_key_here" }
}
}
}
Cursor
~/.cursor/mcp.json に追加します:
{
"mcpServers": {
"mapsi": {
"command": "npx",
"args": ["-y", "mapsi-mcp"],
"env": { "MAPSI_API_KEY": "msk_your_key_here" }
}
}
}
Windsurf
~/.codeium/windsurf/mcp_config.json に追加します — 上記の Cursor と同じ JSON 形式です。
VS Code + Cline
Cline の設定 → MCP サーバー → サーバーを追加 → 次を貼り付けます:
{
"mapsi": {
"command": "npx",
"args": ["-y", "mapsi-mcp"],
"env": { "MAPSI_API_KEY": "msk_your_key_here" }
}
}
Zed
Zed の設定の "context_servers" の下に追加します:
{
"mapsi-mcp": {
"command": { "path": "npx", "args": ["-y", "mapsi-mcp"] },
"env": { "MAPSI_API_KEY": "msk_your_key_here" }
}
}
3. IDE を再起動します — その後、AI に自然な英語で質問します。
AI にできること
Geocode all addresses in my CSV and add lat/lon columns
Build an address autocomplete input for this React form using Mapsi
Draw a 20-minute drive isochrone from our warehouse at this coordinate
Find the 5 nearest hospitals to this coordinate
Migrate this Google Maps geocoding call to Mapsi
Add a MapLibre map with Mapsi light tiles and drop markers from this array
Calculate a distance matrix between 10 warehouses and 50 delivery stops
Snap this GPS trace to the road network and calculate total distance
利用可能なツール(18 種類)
ジオコーディング
| ツール | 説明 |
|---|---|
geocode | 住所または地名 → 緯度/経度。信頼度スコア(0~1)を返します。0.6 未満のスコアは曖昧な結果として扱ってください。 |
reverse_geocode | 緯度/経度 → 形式化された住所、通り、市区町村、郵便番号、国。 |
autocomplete | ユーザーの入力に応じたリアルタイムの住所候補(最低 2 文字)。UI の入力フィールド向けです。 |
normalize_address | 不規則な住所や一貫性のない住所を標準化します。構造化フィールドと座標を返します。 |
timezone | 任意の座標に対する IANA タイムゾーン名、UTC オフセット、夏時間の状態。 |
elevation | 任意の座標の標高(メートル単位、全世界で約 30 m の解像度)。 |
ルーティング
| ツール | 説明 |
|---|---|
route | ターンバイターンの経路案内。モード:auto、truck、bicycle、pedestrian、motor_scooter。 |
isochrone | N 分または N メートル以内に到達できる範囲のポリゴン。MapLibre/Leaflet 用の GeoJSON を返します。 |
matrix | 1 回の呼び出しで、最大 50×50 の出発地と目的地の組み合わせについて所要時間と距離の行列を返します。 |
map_match | GPS の軌跡を道路網にスナップします。座標の順序は [lon, lat] です(GeoJSON)。 |
nearest_road | 経路探索可能な最寄りの道路上の地点を検索します。route が "no route found" を返した場合に呼び出してください。 |
場所
| ツール | 説明 |
|---|---|
places_search | カテゴリ(レストラン、病院、薬局、ATM など)で近隣の POI を検索します。名前、座標、カテゴリを返します。 |
空間
| ツール | 説明 |
|---|---|
point_in_polygon | 座標の行政区分階層:国、地域、市区町村、近隣地区。 |
h3_index | 座標を解像度 0~15 の H3 六角形グリッドセルに変換します。 |
バッチ
| ツール | 説明 |
|---|---|
batch_geocode | 1 回の呼び出しで最大 30,000 件の住所をジオコーディングします。大量のデータに対して geocode をループで呼び出さないでください。 |
batch_reverse_geocode | 1 回の呼び出しで複数の座標をリバースジオコーディングします。 |
タイル
| ツール | 説明 |
|---|---|
get_tile_style_url | MapLibre GL のスタイル URL。スタイル:light、dark、streets、topo、grayscale、black、white、liberty。 |
get_static_map_url | <img> タグ、メール、PDF で使用する静的 PNG 地図の URL。 |
認証
- API 呼び出し:
X-API-Keyヘッダー(MCP サーバーが自動的に処理します) - タイル URL:
?key=クエリパラメーター(ブラウザーで安全に使用できます。get_tile_style_urlが返します)
エージェント向けの一般的なパターン
ジオコーディングは一度だけ行い、結果を再利用します:
Don't re-geocode the same address twice within a session. Cache the lat/lon and pass it directly to route, isochrone, and places_search.
大量のデータにはバッチツールを使用します:
For more than 1 address or coordinate pair, always use batch_geocode / batch_reverse_geocode.
経路探索に失敗した場合は、最初に nearest_road を使用します:
If route returns an error near the origin or destination, call nearest_road to snap the point to a routable road, then retry route with the snapped coordinates.
Isochrone — 時間と距離:
Use contours_minutes for time-based reachability (delivery ETAs, commute zones).
Use contours_meters for fixed-radius circles on the road network.
Provide only one, not both.
料金
| プラン | 1 日あたりの呼び出し数 | バッチサイズ |
|---|---|---|
| 無料 | 1,000 | 10 |
| Growth | 50,000 | 5,000 |
| Business | 無制限 | 30,000 |
詳しい料金は mapsi.dev/pricing をご覧ください。
Links
- Website: mapsi.dev
- API docs: mapsi.dev/docs
- AI prompts: mapsi.dev/prompts-for-ai
- npm: npmjs.com/package/mapsi-mcp
- GitHub: github.com/algolayer/mapsi-mcp
- Support: [email protected]
License
MIT — algolayer.com
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。