这是一个 Google Tag Manager (GTM) 的 MCP 服务器实现。它通过 Model Context Protocol (MCP) 协议与兼容的客户端(例如大型语言模型应用)通信,提供访问和管理 Google Tag Manager 中各种实体(如账户、容器、工作区、标签、触发器、变量、环境、版本等)的功能。
项目简介
本项目旨在将 Google Tag Manager API 的功能封装成 MCP 服务器提供的工具,使得 AI 应用或其他 MCP 客户端能够理解和操作 GTM 资源,实现 GTM 配置的自动化管理和智能交互。
主要功能点
该 MCP 服务器通过注册大量工具来提供 GTM API 的能力。主要功能包括:
- 账户及用户权限管理: 列出账户下的用户权限,创建、获取、更新、删除用户权限。
- 容器管理: 列出账户下的容器,创建、获取、更新、删除容器,获取容器代码片段,查找容器。
- 工作区管理: 列出容器下的工作区,创建、获取、更新、删除工作区,获取工作区状态,同步工作区,解决工作区冲突,从工作区创建版本,快速预览工作区。
- 标签管理: 列出工作区下的标签,创建、获取、更新、删除标签,还原标签更改。
- 触发器管理: 列出工作区下的触发器,创建、获取、更新、删除触发器,还原触发器更改。
- 变量管理: 列出工作区下的变量,创建、获取、更新、删除变量,还原变量更改。
- 环境管理: 列出容器下的环境,创建、获取、更新、删除环境,重新授权环境。
- 版本管理: 获取、更新、删除、还原容器版本,获取最新版本头,发布容器版本,设置最新版本,获取实时版本。
- 其他实体管理: 管理 Gtag 配置、客户端、目的地、文件夹、模板、转换、区域等。
安装步骤
要运行此 MCP 服务器,您需要:
- 安装 Node.js (版本 16 或更高)。
- 一个 Google Cloud Platform 账户。
- 一个具有 Google Tag Manager API 访问权限的服务账户及其 JSON 密钥文件。
然后,您可以按照以下步骤进行安装:
- 克隆此 GitHub 仓库到您的本地或服务器:
git clone https://github.com/stape-io/google-tag-manager-mcp-server.git cd google-tag-manager-mcp-server - 安装项目依赖:
npm install - 在 Google Cloud Console 中创建一个服务账户,并下载 JSON 密钥文件。
- 创建一个 '.env' 文件,设置 'GOOGLE_APPLICATION_CREDENTIALS' 环境变量指向您的服务账户密钥文件路径:
(请将 './path/to/your/service-account-key.json' 替换为实际的文件路径)GOOGLE_APPLICATION_CREDENTIALS=./path/to/your/service-account-key.json - 构建项目 (如果代码是 TypeScript):
npm run build
服务器配置
该 MCP 服务器通常作为后台进程运行,由 MCP 客户端启动和连接。MCP 客户端(如 AI 应用)需要以下配置信息来启动并连接到此服务器:
{ "name": "google-tag-manager", "command": "node", "args": [ "dist/index.js" // 服务器启动脚本的路径,具体路径取决于您的安装和构建过程 ], "transport": { "type": "stdio" // 使用标准输入输出进行通信 } }
- 'name': 服务器的标识符,用于 MCP 客户端区分不同的服务器。
- 'command': 用于启动服务器进程的命令(例如 'node')。
- 'args': 传递给启动命令的参数数组(例如服务器主脚本路径)。
- 'transport': 定义客户端与服务器之间的传输方式,此处为 'stdio' (标准输入输出)。
请注意,上述 'args' 中的 'dist/index.js' 是一个示例路径,实际路径可能因构建设置而异。您可能需要根据项目的实际构建输出调整此路径。
基本使用方法
- 确保您已经完成了上述安装和配置步骤。
- 运行 MCP 服务器(通常通过您的 MCP 客户端来启动它)。
- 您的 MCP 客户端(例如 AI 助手)现在可以通过 MCP 协议连接到此服务器,并调用其暴露的工具来与 Google Tag Manager API 进行交互。例如,客户端可能会通过调用 'tag_manager_list_containers' 工具来获取您账户下的所有容器列表。具体如何通过客户端界面与服务器交互,取决于您使用的 MCP 客户端应用。这个服务器为这些客户端提供了底层的功能支持。
信息
分类
商业系统