Skip to main content
Glama
A1-x-Tech

Google Tag Manager MCP

Google Tag Manager MCP

English | Русский

npm CI Glama License: MIT

A1 Google Tag Manager MCP 让 AI 应用可以用自然语言检查和维护 Google Tag Manager 容器。查看页面上的触发情况,在草稿工作区中处理代码、触发器和变量,然后在准备好时慎重地编译并发布一个版本。

它通过你的 Google 账号连接到 Google Tag Manager API v2。与让 AI 猜测 GTM 配置不同,它操作的是你选择的具体容器、工作区和版本。

  • 19 个工具。 10 个操作只读取 GTM 数据;4 个创建草稿或更改内置变量;5 个可以修改、删除、编译或发布线上配置。

  • 草稿优先。 代码、触发器和变量都在工作区中创建。发布是一个独立的、明确具有破坏性的操作。

  • 感知配额。 GTM 允许每个项目每秒 0.25 个请求;服务器将请求间隔至少 4.2 秒,而不是压垮 API。

  • 你的 Google 访问权限。 服务器使用你的 OAuth 凭据,并且只请求读取、编辑、版本化和发布所需的 Tag Manager 作用域。

从一个只读问题开始:

我的容器中有哪些代码会在网页浏览触发器上触发?

连接服务器 · 探索使用场景 · 打开技术文档


一分钟看到效果

你: 列出我的 GTM 容器,并显示哪些代码会在网页浏览时触发。

助手: 列出容器、其工作区、相关触发器以及附加到这些触发器上的代码。不会更改任何内容。

你:GTM-ABC123 的默认工作区中,为衡量 ID G-XXXXXXX 在所有网页上准备一个 GA4 配置代码。

助手: 显示工作区、建议的代码和触发器配置,然后在创建草稿之前请求确认。

你: 确认草稿。

助手: 在工作区中创建该代码。它不会发布容器;编译和发布版本仍然是单独的步骤。

Related MCP server: unboundai-gtm-mcp-server

目录

快速开始

你需要 Node.js 20 以上版本、一个有 GTM 容器访问权限的 Google 账号,以及来自一个已启用 Tag Manager API 的 Google Cloud 项目的 OAuth 凭据。

  1. 准备 Google OAuth 访问权限

  2. 将服务器添加到你的 AI 应用中。

  3. 从上面的只读问题开始。

在应用中:

  1. 打开 设置 → 插件 → MCP 服务器

  2. 选择 添加服务器

  3. 添加 npx -y mcp-google-tagmanager@latest 以及下面的三个环境变量。

变量

GOOGLE_TAGMANAGER_CLIENT_ID

你的 Google OAuth 客户端 ID

GOOGLE_TAGMANAGER_CLIENT_SECRET

你的 Google OAuth 客户端密钥

GOOGLE_TAGMANAGER_REFRESH_TOKEN

你的 Google OAuth 刷新令牌

从命令行:

codex mcp add google-tagmanager \
  --env GOOGLE_TAGMANAGER_CLIENT_ID=your_client_id \
  --env GOOGLE_TAGMANAGER_CLIENT_SECRET=your_client_secret \
  --env GOOGLE_TAGMANAGER_REFRESH_TOKEN=your_refresh_token \
  -- npx -y mcp-google-tagmanager@latest
codex mcp list

Codex MCP 文档

claude mcp add \
  --env GOOGLE_TAGMANAGER_CLIENT_ID=your_client_id \
  --env GOOGLE_TAGMANAGER_CLIENT_SECRET=your_client_secret \
  --env GOOGLE_TAGMANAGER_REFRESH_TOKEN=your_refresh_token \
  --transport stdio \
  --scope user \
  google-tagmanager \
  -- npx -y mcp-google-tagmanager@latest
claude mcp list

Claude Code MCP 文档

  1. 打开 设置 → 开发者 → 编辑配置

  2. 将以下条目添加到 mcpServers

