/ ディレクトリ / プレイグラウンド / mcp-google-map
● コミュニティ cablate ⚡ 即起動

mcp-google-map

作者 cablate · cablate/mcp-google-map

Geocoding, directions, Places, elevation, timezones, even weather and air quality — 18 Google Maps tools exposed to Claude for location-aware tasks.

mcp-google-map wraps Google's Places (New) and Routes APIs plus several sibling APIs into 14 atomic + 4 composite tools. The composite tools (explore-area, plan-route, compare-places, local-rank-tracker) handle common multi-call workflows in one shot to save tokens and Google quota.

なぜ使うのか

主な機能

ライブデモ

実際の動作

google-map.replay ▶ 準備完了
0/0

インストール

クライアントを選択

~/Library/Application Support/Claude/claude_desktop_config.json  · Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "google-map": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-google-map"
      ],
      "_inferred": true
    }
  }
}

Claude Desktop → Settings → Developer → Edit Config を開く。保存後、アプリを再起動。

~/.cursor/mcp.json · .cursor/mcp.json
{
  "mcpServers": {
    "google-map": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-google-map"
      ],
      "_inferred": true
    }
  }
}

Cursor は Claude Desktop と同じ mcpServers スキーマを使用。プロジェクト設定はグローバルより優先。

VS Code → Cline → MCP Servers → Edit
{
  "mcpServers": {
    "google-map": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-google-map"
      ],
      "_inferred": true
    }
  }
}

Cline サイドバーの MCP Servers アイコンをクリックし、"Edit Configuration" を選択。

~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "google-map": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-google-map"
      ],
      "_inferred": true
    }
  }
}

Claude Desktop と同じ形式。Windsurf を再起動して反映。

~/.continue/config.json
{
  "mcpServers": [
    {
      "name": "google-map",
      "command": "npx",
      "args": [
        "-y",
        "mcp-google-map"
      ]
    }
  ]
}

Continue はマップではなくサーバーオブジェクトの配列を使用。

~/.config/zed/settings.json
{
  "context_servers": {
    "google-map": {
      "command": {
        "path": "npx",
        "args": [
          "-y",
          "mcp-google-map"
        ]
      }
    }
  }
}

context_servers に追加。保存時に Zed がホットリロード。

claude mcp add google-map -- npx -y mcp-google-map

ワンライナー。claude mcp list で確認、claude mcp remove で削除。

ユースケース

実用的な使い方: mcp-google-map

Track your Google Maps ranking for key searches across zip codes

👤 Local SEO specialists, restaurant / service businesses ⏱ ~20 min intermediate

使うタイミング: You want to know where your business ranks for 'best pizza' in 20 zip codes around town, refreshed weekly.

前提条件
  • Google Maps API key with Places (New) enabled — Google Cloud Console > Enable APIs
フロー
  1. Use the composite local-rank-tracker tool
    Run local-rank-tracker for business 'Tony's Pizza' (place_id: [id]) on query 'pizza near me' across these 20 coordinates [list lat/lng].✓ コピーしました
    → Per-location rank (or 'not in top 20')
  2. Store history
    Save results to ./rank-history/YYYY-MM-DD.json. Diff against last week.✓ コピーしました
    → Week-over-week delta

結果: Weekly local rank report without paying a SaaS SEO tool.

注意点
  • Google's Places API cost adds up — ~$17 per 1000 calls — Batch the locations; limit to key zip codes; cache for 7 days
組み合わせ: filesystem

Plan a multi-stop day trip with driving time and elevation

👤 Travelers, travel bloggers ⏱ ~10 min beginner

使うタイミング: Planning a road trip and want optimized stop order + realistic drive times.

フロー
  1. Describe the stops
    I want to visit Yosemite Valley, Mariposa Grove, Tunnel View, Glacier Point — in one day starting from Merced. Optimize the order and give drive times.✓ コピーしました
    → Ordered stops + per-leg drive minutes
  2. Add context
    For each stop, get elevation and the current weather.✓ コピーしました
    → Annotated itinerary

結果: A sane itinerary with real-world durations.

注意点
  • Routes API uses traffic-aware estimates only at query time — Re-query the morning of the trip for realistic drive times

