mcp-google-tagmanager
Servidor MCP para la API v2 de Google Tag Manager: cuentas, contenedores, espacios de trabajo, etiquetas, disparadores, variables, versiones y publicación. Para Claude, Cursor, Codex y otros clientes de IA.
Documentación
Google Tag Manager MCP
Español | Русский
A1 Google Tag Manager MCP permite que una aplicación de IA inspeccione y gestione contenedores de Google Tag Manager en lenguaje natural. Ve qué se activa en una página, trabaja con etiquetas, activadores y variables en un espacio de trabajo de borrador, y luego compila y publica deliberadamente una versión cuando estés listo.
Se conecta a la API de Google Tag Manager v2 a través de tu cuenta de Google. La diferencia con pedirle a una IA que adivine una configuración de GTM es que trabaja con el contenedor, el espacio de trabajo y la versión reales que elijas.
- 25 herramientas. 10 operaciones solo leen datos de GTM; 4 crean borradores o cambian variables integradas; 5 pueden alterar, eliminar, compilar o publicar configuración en vivo.
- Se conecta desde la conversación. Di "conectar Google Tag Manager": el servidor te guía a través del cliente OAuth, captura la redirección de Google en
127.0.0.1con PKCE y guarda los tokens él mismo — sin archivos de configuración, sin reinicios. - Borrador primero. Las etiquetas, activadores y variables se crean en un espacio de trabajo. Publicar es una operación separada y explícitamente destructiva.
- Consciente de cuotas. GTM permite 0.25 solicitudes por segundo por proyecto; el servidor espacia las solicitudes al menos 4.2 segundos en lugar de saturar la API.
- Tu acceso a Google. El servidor usa tus credenciales OAuth y solicita solo los alcances de Tag Manager necesarios para leer, editar, versionar y publicar.
Comienza con una pregunta de solo lectura:
¿Qué etiquetas en mis contenedores se activan con el activador de vista de página?
Conectar el servidor · Explorar casos de uso · Abrir documentación técnica
Véalo funcionar en un minuto
Tú: Lista mis contenedores de GTM y muestra qué etiquetas se activan en la vista de página.
Asistente: Lista los contenedores, sus espacios de trabajo, activadores relevantes y las etiquetas adjuntas. No cambia nada.
Tú: En el Espacio de Trabajo Predeterminado de
GTM-ABC123, prepara una etiqueta de configuración GA4 para el ID de mediciónG-XXXXXXXen todas las páginas.Asistente: Muestra el espacio de trabajo, la etiqueta propuesta y la configuración del activador, luego pide confirmación antes de crear el borrador.
Tú: Confirma el borrador.
Asistente: Crea la etiqueta en el espacio de trabajo. No publica el contenedor; compilar y publicar una versión sigue siendo un paso separado.
Contenido
- Inicio rápido
- Qué puedes pedirle que haga
- Cómo se conectan los cambios de GTM
- Qué puede cambiar
- Obtener acceso
- Configuración
- Datos y telemetría
- Límites y trabajo en segundo plano
- Documentación técnica
- Soporte
Inicio rápido
Necesitas Node.js 20+ y una cuenta de Google. No se requieren credenciales al momento de la instalación — el servidor se conecta desde la conversación.
- Agrega el servidor a tu aplicación de IA.
- Di "conectar Google Tag Manager": el asistente te guía a través de crear el cliente OAuth y aprobar el acceso sin editar archivos de configuración.
- Comienza con la pregunta de solo lectura anterior.
Codex
En la aplicación:
- Abre Configuración → Servidores MCP.
- Selecciona Agregar servidor.
- Elige STDIO, luego ingresa
npx -y mcp-google-tagmanager@latesty las tres variables de entorno a continuación.
| Variable | Valor |
|---|---|
GOOGLE_TAGMANAGER_CLIENT_ID | Tu ID de cliente OAuth de Google |
GOOGLE_TAGMANAGER_CLIENT_SECRET | Tu secreto de cliente OAuth de Google |
GOOGLE_TAGMANAGER_REFRESH_TOKEN | Tu token de actualización OAuth de Google |
- Selecciona Guardar, luego Reiniciar.
Desde la línea de comandos:
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
La ruta oficial actual es Configuración → Extensiones. Para una extensión de escritorio personalizada, abre Configuración avanzada → Desarrollador de extensiones → Instalar extensión…, selecciona un archivo .mcpb y sigue las indicaciones.
Este repositorio actualmente publica un paquete npm stdio y no contiene un paquete .mcpb. Para compilaciones de Claude Desktop que aún admiten configuración local, usa la siguiente configuración JSON stdio como alternativa:
{
"mcpServers": {
"google-tagmanager": {
"command": "npx",
"args": ["-y", "mcp-google-tagmanager@latest"]
}
}
}
En esas compilaciones, guárdalo en ~/Library/Application Support/Claude/claude_desktop_config.json en macOS o %APPDATA%\Claude\claude_desktop_config.json en Windows.
Cursor
Agrega un servidor a nivel de usuario en ~/.cursor/mcp.json en macOS/Linux o %USERPROFILE%\.cursor\mcp.json en Windows:
{
"mcpServers": {
"google-tagmanager": {
"type": "stdio",
"command": "npx",
"args": ["-y", "mcp-google-tagmanager@latest"]
}
}
}
VS Code
Ejecuta MCP: Abrir configuración de usuario desde la Paleta de comandos y agrega:
{
"servers": {
"google-tagmanager": {
"type": "stdio",
"command": "npx",
"args": ["-y", "mcp-google-tagmanager@latest"]
}
}
}
Verifícalo con MCP: Listar servidores.
Qué puedes pedirle que haga
Comprender la configuración actual
- Lista las cuentas y contenedores de GTM a los que puedo acceder.
- ¿Qué etiquetas se activan en la vista de página en este espacio de trabajo?
- Muestra la configuración del activador y las variables para esta etiqueta.
- ¿Qué variables integradas están habilitadas?
Preparar cambios de seguimiento en un borrador
- Crea un espacio de trabajo para el cambio de seguimiento de checkout.
- Prepara una etiqueta GA4 y un activador para un evento específico.
- Habilita las variables de clic necesarias para este activador.
- Actualiza esta etiqueta después de mostrarme la configuración de reemplazo completa.
Publicar una versión deliberadamente
- Compila este espacio de trabajo en una versión llamada
April release. - Muestra los errores del compilador, si los hay.
- Publica la versión
42después de que confirme la versión y sus cambios.
Cómo se conectan los cambios de GTM
GTM tiene una ruta de publicación clara:
- Una cuenta contiene uno o más contenedores.
- Un contenedor tiene espacios de trabajo para cambios de borrador.
- Las etiquetas, activadores y variables pertenecen a un espacio de trabajo.
- Compilar un espacio de trabajo crea una versión de contenedor y elimina el espacio de trabajo fuente. GTM proporciona un espacio de trabajo de reemplazo.
- Publicar hace que una versión de contenedor seleccionada esté en vivo.
Este servidor puede inspeccionar cada paso. No trata un borrador como una publicación: la creación de versiones y la publicación son operaciones separadas.
Qué puede cambiar
| Operación | Qué sucede | Límite de confirmación |
|---|---|---|
| Listar cuentas, contenedores, espacios de trabajo, etiquetas, activadores, variables y versiones | Lee la configuración de GTM | Sin cambios |
| Crear un contenedor o espacio de trabajo | Agrega un nuevo objeto GTM | Cambia GTM |
| Crear una etiqueta, activador o variable | Agrega un objeto de borrador a un espacio de trabajo | Cambia un espacio de trabajo de borrador |
| Habilitar o deshabilitar variables integradas | Cambia la configuración del espacio de trabajo | Cambia un espacio de trabajo de borrador |
| Actualizar una etiqueta, activador o variable | Reemplaza el recurso completo, protegido por su huella digital | Potencialmente destructivo |
| Eliminar una etiqueta, activador o variable | Elimina el objeto seleccionado | Destructivo |
| Compilar un espacio de trabajo | Crea una versión y elimina el espacio de trabajo fuente | Destructivo |
| Publicar una versión | Hace que una versión seleccionada esté en vivo | Destructivo |
| Solicitud API sin procesar | Puede llamar métodos de API sin una herramienta dedicada | Potencialmente destructivo |
El cliente de IA decide cómo pide confirmación. El servidor marca operaciones de solo lectura, escritura y destructivas para que el cliente pueda distinguir la inspección de un cambio real.
Obtener acceso
Google Tag Manager requiere OAuth 2.0; una clave de API no es suficiente. Hay dos formas de entrar, y la primera no necesita archivos de configuración.
Conectar desde el chat (recomendado)
Di "conectar Google Tag Manager" y el asistente ejecuta el flujo contigo:
setup_instructionsimprime la lista de verificación: crea o selecciona un proyecto de Google Cloud, habilita la API de Tag Manager, configura la pantalla de consentimiento y crea un cliente OAuth de aplicación de escritorio.- Descarga el JSON de ese cliente ("Descargar JSON") y dale al asistente su ruta —
set_clientlo almacena solo para el propietario. El secreto nunca pasa por la conversación. start_logindevuelve un enlace de consentimiento de Google. Ábrelo en esta máquina y aprueba; el código regresa a un listener de un solo uso en127.0.0.1(PKCE), nunca a través del chat.finish_loginintercambia el código y guarda los tokens en~/.config/mcp-google-tagmanager/credentials.json(modo 0600) y los verifica con una llamada real a la API de Tag Manager — así, una API que aún está desactivada se detecta allí mismo.
Los tokens se releen en cada llamada, por lo que la conexión funciona de inmediato — sin reiniciar la aplicación de IA. auth_status muestra qué está conectado, logout revoca y elimina.
Variables de entorno (CI, instalaciones desatendidas)
-
Crea o selecciona un proyecto de Google Cloud y habilita la API de Tag Manager. Un proyecto sin esa API habilitada no recibe cuota.
-
Configura la pantalla de consentimiento OAuth y crea un cliente OAuth. Un cliente de aplicación de escritorio es adecuado para uso local.
-
Autoriza tu cuenta de Google y obtén un token de actualización. El Playground de OAuth 2.0 puede hacer esto si habilitas Usar tus propias credenciales OAuth.
-
Solicita estos alcances juntos:
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
Los alcances son separados: leer, editar, compilar versiones y publicar cada uno necesita su permiso correspondiente. Trata el secreto del cliente y el token de actualización como contraseñas.
Configuración
Cada variable es opcional — sin ninguna de ellas, el servidor se conecta desde el chat.
| Variable | Requerida | Descripción |
|---|---|---|
GOOGLE_TAGMANAGER_CLIENT_ID | No* | ID de cliente OAuth. |
GOOGLE_TAGMANAGER_CLIENT_SECRET | No* | Secreto de cliente OAuth. |
GOOGLE_TAGMANAGER_REFRESH_TOKEN | No* | Token de actualización OAuth. |
GOOGLE_TAGMANAGER_ACCESS_TOKEN | No* | Alternativa de corta duración al trío OAuth. |
GOOGLE_TAGMANAGER_OAUTH_PORT | No | Puerto de loopback fijo para el inicio de sesión en el chat; útil con reenvío de puertos SSH. |
GOOGLE_TAGMANAGER_API_BASE | No | Anulación de la URL base de la API de Tag Manager. |
GOOGLE_TAGMANAGER_TIMEOUT_MS | No | Tiempo de espera por solicitud; predeterminado 60000 ms. |
GOOGLE_TAGMANAGER_MAX_RETRIES | No | Reintentos máximos en fallos temporales; predeterminado 3. |
GOOGLE_TAGMANAGER_MIN_INTERVAL_MS | No | Espaciado mínimo entre solicitudes; predeterminado 4200 ms. |
* Proporciona el trío OAuth o un token de acceso. Los tokens de acceso expiran en aproximadamente una hora y no se actualizan automáticamente.
Datos y telemetría
El servidor se ejecuta localmente y envía solicitudes a la API de GTM y solicitudes de actualización OAuth a Google. Su telemetría anónima contiene un ID de instalación aleatorio, versión del paquete, cliente de IA y versiones de Node.js/sistema operativo, y nombres de herramientas. No envía tokens OAuth, datos de GTM, argumentos de herramientas o indicaciones.
Desactiva la telemetría para los servidores MCP de A1 con:
ASKADS_TELEMETRY=0
Límites y trabajo en segundo plano
- GTM tiene límite de velocidad. La API permite 0.25 solicitudes por segundo por proyecto, por lo que el servidor serializa las llamadas al menos 4.2 segundos de diferencia. Las auditorías amplias pueden llevar tiempo.
- Los límites temporales se reintentan con cuidado.
429y las respuestas de cuota de Google403usan retroceso exponencial yRetry-After. Las lecturas se reintentan después de fallos de red y5xx; las escrituras no se reproducen después de un fallo incierto. - No hay monitoreo en segundo plano. El servidor solo se ejecuta cuando tu aplicación de IA lo llama. Si la aplicación admite tareas programadas, puede inspeccionar periódicamente un contenedor o su versión en vivo.
- Un espacio de trabajo desaparece al compilarse. Antes de llamar a
create_version, guarda todo lo que necesites del espacio de trabajo e inspecciona la ruta del espacio de trabajo de reemplazo devuelta.
Documentación técnica
- Catálogo de capacidades de MCP — páginas orientadas a tareas para cada herramienta.
- Todas las herramientas y entradas
- Documentación de desarrollo
- Documentación de publicación
- Referencia de la API v2 de Google Tag Manager
Soporte
¿Encontraste un error o necesitas un escenario? Crea un issue o escribe en Telegram.
¡Llegaste al final!