本文へ移動
マニュアル / v0.4.0

Google Cloud の設定 ​

この実行ファイルは API キーまたは OAuth 2.0 認証情報で Google への外向き呼び出しを認証します。MCP HTTP サーバーに接続するクライアントの認証には独立した MCP_HTTP_TOKEN を使い、Google OAuth を選んでも置き換わりません。

サービスと課金の有効化 ​

Google Cloud コンソールでプロジェクトを選択または作成し、Billing で有効な請求先アカウントに関連付けます。APIs & Services → Library で必要な API を有効化してください。API の有効化と API キーの制限での許可は別の手順です。呼び出しには料金が発生する場合があります。

このバージョンで利用するエンドポイントは次のとおりです。

Google API有効化するサービスこの実装での認証
Places API (New)places.googleapis.comAPI キーまたは OAuth
Routes APIroutes.googleapis.comAPI キーまたは OAuth
Weather APIweather.googleapis.comAPI キーまたは OAuth
Air Quality APIairquality.googleapis.comAPI キーまたは OAuth
Address Validation APIaddressvalidation.googleapis.comAPI キーまたは OAuth
Places Aggregate APIareainsights.googleapis.comAPI キーまたは OAuth
Pollen APIpollen.googleapis.comAPI キー
Roads APIroads.googleapis.comAPI キー
Geocoding API v3geocoding-backend.googleapis.comAPI キー
Elevation APIelevation-backend.googleapis.comAPI キー
Time Zone APItimezone-backend.googleapis.comAPI キー
Maps Static APIstatic-maps-backend.googleapis.comAPI キー

管理者の gcloud ログインで全 12 サービスを有効化するには、次を実行します。

sh
export PROJECT_ID='your-project-id'
gcloud services enable --project="$PROJECT_ID" \
  places.googleapis.com routes.googleapis.com \
  weather.googleapis.com airquality.googleapis.com \
  geocoding-backend.googleapis.com elevation-backend.googleapis.com \
  timezone-backend.googleapis.com static-maps-backend.googleapis.com \
  addressvalidation.googleapis.com areainsights.googleapis.com \
  pollen.googleapis.com roads.googleapis.com

CLI の directions と distance-matrix は Routes API を使うため、従来の Directions API と Distance Matrix API は不要です。このプロジェクトの Geocoding は v3 のままであり、Google Geocoding v4 の OAuth 対応は v3 呼び出しの認証方式を変更しません。複合ツールは複数の API を使うことがあります。主処理が Places や Routes でも、名前による場所解決やフォールバックで Geocoding が必要になる場合があります。この依存を避ける場合は座標を使うか、キー専用エンドポイント用に制限付きキーを保持してください。

制限付き API キーの作成 ​

  1. 選択したプロジェクトの Google Maps Platform → Keys & Credentials を開き、Create credentials → API key を選びます。
  2. このインスタンスが使う表内の API だけを選択します。既存のキーでは API 制限を編集して保存します。
  3. サーバー側アプリケーションなので、アプリケーション制限を IP addresses にします。Google が見る公開送信元 IP を許可してください。通常、Kubernetes の Pod IP・プライベート IP は公開送信元ではありません。固定 Cloud NAT などの送信元アドレスを用意すると制限を予測しやすくなります。
  4. キーは Git 管理対象外の .env、環境変数注入、Kubernetes Secret に保存します。Google のキー制限ガイドを参照してください。

.env の例:

dotenv
GOOGLE_MAPS_AUTH_MODE=api-key
GOOGLE_MAPS_API_KEY=your-restricted-api-key

既定値は api-key です。サービスアカウントのパスを指定するだけでは認証モードは変わりません。ツール検出は Google に接続しないため、実際の呼び出しでプロジェクトの課金、API の有効化、制限を確認してください。

sh
mcp-gmap-rs geocode --address 'Paris, France'

次のステップ ​

サービスアカウント JSON、ADC、ローカルでの権限借用、GKE の ID は認証を参照し、その後 CLI または MCP を選んでください。ツールリファレンスに各ツールの認証要件を記載しています。

追加サービスと制限 ​

Solar と Map Tiles も OAuth に対応します。Datasets と Route Optimization は OAuth と操作別の IAM 権限が必要です。Street View Publish は明示的な authorized_user 認証情報ファイルと streetviewpublish スコープへのユーザー同意が必要です。

サービスAPI認証
Geolocation APIgeolocation.googleapis.comAPI キー
Solar APIsolar.googleapis.comAPI キー / OAuth
Aerial View APIaerialview.googleapis.comAPI キー
Map Tiles APItile.googleapis.comAPI キー / OAuth
Street View Static APIstreet-view-image-backend.googleapis.comAPI キー
Maps Platform Datasets APImapsplatformdatasets.googleapis.comOAuth / IAM
Route Optimization APIrouteoptimization.googleapis.comOAuth / IAM
Street View Publish APIstreetviewpublish.googleapis.com同意済みユーザー OAuth。サービス アカウントは不可

Speed Limits は制限付きの Asset Tracking 利用資格が必要です。Aerial View は対応する米国の住所に限られ、動画のダウンロードやキャッシュは禁止です。Map Tiles は表示専用で、機械による分析やデータ抽出は禁止されています。Weather の分単位予報と地図は実験機能で、キャッシュは最大 1 時間、追加の利用制限があります。各ツールのリファレンスに利用条件、帰属表示、制限を記載しています。

Google: Speed Limits, Map Tiles, Aerial View, Street View Publish.