Compare candidate locations for a new retail store

👤 Real estate analysts, franchise planners ⏱ ~30 min intermediate

使うタイミング: You're deciding between 3 candidate addresses for a new storefront. Foot traffic, competitor proximity, demographic proxies matter.

フロー
  1. Reverse-geocode each candidate
    For these 3 addresses, get coordinates and neighborhood.✓ コピーしました
    → 3 geocoded results
  2. Use compare-places
    For each location, count competitors within 1km (category: coffee shop). List top 10 nearby businesses.✓ コピーしました
    → Per-site competitive density + anchor tenants
  3. Assess traffic corridors
    For each, get drive-time from the nearest highway exit and major residential zip code.✓ コピーしました
    → Accessibility score

結果: Data-backed site recommendation you can defend in a meeting.

注意点
  • Google Places is not a substitute for actual foot-traffic data — Use as a first-pass filter; combine with Placer.ai or county permit data for final decision

組み合わせ

他のMCPと組み合わせて10倍の力を

google-map + filesystem

Store weekly rank-tracker snapshots to disk, diff over time

Run local-rank-tracker for my business, save to /reports/rank/YYYY-MM-DD.json.✓ コピーしました
google-map + postgres

Enrich customer addresses in your DB with lat/lng for map dashboards

For each row in customers where lat IS NULL, geocode the address and UPDATE with lat/lng. Stop at 500/day to respect quota.✓ コピーしました

ツール

このMCPが提供する機能

ツール入力呼び出すタイミングコスト
geocode address: str Address → coordinates $5 / 1000 calls
reverse_geocode lat, lng Coordinates → address $5 / 1000
directions origin, destination, mode?, waypoints? Turn-by-turn or drive-time $5-10 / 1000
places_search query, location?, radius? Find businesses by keyword near a point $17-32 / 1000 (New Places)
place_details place_id After places_search to get hours, phone, website $17+ / 1000
explore-area center, radius, categories[] Composite — one shot neighborhood survey bundled
plan-route stops[], mode, optimize?: bool Multi-stop trip planning bundled
compare-places places[], categories[] Site selection or evaluation bundled
local-rank-tracker query, place_id, locations[] Local SEO audits N * places_search cost

コストと制限

運用コスト

APIクォータ
Google: $200/mo free credit covers ~12k geocodes or ~10k Places (New) Autocomplete/Details
呼び出しあたりのトークン
Tool results 500-3000 tokens; trim via GOOGLE_MAPS_ENABLED_TOOLS to reduce schema overhead
金額
Pay Google directly. See cloud.google.com/maps-platform/pricing.
ヒント
Places (New) is the expensive one. Use geocode (cheap) when you just need coordinates, not business data. Cache place_id aggressively.

セキュリティ

権限、シークレット、影響範囲

最小スコープ: Enable only the APIs you actually use
認証情報の保管: GOOGLE_MAPS_API_KEY env var. Restrict the key to your IP / referrer.
データ送信先: All queries to maps.googleapis.com
絶対に付与しない: Unrestricted key on a shared machine — anyone can burn your quota

トラブルシューティング

よくあるエラーと対処法

REQUEST_DENIED / API key not valid

API isn't enabled or key restrictions block your IP. Check GCP Console > APIs & Services > Credentials.

確認: curl 'https://maps.googleapis.com/maps/api/geocode/json?address=NYC&key=$KEY'
OVER_QUERY_LIMIT

You've blown the $200 monthly free tier, or Google is throttling per-second. Back off + batch.

確認: GCP Billing > Reports
Empty results for obvious queries

Places (New) requires explicit field masks on some calls. Update to latest npm version.

代替案

mcp-google-map 他との比較

代替案代わりに使う場面トレードオフ
OpenStreetMap Nominatim MCPFree, no API key, non-commercial use OKLess rich data; rate-limited to 1 rps
Mapbox MCPYou prefer Mapbox's styling and routingDifferent pricing and data model

その他

リソース

📖 GitHub の公式 README を読む

🐙 オープンな issue を見る

🔍 400以上のMCPサーバーとSkillsを見る