Skip to main content
Glama
trip-clear

google-ads-mcp

by trip-clear

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
GOOGLE_ADS_CLIENT_IDYesOAuth クライアント ID (OAuth client ID). Required. Created in Google Cloud Console with the Google Ads API enabled (Desktop app type).
GOOGLE_ADS_READ_ONLYNo`true` にすると書き込みツールを公開しません (Set to `true` to not expose write tools). Optional.
GOOGLE_ADS_API_VERSIONNoAPI バージョン (API version). Optional; default is `v25`.v25
GOOGLE_ADS_CUSTOMER_IDNo既定の顧客 ID (Default customer ID). Optional. The 10-digit ID of the account serving ads (not the MCC ID); can be overridden per tool via the `customer_id` argument.
GOOGLE_ADS_CLIENT_SECRETYesOAuth クライアントシークレット (OAuth client secret). Required. Created alongside the OAuth client ID in Google Cloud Console.
GOOGLE_ADS_REFRESH_TOKENYesrefresh token. Required. Obtained by running the `auth` command.
GOOGLE_ADS_DEVELOPER_TOKENYes開発者トークン (Developer token). Required. Obtainable from the MCC account's API Center; Basic access or above is needed to operate production accounts.
GOOGLE_ADS_LOGIN_CUSTOMER_IDNoMCC 経由で子アカウントを操作するときの MCC の ID (MCC ID when operating child accounts through an MCC). Optional.

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
google_ads_list_accessible_customersA

連携した Google アカウントが直接アクセスできる顧客 ID を一覧する。**読み取り専用。**名前は返らないので、google_ads_account_info で確かめる。

google_ads_account_infoA

顧客アカウントの名前・通貨・タイムゾーン・MCC かどうかを返す。**読み取り専用。**疎通確認と、予算を触る前の通貨確認に使う。

google_ads_reportA

Google 広告の実績(費用・表示・クリック・CV・CV 値)を取得する。読み取り専用。costMicros は 100 万で割ると通貨 1 単位(通貨に依らず一律)。conversions は小数になりうる。int64 の項目は proto3 JSON の規則で文字列として返る。CTR / CPC は返り値から自分で計算すること。

google_ads_list_objectsA

キャンペーン / 広告グループ / 広告を一覧する。**読み取り専用。**配信状態は ENABLED / PAUSED(ACTIVE ではない)。日予算はキャンペーンにしか無い。REMOVED は除外する。

google_ads_searchA

任意の GAQL(Google Ads Query Language)を googleAds:searchStream で実行する。**読み取り専用。**型付きツールで取れない項目(検索語句・キーワード別実績・アセット・地域別など)に使う。フィールド名は snake_case(例: SELECT campaign.name, metrics.clicks FROM campaign WHERE segments.date DURING LAST_30_DAYS)。返り値のキーは camelCase、int64 は文字列。

google_ads_keywordsA

Keyword Planner でキーワードの月間平均検索ボリューム・競合性・入札レンジを取る。**読み取り専用。**入札額はマイクロ単位(1,000,000 = 通貨 1 単位)。関連キーワードの候補も返る。

google_ads_create_budgetA

キャンペーン予算を作る。Google 広告では予算がキャンペーンとは別のリソースなので、キャンペーンより先にこれを作る。金額は通貨 1 単位(円なら円)で渡す——マイクロ換算はサーバー側で行う。

google_ads_create_campaignA

キャンペーンを作る(検索 / P-MAX)。既定は PAUSED(作成と配信開始は別の操作にする)。budget_resource_name は google_ads_create_budget の戻り値。検索では検索パートナー・ディスプレイへの配信を既定で切ってある。P-MAX に手動入札は無く、広告グループも広告も無い(代わりに google_ads_create_asset_group でアセットグループを作る。無いと配信できない)。

google_ads_create_ad_groupA

検索キャンペーンに広告グループを作る。日予算は持てない——Google 広告の予算はキャンペーンにしかない。既定は PAUSED。

google_ads_add_keywordsA

広告グループにキーワードを追加する。negative=true で除外キーワードになる(あとから通常のキーワードには変えられないので、間違えたら消して作り直すことになる)。

google_ads_create_responsive_search_adA

レスポンシブ検索広告を作る。見出しは 3〜15 本(各 30 文字以内)、説明文は 2〜4 本(各 90 文字以内)。字数は全角を 2 と数えるので、日本語では上限が半分(見出し 15 / 説明文 45)。既定は PAUSED。

google_ads_create_asset_groupA

P-MAX のアセットグループを作る(P-MAX に広告グループも広告も無い)。テキスト・画像・アセットグループ・リンクを1 回の mutate で作る(Google の要求)。画像はローカルのファイルパスか http(s) の URLで指定する(1 枚 5120 KB まで)。必須: 見出し 3〜15(30字)/ 長い見出し 1〜5(90字)/ 説明 2〜5(90字)/ ビジネス名 1(25字)/ 横長画像 1〜20(1.91:1)/ 正方形画像 1〜20(1:1)/ ロゴ 1〜5(1:1)。字数は全角を 2 と数えるので、日本語では上限が半分。1 つでも足りないと Google がリクエスト全体を拒否するので、先に validate_only=true で検算するとよい。既定は PAUSED。

google_ads_update_statusA

キャンペーン / 広告グループ / 広告の配信を開始(ENABLED)・停止(PAUSED)する。配信中は ENABLED(ACTIVE ではない)。ENABLED にすると課金が始まりうる。広告(kind=ad)の ID は「広告グループID~広告ID」の複合キー。削除は google_ads_remove。

google_ads_update_budgetA

キャンペーン予算の日予算を変える。宛先はキャンペーンではなく予算リソース(google_ads_list_objects が返す campaignBudget.id)。金額は通貨 1 単位(円なら円)。

google_ads_removeA

キャンペーン / 広告グループ / 広告を削除する。**元に戻せない。**止めたいだけなら google_ads_update_status で PAUSED にする。広告(kind=ad)の ID は「広告グループID~広告ID」の複合キー。

google_ads_mutateA

型付きツールで足りない書き込みを通す最後の手段(googleAds:mutate)。validate_only=true にすると Google 側で検算だけ行い何も変更しないので、複雑な操作は先にこれで通してから本番に送ること。

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A3.9/5.0

Scored across 16 tools

Disambiguation4/5

Tools mostly target distinct resources and actions (create_budget vs update_budget, update_status vs remove, report vs search vs list_objects). The main overlap is among read tools—google_ads_report, google_ads_list_objects, and google_ads_search can all return overlapping data—but the descriptions explicitly delineate typed vs arbitrary GAQL queries and metrics vs entity listings. google_ads_mutate overlaps with all write tools, though it is clearly framed as a last-resort fallback.

Naming Consistency4/5

Almost all tools share a snake_case google_ads_ prefix and verb-noun form (list_accessible_customers, create_campaign, update_status, etc.). Minor deviations are noun-only names like google_ads_account_info, google_ads_report, and google_ads_keywords, but the overall pattern remains readable and predictable.

Tool Count4/5

16 tools cover a broad Google Ads surface (read, create, update, delete, plus a generic mutate), so each tool earns a place. It sits just above the ideal 3-15 range and could arguably be trimmed, but the count is reasonable for the domain's complexity.

Completeness4/5

The set provides solid CRUD coverage across budgets, campaigns, ad groups, ads, keywords, plus reporting and keyword research. Gaps exist (no typed update for renaming campaigns/ad groups or bidding details, limited ad-type creation), but google_ads_mutate and google_ads_search act as escape hatches for uncovered operations.

Maintenance

ActivityMaintained
ResponsivenessNo issues