Google Tag Manager MCP について
Google Tag Manager MCP は、AI アプリから実際の Google Tag Manager API v2 のコンテナ、ワークスペース、タグ、トリガー、変数を確認・管理できます。草稿の変更、バージョン作成、公開を分け、破壊的な操作を識別します。
主な機能
- 01アカウント、コンテナ、ワークスペースの確認
- 02タグ、トリガー、変数、バージョンの読み取り
- 03ワークスペースの草稿作成と更新
- 04バージョン作成と公開を個別に実行
- 05OAuth ログインとクォータ対応リクエスト
活用シーン
- 01ページビューで発火するタグの特定
- 02草稿ワークスペースでトラッキング変更を準備
- 03バージョン作成前にコンパイルエラーを確認
- 04確認後に指定コンテナのバージョンを公開
MCP 対応
Google Tag Manager API v2 の読み取り、編集、バージョン管理、公開操作を MCP クライアント向けのツールとして提供します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
npx -y mcp-google-tagmanagerGOOGLE_TAGMANAGER_CLIENT_IDGoogle OAuth client id (refresh-token flow).GOOGLE_TAGMANAGER_CLIENT_SECRETシークレットGoogle OAuth client secret (refresh-token flow). Treat it as a secret.GOOGLE_TAGMANAGER_REFRESH_TOKENシークレットGoogle OAuth refresh token; exchanged for access tokens automatically. Treat it as a secret.GOOGLE_TAGMANAGER_ACCESS_TOKENシークレットReady-made OAuth access token (~1h lifetime). Alternative to the client-id/secret/refresh-token trio.GOOGLE_TAGMANAGER_OAUTH_PORTシークレットFixed port for the loopback listener of the in-chat login (127.0.0.1 + PKCE). Set it when the client runs over SSH port forwarding; otherwise a free port is picked per login.GOOGLE_TAGMANAGER_API_BASEAPI root host override.GOOGLE_TAGMANAGER_TIMEOUT_MSPer-request timeout in milliseconds.GOOGLE_TAGMANAGER_MAX_RETRIESRetries on transient errors (429, quota 403, and 5xx/network for reads).GOOGLE_TAGMANAGER_MIN_INTERVAL_MSMinimum spacing between API requests, for the 0.25 QPS quota.ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。
ツール
25掲載時のツール一覧 · 2 週間前に更新
このツールにパラメーターはありません。
詳細
Google Tag Manager MCP
英語 | ロシア語
A1 Google Tag Manager MCP を使うと、AI アプリから自然な言葉で Google Tag Manager コンテナを確認・管理できます。ページ上で何が発火するかを確認し、ドラフトワークスペースでタグ、トリガー、変数を操作できます。準備ができたら、明示的にバージョンをコンパイルして公開します。
Google アカウントを通じて Google Tag Manager API v2 に接続します。AI に GTM の設定を推測させる場合との違いは、選択した実際のコンテナ、ワークスペース、バージョンを操作することです。
- 25 個のツール。 10 個の操作は GTM データの読み取りのみを行います。4 個はドラフトを作成するか、組み込み変数を変更します。5 個は公開中の設定を変更、削除、コンパイル、または公開できます。
- 会話から接続。「Google Tag Manager に接続して」と伝えると、サーバーが OAuth クライアントの設定を案内し、PKCE を使って
127.0.0.1への Google のリダイレクトを受け取り、トークンを自身で保持します。設定ファイルも再起動も不要です。 - まずはドラフトから。 タグ、トリガー、変数はワークスペースで作成します。公開は、明示的に別途行う破壊的な操作です。
- クォータに配慮。 GTM ではプロジェクトあたり毎秒 0.25 リクエストが許可されています。サーバーは API に過剰な負荷をかけないよう、リクエスト間隔を最低 4.2 秒空けます。
- お客様の Google アクセスを利用。 サーバーはお客様の OAuth 認証情報を使用し、読み取り、編集、バージョン管理、公開に必要な Tag Manager スコープのみを要求します。
まずは読み取り専用の質問から始めましょう。
自分のコンテナで、ページビューのトリガーに反応するタグはどれですか?
サーバーに接続 · ユースケースを見る · 技術ドキュメントを開く
1 分で動作を確認
あなた: GTM コンテナを一覧表示し、ページビューで発火するタグを教えてください。
アシスタント: コンテナ、そのワークスペース、関連するトリガー、それらに関連付けられたタグを一覧表示します。変更は行いません。
あなた:
GTM-ABC123の Default Workspace で、すべてのページを対象に、測定 IDG-XXXXXXXの GA4 設定タグを準備してください。アシスタント: ワークスペース、提案するタグとトリガーの設定を示し、ドラフトを作成する前に確認を求めます。
あなた: ドラフトを確認してください。
アシスタント: ワークスペースにタグを作成します。コンテナは公開しません。バージョンのコンパイルと公開は、引き続き別の手順です。
目次
クイックスタート
Node.js 20 以降と Google アカウントが必要です。インストール時に認証情報は不要です。サーバーは会話中に接続します。
- AI アプリにサーバーを追加します。
- 「Google Tag Manager に接続して」と伝えると、設定ファイルを編集せずにOAuth クライアントの作成とアクセスの承認をアシスタントが案内します。
- 上記の読み取り専用の質問から始めましょう。
Codex
アプリでの設定:
- Settings → MCP servers を開きます。
- Add server を選択します。
- STDIO を選択し、
npx -y mcp-google-tagmanager@latestと以下の 3 つの環境変数を入力します。
| 変数 | 値 |
|---|---|
GOOGLE_TAGMANAGER_CLIENT_ID | Google OAuth クライアント ID |
GOOGLE_TAGMANAGER_CLIENT_SECRET | Google OAuth クライアントシークレット |
GOOGLE_TAGMANAGER_REFRESH_TOKEN | Google OAuth リフレッシュトークン |
- Save を選択し、次に Restart を選択します。
コマンドラインからの設定:
codex mcp add google-tagmanager \
-- npx -y mcp-google-tagmanager@latest
codex mcp list
Claude Code
claude mcp add \
--transport stdio \
--scope user \
google-tagmanager \
-- npx -y mcp-google-tagmanager@latest
claude mcp list
Claude Desktop
現在の公式手順は Settings → Extensions です。カスタムデスクトップ拡張機能を使う場合は、Advanced settings → Extension Developer → Install Extension… を開き、.mcpb ファイルを選択して、画面の指示に従ってください。
このリポジトリでは現在、npm の stdio パッケージを公開しており、.mcpb バンドルは含まれていません。ローカル設定に引き続き対応している Claude Desktop のビルドでは、代わりに以下の JSON stdio 設定を使用してください。
{
"mcpServers": {
"google-tagmanager": {
"command": "npx",
"args": ["-y", "mcp-google-tagmanager@latest"]
}
}
}
これらのビルドでは、macOS の場合は ~/Library/Application Support/Claude/claude_desktop_config.json に、Windows の場合は %APPDATA%\Claude\claude_desktop_config.json に保存します。
Cursor
macOS/Linux では ~/.cursor/mcp.json に、Windows では %USERPROFILE%\.cursor\mcp.json に、ユーザーレベルのサーバーを追加します。
{
"mcpServers": {
"google-tagmanager": {
"type": "stdio",
"command": "npx",
"args": ["-y", "mcp-google-tagmanager@latest"]
}
}
}
VS Code
コマンドパレットから MCP: Open User Configuration を実行して、次を追加します。
{
"servers": {
"google-tagmanager": {
"type": "stdio",
"command": "npx",
"args": ["-y", "mcp-google-tagmanager@latest"]
}
}
}
MCP: List Servers で確認します。
依頼できること
現在の設定を確認する
- アクセス可能な GTM アカウントとコンテナを一覧表示してください。
- このワークスペースで、ページビュー時に発火するタグはどれですか?
- このタグのトリガーと変数の設定を表示してください。
- 有効になっている組み込み変数はどれですか?
下書きでトラッキングの変更を準備する
- チェックアウトのトラッキング変更用にワークスペースを作成してください。
- 特定のイベント用に GA4 タグとトリガーを準備してください。
- このトリガーに必要なクリック変数を有効にしてください。
- 置き換え後の設定全体を表示してから、このタグを更新してください。
意図的にバージョンをリリースする
- このワークスペースを
April releaseという名前のバージョンにコンパイルしてください。 - コンパイルエラーがあれば表示してください。
- バージョンとその変更内容を私が確認してから、バージョン
42を公開してください。
GTM の変更が反映される仕組み
GTM のリリース手順は明確です。
- アカウントには、1 つ以上のコンテナが含まれます。
- コンテナには、下書きの変更を行うためのワークスペースがあります。
- タグ、トリガー、変数はワークスペースに属します。
- ワークスペースをコンパイルするとコンテナバージョンが作成され、元のワークスペースは削除されます。GTM は代わりのワークスペースを用意します。
- 選択したコンテナバージョンを公開すると、そのバージョンが有効になります。
このサーバーでは、各手順の状況を確認できます。下書きをリリースとして扱うことはありません。バージョンの作成と公開は別々の操作です。
変更される内容
| 操作 | 内容 | 確認の境界 |
|---|---|---|
| アカウント、コンテナ、ワークスペース、タグ、トリガー、変数、バージョンを一覧表示 | GTM の設定を読み取ります | 変更なし |
| コンテナまたはワークスペースを作成 | 新しい GTM オブジェクトを追加します | GTM を変更します |
| タグ、トリガー、変数を作成 | ワークスペースに下書きオブジェクトを追加します | 下書きのワークスペースを変更します |
| 組み込み変数を有効化または無効化 | ワークスペースの設定を変更します | 下書きのワークスペースを変更します |
| タグ、トリガー、変数を更新 | フィンガープリントで保護されたリソース全体を置き換えます | 破壊的な操作になる可能性があります |
| タグ、トリガー、変数を削除 | 選択したオブジェクトを削除します | 破壊的な操作です |
| ワークスペースをコンパイル | バージョンを作成し、元のワークスペースを削除します | 破壊的な操作です |
| バージョンを公開 | 選択したバージョンを公開します | 破壊的な操作です |
| 生の API リクエスト | 専用ツールなしで API メソッドを呼び出せます | 破壊的な操作になる可能性があります |
確認を求める方法は、AI クライアントが決定します。サーバーは読み取り専用、書き込み、破壊的な操作を示すため、クライアントは調査と実際の変更を区別できます。
アクセスの取得
Google Tag Manager では OAuth 2.0 が必要です。API キーだけでは不十分です。アクセス方法は 2 つあり、1 つ目では設定ファイルが不要です。
チャットから接続(推奨)
「Google Tag Manager に接続して」と伝えると、アシスタントが手順を案内します。
setup_instructionsでチェックリストが表示されます。Google Cloud プロジェクトを作成または選択し、Tag Manager API を有効にして、同意画面を設定し、Desktop app の OAuth クライアントを作成します。- クライアントの JSON(「Download JSON」)をダウンロードし、そのパスをアシスタントに伝えます。
set_clientによって所有者のみがアクセスできるよう保存されます。シークレットが会話に含まれることはありません。 start_loginから Google の同意リンクが返されます。このマシンでリンクを開いて承認すると、コードは127.0.0.1のワンショットリスナーに返されます(PKCE)。チャットを経由することはありません。finish_loginがコードを交換し、トークンを~/.config/mcp-google-tagmanager/credentials.json(モード 0600)に保存します。また、実際に Tag Manager API を呼び出してトークンを検証するため、API がまだ無効の場合はその場で検出されます。
トークンは呼び出しごとに再読み込みされるため、AI アプリを再起動せずにすぐ接続できます。auth_status で接続状況を確認でき、logout でトークンを失効させて削除できます。
環境変数(CI、無人インストール)
-
Google Cloud プロジェクトを作成または選択し、Tag Manager API を有効にします。この API が有効になっていないプロジェクトには、クォータが付与されません。
-
OAuth 同意画面を設定し、OAuth クライアントを作成します。ローカルで使用する場合は、Desktop app クライアントが適しています。
-
Google アカウントを認証し、リフレッシュトークンを取得します。Use your own OAuth credentials を有効にすると、OAuth 2.0 Playground で取得できます。
-
次のスコープをまとめてリクエストします。
https://www.googleapis.com/auth/tagmanager.readonly https://www.googleapis.com/auth/tagmanager.edit.containers https://www.googleapis.com/auth/tagmanager.edit.containerversions https://www.googleapis.com/auth/tagmanager.publish
スコープは個別に分かれています。読み取り、編集、バージョンのコンパイル、公開には、それぞれ対応する権限が必要です。クライアントシークレットとリフレッシュトークンはパスワードとして扱ってください。
設定
すべての変数は任意です。何も設定しない場合、サーバーはチャットから接続します。
| 変数 | 必須 | 説明 |
|---|---|---|
GOOGLE_TAGMANAGER_CLIENT_ID | いいえ* | OAuth クライアント ID。 |
GOOGLE_TAGMANAGER_CLIENT_SECRET | いいえ* | OAuth クライアントシークレット。 |
GOOGLE_TAGMANAGER_REFRESH_TOKEN | いいえ* | OAuth リフレッシュトークン。 |
GOOGLE_TAGMANAGER_ACCESS_TOKEN | いいえ* | OAuth の 3 つの値の代わりに使える短期間有効なトークン。 |
GOOGLE_TAGMANAGER_OAUTH_PORT | いいえ | チャット内ログインで使用する固定のループバックポート。SSH ポートフォワーディング経由での利用に便利です。 |
GOOGLE_TAGMANAGER_API_BASE | いいえ | Tag Manager API のベース URL の上書き値。 |
GOOGLE_TAGMANAGER_TIMEOUT_MS | いいえ | リクエストごとのタイムアウト。デフォルトは 60000 ms です。 |
GOOGLE_TAGMANAGER_MAX_RETRIES | いいえ | 一時的な障害時の最大再試行回数。デフォルトは 3 です。 |
GOOGLE_TAGMANAGER_MIN_INTERVAL_MS | いいえ | リクエスト間隔の最小値。デフォルトは 4200 ms です。 |
* OAuth の 3 つの値、またはアクセストークンのいずれかを指定してください。アクセストークンの有効期間は約 1 時間で、自動更新されません。
データとテレメトリ
サーバーはローカルで動作し、GTM API リクエストと OAuth リフレッシュリクエストを Google に送信します。匿名テレメトリには、ランダムなインストール ID、パッケージのバージョン、AI クライアントと Node.js/オペレーティングシステムのバージョン、ツール名が含まれます。OAuth トークン、GTM データ、ツールの引数、プロンプトは送信されません。
A1 MCP サーバーのテレメトリを無効にするには、次のようにします。
ASKADS_TELEMETRY=0
制限とバックグラウンド処理
- GTM にはレート制限があります。 API ではプロジェクトごとに 1 秒あたり 0.25 件のリクエストが許可されるため、サーバーは呼び出しを少なくとも 4.2 秒間隔で順番に実行します。そのため、広範な監査には時間がかかる場合があります。
- 一時的な制限には慎重に再試行します。
429と Google のクォータに関する403応答には、指数バックオフとRetry-Afterを使用します。読み取りはネットワークエラーと5xxエラーの後に再試行しますが、書き込みは失敗が不確かな場合でも再実行しません。 - バックグラウンド監視はありません。 サーバーは AI アプリから呼び出された場合にのみ動作します。アプリがスケジュールタスクに対応していれば、コンテナまたはそのライブバージョンを定期的に調べることができます。
- コンパイルするとワークスペースは消失します。
create_versionを呼び出す前に、ワークスペースから必要なものを保存し、返された置き換え後のワークスペースパスを確認してください。
技術ドキュメント
- MCP 機能カタログ — 各ツールのタスク別ページ。
- すべてのツールと入力
- 開発ドキュメント
- 公開ドキュメント
- Google Tag Manager API v2 リファレンス
サポート
バグを見つけた場合や、必要なシナリオがある場合は、Issue を作成するか、Telegramでご連絡ください。
最後まで読んでいただき、ありがとうございます!
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。