gtm-mcp-server
GTM MCP Server
Un servidor de Model Context Protocol (MCP) para Google Tag Manager que utiliza autenticación de cuenta de servicio - sin necesidad de flujo OAuth.
Características
Sin OAuth - Utiliza una cuenta de servicio de Google para la autenticación
Cubre el flujo de trabajo principal de GTM - Cuentas, Contenedores, Espacios de trabajo, Etiquetas, Disparadores, Variables, Variables integradas y Versiones (29 herramientas)
Local y privado - Se ejecuta completamente en tu máquina
Funciona con Claude Desktop, Cursor y otros clientes MCP
Inicio rápido
1. Crear una cuenta de servicio de Google Cloud
Ve a Google Cloud Console
Selecciona o crea un proyecto
Habilita la API de Tag Manager:
Ve a APIs y servicios → Biblioteca
Busca "Tag Manager API"
Haz clic en Habilitar
Crea una cuenta de servicio:
Ve a IAM y administración → Cuentas de servicio
Haz clic en "Crear cuenta de servicio"
Dale un nombre (por ejemplo, "gtm-mcp-server")
Haz clic en Crear y continuar (omite los permisos opcionales)
Haz clic en Listo
Crea una clave:
Haz clic en tu nueva cuenta de servicio
Ve a la pestaña Claves
Agregar clave → Crear clave nueva → JSON
Guarda el archivo JSON descargado en un lugar seguro (por ejemplo,
~/.config/gtm-service-account.json)
2. Otorgar acceso a GTM a la cuenta de servicio
Ve a Google Tag Manager
Haz clic en Administrador (icono de engranaje)
En Cuenta, haz clic en "Gestión de usuarios"
Haz clic en el botón + para agregar un usuario
Ingresa el correo electrónico de la cuenta de servicio (tiene el formato
name@project-id.iam.gserviceaccount.com)Establece los permisos adecuados:
Lectura - solo para listar/ver
Edición - para crear/modificar etiquetas, disparadores, variables
Publicación - para publicar versiones
Administración - para acceso completo, incluida la gestión de usuarios
3. Configurar tu cliente MCP
Claude Desktop
Agrega a tu configuración de Claude Desktop (~/Library/Application Support/Claude/claude_desktop_config.json en Mac, %APPDATA%\Claude\claude_desktop_config.json en Windows):
{
"mcpServers": {
"gtm": {
"command": "npx",
"args": ["-y", "gtm-mcp-server"],
"env": {
"GOOGLE_APPLICATION_CREDENTIALS": "/path/to/your/service-account.json"
}
}
}
}Cursor
Agrega a tu configuración de MCP en Cursor:
{
"mcpServers": {
"gtm": {
"command": "npx",
"args": ["-y", "gtm-mcp-server"],
"env": {
"GOOGLE_APPLICATION_CREDENTIALS": "/path/to/your/service-account.json"
}
}
}
}4. Reiniciar tu cliente
Después de guardar la configuración, reinicia tu cliente MCP. Deberías ver las herramientas de GTM disponibles.
Herramientas disponibles
Gestión de cuentas
gtm_list_accounts- Lista todas las cuentas de GTM accesibles
Gestión de contenedores
gtm_list_containers- Lista los contenedores en una cuentagtm_get_container- Obtiene los detalles de un contenedor
Gestión de espacios de trabajo
gtm_list_workspaces- Lista los espacios de trabajo en un contenedorgtm_create_workspace- Crea un nuevo espacio de trabajogtm_get_workspace_status- Muestra los cambios pendientes y los conflictos de fusión en un espacio de trabajogtm_sync_workspace- Sincroniza un espacio de trabajo con la última versión del contenedor
Gestión de etiquetas
gtm_list_tags- Lista todas las etiquetas en un espacio de trabajogtm_get_tag- Obtiene los detalles completos de una etiqueta con parámetrosgtm_create_tag- Crea una nueva etiquetagtm_update_tag- Actualiza una etiqueta existentegtm_delete_tag- Elimina una etiqueta
Gestión de disparadores
gtm_list_triggers- Lista todos los disparadores en un espacio de trabajogtm_get_trigger- Obtiene los detalles completos de un disparadorgtm_create_trigger- Crea un nuevo disparadorgtm_update_trigger- Actualiza un disparador existentegtm_delete_trigger- Elimina un disparador
Gestión de variables
gtm_list_variables- Lista todas las variables en un espacio de trabajogtm_get_variable- Obtiene los detalles completos de una variablegtm_create_variable- Crea una nueva variablegtm_update_variable- Actualiza una variable existentegtm_delete_variable- Elimina una variable
Gestión de variables integradas
gtm_list_built_in_variables- Lista las variables integradas habilitadasgtm_enable_built_in_variables- Habilita variables integradas (por ejemplo, URL de página, clases de clic)gtm_disable_built_in_variables- Deshabilita variables integradas
Gestión de versiones
gtm_list_versions- Lista las versiones del contenedorgtm_get_live_version- Obtiene la versión actualmente en vivo (publicada)gtm_create_version- Crea una versión desde un espacio de trabajogtm_publish_version- Publica una versión para ponerla en vivo
Todas las herramientas de listado devuelven resultados de una página a la vez; cuando hay más resultados, la respuesta incluye un page_token para pasar a la siguiente llamada.
Ejemplos de uso
Una vez configurado, puedes pedirle a Claude cosas como:
"Lista mis cuentas de GTM"
"Muéstrame todos los contenedores en la cuenta 123456"
"¿Qué etiquetas hay en mi contenedor de sitio web?"
"Crea un nuevo disparador de vista de página llamado 'Todas las páginas'"
"Crea una etiqueta HTML personalizada que se active en todas las páginas"
"Crea una versión y publícala"
Solución de problemas
"GOOGLE_APPLICATION_CREDENTIALS no establecida"
Asegúrate de que la variable de entorno esté configurada en tu cliente MCP y apunte a un archivo de clave JSON válido.
Errores de "Permiso denegado"
Verifica que el correo electrónico de la cuenta de servicio se haya agregado a tu cuenta de GTM
Comprueba que el nivel de permiso sea suficiente para la operación
Errores de "API no habilitada"
Asegúrate de que la API de Tag Manager esté habilitada en tu proyecto de Google Cloud.
El servidor no aparece en Claude Desktop
Comprueba que las rutas en tu configuración sean correctas
Revisa los registros de MCP de Claude Desktop para ver errores
Intenta ejecutar
npx gtm-mcp-serverdirectamente para ver los mensajes de error
Desarrollo
# Clone the repository
git clone https://github.com/alexstansfield/gtm-mcp-server.git
cd gtm-mcp-server
# Install dependencies
npm install
# Build
npm run build
# Watch mode for development
npm run dev
# Test with MCP Inspector
npx @modelcontextprotocol/inspector node dist/index.jsLicencia
MIT
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
A Model Context Protocol server for Wix AI tools
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…
MCP (Model Context Protocol) server for Appwrite
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/AlexStansfield/gtm-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server