{
  "mcpServers": {
    "google-tagmanager": {
      "command": "npx",
      "args": ["-y", "mcp-google-tagmanager@latest"],
      "env": {
        "GOOGLE_TAGMANAGER_CLIENT_ID": "your_client_id",
        "GOOGLE_TAGMANAGER_CLIENT_SECRET": "your_client_secret",
        "GOOGLE_TAGMANAGER_REFRESH_TOKEN": "your_refresh_token"
      }
    }
  }
}

如果 编辑配置 不可用,请在 macOS 上编辑 ~/Library/Application Support/Claude/claude_desktop_config.json,或在 Windows 上编辑 %APPDATA%\Claude\claude_desktop_config.json

Claude Desktop MCP 文档

在 macOS/Linux 上,将用户级服务器添加到 ~/.cursor/mcp.json;在 Windows 上,添加到 %USERPROFILE%\.cursor\mcp.json

{
  "mcpServers": {
    "google-tagmanager": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "mcp-google-tagmanager@latest"],
      "env": {
        "GOOGLE_TAGMANAGER_CLIENT_ID": "your_client_id",
        "GOOGLE_TAGMANAGER_CLIENT_SECRET": "your_client_secret",
        "GOOGLE_TAGMANAGER_REFRESH_TOKEN": "your_refresh_token"
      }
    }
  }
}

Cursor MCP 文档

从命令面板运行 MCP: Open User Configuration 并添加:

{
  "servers": {
    "google-tagmanager": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "mcp-google-tagmanager@latest"],
      "env": {
        "GOOGLE_TAGMANAGER_CLIENT_ID": "${input:gtm_client_id}",
        "GOOGLE_TAGMANAGER_CLIENT_SECRET": "${input:gtm_client_secret}",
        "GOOGLE_TAGMANAGER_REFRESH_TOKEN": "${input:gtm_refresh_token}"
      }
    }
  },
  "inputs": [
    { "type": "promptString", "id": "gtm_client_id", "description": "Google OAuth client ID" },
    { "type": "promptString", "id": "gtm_client_secret", "description": "Google OAuth client secret", "password": true },
    { "type": "promptString", "id": "gtm_refresh_token", "description": "Google OAuth refresh token", "password": true }
  ]
}

使用 MCP: List Servers 检查。

VS Code MCP 文档

你可以让它做什么

了解当前配置

  • 列出我可以访问的 GTM 账号和容器。

  • 在此工作区中,哪些代码会在网页浏览时触发?

  • 显示此代码的触发器和变量配置。

  • 启用了哪些内置变量?

在草稿中准备跟踪变更

  • 为结账跟踪变更创建工作区。

  • 为特定事件准备 GA4 代码和触发器。

  • 启用此触发器所需的点击变量。

  • 在向我显示完整替换配置后更新此代码。

慎重地发布版本

  • 将此工作区编译为名为 April release 的版本。

  • 显示编译错误(如果有)。

  • 在我确认版本及其变更后发布版本 42

GTM 变更是如何关联的

GTM 有一条清晰的发布路径:

  1. 一个账号包含一个或多个容器

  2. 容器包含用于草稿变更的工作区

  3. 代码、触发器和变量属于某个工作区。

  4. 编译工作区会创建容器版本并删除源工作区。GTM 会提供一个替代工作区。

  5. 发布会使所选容器版本生效。

此服务器可以检查每个步骤。它不会将草稿视为发布:创建版本和发布是独立的操作。

哪些操作会改变配置

操作

行为

确认边界

列出账号、容器、工作区、代码、触发器、变量和版本

读取 GTM 配置

无变更

创建容器或工作区

添加新的 GTM 对象

更改 GTM

创建代码、触发器或变量

向工作区添加草稿对象

更改草稿工作区

启用或禁用内置变量

更改工作区配置

更改草稿工作区

更新代码、触发器或变量

替换整个资源,受其指纹保护

可能具有破坏性

