Model Context Protocol(MCP) は、大規模言語モデル(LLM)が外部のデータやアプリケーションと安全にやり取りできるようにするオープン標準です。Google 広告 MCP サーバー は、Google Ads API への標準化されたブリッジを提供します。これにより、AI エージェントは自然言語を使用してキャンペーン データを分析して取得できます。
コミュニティ リソースとサポート
GitHub リポジトリ: デモやサンプルを確認したり、google-ads-mcp リポジトリでバグを報告したり、機能の提案を行ったりできます。
バグ の報告や機能のリクエストには、[Issues] タブを使用してください。
コミュニティ:
#ads-api-ai-toolsチャンネルに参加してください。 Google 広告コミュニティ Discord
技術的概要
この MCP サーバーを実装することで、Google Ads API の認証、リソースの取得、データの解析を行うカスタムの「グルーコード」を作成する必要がなくなります。 サーバーは、LLM が自律的に検出して呼び出すことができる特定のツール を公開します。
主な仕様
- プロトコル: MCP(Model Context Protocol)
- モード: 読み取り専用 (現在のリリース)
- 言語: Python
- トランスポート: 標準入出力(
stdio) - 認証: OAuth 2.0 またはサービス アカウント
インタラクション ループの仕組み
- リクエスト: ユーザーが「今週のキャンペーンのパフォーマンスはどうですか?」などのクエリを送信します。
- 検出: LLM は利用可能なツールを検査し、
google-ads-mcpの検索機能を特定します。 - 実行: MCP サーバーは、基盤となる Python ロジックを実行して Google Ads API にクエリを実行します。
- コンテキスト インジェクション: 構造化された結果が LLM のコンテキスト ウィンドウに返されます。
- レスポンス: LLM はデータを合成して、人が読める回答を生成します。
始める
Google 広告 MCP サーバーを構成して使用する手順は次のとおりです。
前提条件
構成を行う前に、 Google Ads デベロッパー コンソールから次の認証情報を取得していることを確認してください。
- 開発者トークン: 一意の 22 文字のアクセス文字列。
- プロジェクト ID: Google Cloud プロジェクトの識別子。
- OAuth 認証情報: OAuth2 クライアント ID/クライアント シークレットのペア、または アプリケーションのデフォルト認証情報のセット。
構成
サーバーを MCP 互換のホストに統合するには、ホストの MCP 構成ファイル(settings.json など)に次のエントリを追加します。この構成の正確な場所とファイル名については、ホストのドキュメントをご覧ください。
JSON
{
"mcpServers": {
"google-ads-mcp": {
"command": "pipx",
"args": [
"run",
"--spec",
"git+https://github.com/googleads/google-ads-mcp.git",
"google-ads-mcp"
],
"env": {
"GOOGLE_PROJECT_ID": "YOUR_PROJECT_ID",
"GOOGLE_ADS_DEVELOPER_TOKEN": "YOUR_DEVELOPER_TOKEN"
}
}
}
}
Google Cloud へのデプロイ
この MCP サーバーをローカルでホストする代わりに、Google Cloud Run または他のクラウドベースのインフラストラクチャでホストできます。これは、複数のエージェント間でサーバーを共有する場合や、ウェブサービスとして実行する場合に便利です。
前提条件
- Google Cloud プロジェクト。
gcloudコマンドライン ツールがインストールされ、 認証され、アクティブなプロジェクトが構成されていること。gcloud config set project YOUR_PROJECT_ID
Docker イメージをビルドして push する
Cloud Build を使用すると、Docker をローカルにインストールしなくても、イメージをビルドして Artifact Registry に push できます。
Artifact Registry にリポジトリを作成します。
gcloud artifacts repositories create mcp-servers --repository-format=docker --location=us-central1イメージをビルドして送信します。
gcloud builds submit --tag us-central1-docker.pkg.dev/YOUR_PROJECT_ID/mcp-servers/google-ads-mcp:latest .デプロイされたサーバーを最新バージョンに更新する場合は、この手順を行う必要があります。
Google Cloud Run にデプロイ
必要な環境変数を設定してください。
GOOGLE_PROJECT_ID: Google Cloud プロジェクト ID。GOOGLE_ADS_DEVELOPER_TOKEN: MCP サーバーで使用する開発者トークン 。GOOGLE_ADS_MCP_OAUTH_CLIENT_ID: MCP サーバーで使用する OAuth クライアント ID。GOOGLE_ADS_MCP_OAUTH_CLIENT_SECRET: MCP サーバーで使用する OAuth クライアント シークレット。GOOGLE_ADS_MCP_BASE_URL: MCP サーバーにアクセスできるベース URL。これは、最初のデプロイ後に Google Cloud Run によって自動的に割り当てられます。環境変数はデプロイ後に更新できます。FASTMCP_HOST: FastMCP がすべての IP アドレスからの接続を受け入れるようにするには、これを 0.0.0.0 に設定します。
gcloud run deploy google-ads-mcp \
--image us-central1-docker.pkg.dev/YOUR_PROJECT_ID/mcp-servers/google-ads-mcp:latest \
--platform managed \
--region us-central1 \
--allow-unauthenticated \
--set-env-vars="GOOGLE_PROJECT_ID=YOUR_PROJECT_ID,GOOGLE_ADS_DEVELOPER_TOKEN=YOUR_DEVELOPER_TOKEN,GOOGLE_ADS_MCP_OAUTH_CLIENT_ID=YOUR_CLIENT_ID,GOOGLE_ADS_MCP_OAUTH_CLIENT_SECRET=YOUR_CLIENT_SECRET,GOOGLE_ADS_MCP_BASE_URL=YOUR_BASE_URL,FASTMCP_HOST=0.0.0.0"
MCP クライアントを構成する
デプロイ後、Cloud Run URL を使用するように MCP クライアント構成(~/.gemini/settings.json など)を更新します。
{
"mcpServers": {
"google-ads-mcp": {
"httpUrl": "https://your-cloud-run-url.a.run.app/mcp"
}
}
}
中核となる機能(ツール)
サーバーは、アカウントの検出とパフォーマンス レポート用に設計されたツールを公開します。
list_accessible_customers: 認証済みユーザーがアクセスできる Google 広告のお客様 ID とアカウント名のリストを返します。search: Google 広告クエリ言語(GAQL)リクエストを実行して、リソース指標、予算、ステータスを取得します。get_resource_metadata: Google Ads API リソースタイプ(「キャンペーン」など)に関するメタデータを取得します。これは、データの構造と、クエリに使用できるフィールドを把握するのに役立ちます。
始めるにあたって役立つプロンプトの例
サーバーでできることを尋ねる:
What can the google-ads-mcp server do?
お客様について尋ねる:
What customers do I have access to?
キャンペーンについて尋ねる:
How many active campaigns do I have?
How is my campaign performance this week?
Give me a report of the top spending campaigns split by device category over the
last 7 days for account 1234567890