删除代码、触发器或变量

删除所选对象

破坏性

编译工作区

创建版本并删除源工作区

破坏性

发布版本

使所选版本生效

破坏性

原始 API 请求

可在没有专用工具的情况下调用 API 方法

可能具有破坏性

AI 客户端自行决定如何请求确认。服务器会标记只读、写入和破坏性操作,以便客户端区分检查与真实变更。

获取访问权限

服务器使用 Google OAuth 2.0。Google Tag Manager 不为此类用户数据提供 API 密钥。

  1. 创建或选择一个 Google Cloud 项目,并启用 Tag Manager API。未启用该 API 的项目不会获得配额。

  2. 配置 OAuth 同意屏幕并创建 OAuth 客户端。桌面应用客户端适合本地使用。

  3. 授权你的 Google 账号并获取刷新令牌。如果你启用 使用你自己的 OAuth 凭据OAuth 2.0 Playground 可以完成此操作。

  4. 一起请求以下作用域:

    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 三件套的短期替代方案。

GOOGLE_TAGMANAGER_API_BASE

Tag Manager API 基础 URL 覆盖。

GOOGLE_TAGMANAGER_TIMEOUT_MS

单次请求超时;默认 60000 毫秒。

GOOGLE_TAGMANAGER_MAX_RETRIES

临时故障时的最大重试次数;默认 3

GOOGLE_TAGMANAGER_MIN_INTERVAL_MS

最低请求间隔;默认 4200 毫秒。

* 提供 OAuth 三件套或访问令牌中的任一种。访问令牌大约一小时后过期,且不会自动刷新。

数据与遥测

服务器在本地运行,并向 Google 发送 GTM API 请求和 OAuth 刷新请求。其匿名遥测数据包含随机安装 ID、包版本、AI 客户端和 Node.js/操作系统版本以及工具名称。它不会发送 OAuth 令牌、GTM 数据、工具参数或提示词。

使用以下命令禁用 A1 MCP 服务器的遥测:

ASKADS_TELEMETRY=0

限制与后台工作

  • GTM 有速率限制。 API 允许每个项目每秒 0.25 个请求,因此服务器将调用间隔至少 4.2 秒。广泛的审计因此可能需要较长时间。

  • 临时限制会谨慎重试。 429 和 Google 配额 403 响应使用指数退避和 Retry-After。读取在网络和 5xx 故障后重试;写入在不确定的故障后不会重放。

  • 没有后台监控。 服务器只会在你的 AI 应用调用它时运行。如果应用支持计划任务,它可以定期检查容器或其线上版本。

  • 工作区在编译后会消失。 在调用 create_version 之前,请保存工作区中需要的任何内容,并检查返回的替代工作区路径。

技术文档

支持

发现 bug 或需要某个场景?创建 issue 或在 Telegram 留言。

Related MCP Servers

  • A
    license
    A
    quality
    D
    maintenance
    MCP server for Google Tag Manager API, enabling users to manage containers, tags, and triggers through natural language using Google Application Default Credentials.
    18
    33
    Apache 2.0
  • A
    license
    Not graded
    quality
    C
    maintenance
    MCP server for Google Tag Manager API v2, enabling programmatic management of accounts, containers, workspaces, tags, triggers, variables, and version workflows.
    26
    14
    MIT
  • F
    license
    Not graded
    quality
    B
    maintenance
    A remote MCP server for Google Tag Manager that enables AI assistants to manage GTM accounts, containers, tags, triggers, variables, and more via OAuth or service account authentication.
    1

View all related MCP servers

Related MCP Connectors

  • MCP server for Argo RPG Platform — connects AI assistants to campaign data via OAuth2

  • MCP server for Gainium — manage trading bots, deals, and balances via AI assistants

  • MCP server for generating rough-draft project plans from natural-language prompts.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/A1-x-Tech/mcp-google-tagmanager'

If you have feedback or need assistance with the MCP directory API, please join our Discord server