Tabla de Contenido
- Por qué esta guía
- Qué vas a conseguir
- Arquitectura de la integración
- Requisitos previos
- Paso 1 — Crear o reutilizar la cuenta de servicio en Google Cloud
- Paso 2 — Habilitar las APIs necesarias
- Paso 3 — Dar acceso al service account en cada propiedad de GA4
- Paso 4 — Instalar el servidor MCP
- Paso 5 — Registrar el MCP en Claude Code
- Paso 6 — Probar la conexión
- Cómo lo usamos en MORA Estudio Creativo
- Seguridad y buenas prácticas
- Troubleshooting frecuente
- Mantenimiento
- Recursos
- Sobre MORA Estudio Creativo
Guía publicada por MORA Estudio Creativo
Agencia SEO y marketing digital — Sevilla, España
Última actualización: junio de 2026
Por qué esta guía
En MORA Estudio Creativo trabajamos con Claude Code como copiloto diario para auditorías SEO, informes de rendimiento, análisis de campañas y curación de contenido. Tener Google Analytics 4 conectado de forma nativa ahorra docenas de exportaciones manuales a la semana y permite que el modelo razone directamente sobre datos reales del cliente.
Esta guía documenta paso a paso cómo lo hemos integrado en nuestro stack usando el MCP oficial de Google Analytics, gratuito y mantenido por Google. La hemos pensado para que cualquier agencia, freelance o equipo in-house pueda replicarla sin depender de conectores de pago tipo Supermetrics o Windsor.ai.
Tiempo estimado de implementación: 25-40 minutos si es la primera vez.
Qué vas a conseguir
Al final de esta guía Claude Code podrá, desde tu terminal, ejecutar estas herramientas sobre tus propiedades GA4:
| Herramienta | Para qué sirve |
|---|---|
get_account_summaries | Listar todas las cuentas y propiedades GA4 accesibles |
get_property_details | Detalles de una propiedad concreta (zona horaria, moneda, industria, etc.) |
get_custom_dimensions_and_metrics | Dimensiones y métricas personalizadas configuradas |
run_report | Informes a medida (sesiones, usuarios, conversiones, canales, páginas…) |
run_realtime_report | Datos en tiempo real (últimos 30 minutos) |
run_funnel_report | Embudos de conversión |
run_conversions_report | Informe específico de eventos de conversión |
list_google_ads_links | Vinculaciones con cuentas de Google Ads |
list_property_annotations | Anotaciones temporales sobre la propiedad |
Y todo eso conviviendo con otros MCPs que ya tengas (en nuestro caso: Google Search Console y Meta Ads).
Arquitectura de la integración
┌────────────────────┐ ┌──────────────────────┐ ┌────────────────────┐
│ Claude Code │──MCP─▶│ analytics-mcp │──API─▶│ Google Analytics │
│ (tu terminal) │ │ (Python, pipx) │ │ Admin + Data API │
└────────────────────┘ └──────────────────────┘ └────────────────────┘
▲
│ lee credenciales de
│
┌──────────┴───────────┐
│ Service Account │
│ JSON (Google Cloud) │
└──────────────────────┘
- Claude Code es el cliente MCP (lo que tú usas).
- analytics-mcp es el servidor MCP de Google: un proceso Python que traduce las herramientas MCP a llamadas a la API de Analytics.
- Service Account es la identidad que Google Cloud usa para autenticarse contra Analytics. Es una "cuenta robot" — no se loguea con contraseña, sino con una clave JSON.
Por qué service account y no OAuth con tu usuario:
- No expira ni te pide volver a loguear cada X horas.
- Funciona sin navegador, ideal para entornos automatizados.
- Permite que un mismo equipo comparta el mismo acceso de lectura sin compartir contraseñas.
- Acceso revocable de forma granular por propiedad GA4.
Requisitos previos
- Claude Code instalado y funcionando.
- Python 3.10 o superior instalado en tu equipo (
python --version), Si no lo tienes instalado le puedes decir a Claude que lo instale por ti. - Acceso administrador a un proyecto en Google Cloud Platform (puedes crear uno gratis en https://console.cloud.google.com).
- Acceso «Administrador» o «Editor» a las propiedades de Google Analytics 4 que quieras conectar (es el permiso necesario para añadir usuarios nuevos).
Si tu equipo aún usa Universal Analytics, esta guía no aplica — Universal Analytics dejó de funcionar el 1 de julio de 2024.
Paso 1 — Crear o reutilizar la cuenta de servicio en Google Cloud
1.1 Entra en Google Cloud Console
Abre https://console.cloud.google.com con la cuenta Google que vaya a ser administradora del proyecto (en MORA usamos una cuenta corporativa dedicada, no una personal).
1.2 Crea un proyecto (si no lo tienes)
En la barra superior, junto al logo de Google Cloud, hay un selector de proyecto. Click → Proyecto nuevo → ponle un nombre claro (tipo tunombre-claude).
Apunta el Project ID que te asigna Google (puede ser distinto al nombre si el tuyo estaba cogido). Lo necesitarás más tarde.
1.3 Crea la cuenta de servicio
En el menú lateral: IAM y administración → Cuentas de servicio → + Crear cuenta de servicio.

- Nombre: algo descriptivo como
tuempresa-mcpoclaude-analytics. - Descripción: opcional, útil para tu yo futuro.
- Conceder acceso a este proyecto: déjalo vacío. No necesita roles a nivel de proyecto; los permisos se asignan después en GA4.
- Click en Hecho.
Verás la cuenta listada con un email tipo mora-mcp@mora-claude.iam.gserviceaccount.com. Apunta ese email, lo usarás dos veces.
1.4 Genera la clave JSON
- Click sobre el email de la cuenta de servicio.
- Pestaña Claves.
- Agregar clave → Crear nueva clave → JSON → Crear.
- El navegador descargará un archivo
.json. Es la única vez que verás el contenido, si lo pierdes hay que crear otro.
1.5 Guarda el JSON en un sitio seguro
Crea una carpeta .secrets/ dentro de tu proyecto Claude Code y mueve el JSON ahí:
<tu-proyecto>/
└── .secrets/
└── service-account.json ← el archivo descargado, renómbralo si quieres
Crítico: añade .secrets/ a tu .gitignore antes de hacer cualquier commit:
# Secrets — NEVER commit
.secrets/
.env
.mcp.json
En MORA tratamos ese JSON con el mismo nivel de cuidado que una contraseña de producción: nunca por email, nunca en Slack, nunca en un repo público.
Paso 2 — Habilitar las APIs necesarias

El MCP usa dos APIs de Google que vienen desactivadas por defecto en cada proyecto nuevo:
- Google Analytics Admin API — para listar cuentas, propiedades y configuración.
- Google Analytics Data API — para obtener informes y datos.
Abre cada URL en tu navegador (sustituye TU_PROJECT_ID por el real):
https://console.cloud.google.com/apis/library/analyticsadmin.googleapis.com?project=TU_PROJECT_IDhttps://console.cloud.google.com/apis/library/analyticsdata.googleapis.com?project=TU_PROJECT_ID
En cada página verás un botón azul «Habilitar». Click. Espera 5-10 segundos hasta que cambie a «Administrar». Listo.
Si te pide elegir proyecto antes de mostrar el botón, asegúrate de que arriba esté el proyecto correcto.
Paso 3 — Dar acceso al service account en cada propiedad de GA4
Aquí está la parte que más gente pasa por alto: tener creado el service account no implica que pueda leer ninguna propiedad de GA4. Hay que añadirlo manualmente como usuario en cada propiedad que quieras conectar.

Por cada propiedad GA4:
- Entra a https://analytics.google.com.
- Abajo a la izquierda → ⚙ Administrar.
- Asegúrate de seleccionar la Cuenta y Propiedad correctas en los selectores superiores.
- En la columna Propiedad, click en Gestión de accesos a la propiedad.
- Botón azul + arriba a la derecha → Añadir usuarios.
- Email: el del service account (
xxx@xxx.iam.gserviceaccount.com). - Desmarca «Notificar por correo electrónico» — el service account no tiene buzón y daría error.
- Rol estándar: Lector (suficiente para informes; no des Editor salvo que sepas por qué).
- Añadir (arriba a la derecha).
Repite para cada propiedad. Tarda unos 30 segundos por cuenta.
Tip de agencia: si gestionas muchos clientes, puedes pedir a cada uno que añada tu service account como usuario en su propiedad. Para ellos no es más complicado que añadir un email tipo
mora@cliente.com, y tú nunca pisas su login.
Paso 4 — Instalar el servidor MCP
El paquete oficial se llama analytics-mcp y se distribuye en PyPI. La forma recomendada de instalarlo es con pipx, que aísla la instalación en su propio entorno virtual para que no choque con otras dependencias de Python.
4.1 Instala pipx (si no lo tienes)
Siempre le puedes pedir a Claude que lo haga por ti, pero si lo quieres hacer tu:
python -m pip install --user pipx
python -m pipx ensurepath
Cierra y abre el terminal para que el PATH se actualice. Comprueba:
pipx --version
4.2 Instala el MCP de Analytics
Igual que en el paso anterior le puedes pedir a Claude Code que lo instale por ti, si lo quieres hacer tu:
pipx install analytics-mcp
Cuando termine, te dirá la ruta del binario instalado. En Windows suele ser:
C:\Users\<TU_USUARIO>\.local\bin\analytics-mcp.exe
Apunta esta ruta exacta, la necesitarás en el siguiente paso.
4.3 Prueba que arranca
Una verificación rápida (Ctrl+C para salir tras ver el log):
$env:GOOGLE_APPLICATION_CREDENTIALS="D:\ruta\a\tu\service-account.json"
$env:GOOGLE_PROJECT_ID="tu-project-id"
analytics-mcp
Si ves Starting MCP Stdio Server: Google Analytics MCP Server, perfecto. Si ves errores de credenciales o de paquete no encontrado, revisa los pasos 1.4, 4.1 y 4.2.
Paso 5 — Registrar el MCP en Claude Code
Dentro de tu proyecto Claude Code, edita (o crea) el archivo .mcp.json en la raíz. Si ya tienes otros MCP configurados, simplemente añade el bloque analytics-mcp dentro de mcpServers:
{
"mcpServers": {
"analytics-mcp": {
"command": "C:\\Users\\TU_USUARIO\\.local\\bin\\analytics-mcp.exe",
"args": [],
"env": {
"GOOGLE_APPLICATION_CREDENTIALS": "D:\\ruta\\absoluta\\al\\service-account.json",
"GOOGLE_PROJECT_ID": "tu-project-id"
}
}
}
}
Cosas importantes:
- En Windows, las barras dentro del JSON van dobles (
\\) o usa barras normales (/). commanddebe apuntar al binario absoluto. Si Claude Code no lo encuentra, será porque la ruta no es correcta.- Las rutas dentro de
envtambién absolutas. - Si vas a versionar este proyecto en Git, asegúrate de que
.mcp.jsonesté en tu.gitignore(contiene secretos por env vars en otros MCPs aunque este apunte a un archivo externo).
5.1 Reinicia Claude Code
Cierra completamente la ventana de Claude Code y vuélvela a abrir. No basta con /clear. La razón es que los MCPs solo se cargan en el arranque del proceso.
Al volver:
- Claude Code te preguntará si confías en el MCP
analytics-mcpdel proyecto → Sí. - Si todo va bien, las herramientas
mcp__analytics-mcp__*aparecerán como disponibles.
Paso 6 — Probar la conexión
En Claude Code, pídele algo simple:
«Lista las propiedades de GA4 a las que tengo acceso»
Internamente Claude llamará a get_account_summaries y te devolverá un listado tipo:
Cuenta: Cliente A → propiedad: cliente-a.com (ID 342529571)
Cuenta: Cliente B → propiedad: cliente-b.es (ID 477797060)
Si te devuelve lista vacía pero el MCP arrancó sin error, casi siempre es porque al service account aún no le has dado acceso en ninguna propiedad (paso 3). Repasa.
Ya puedes pedirle cosas como:
- «Dame los 10 canales que más sesiones traen a
cliente-a.comen los últimos 30 días» - «Sácame el embudo de checkout de los últimos 14 días»
- «¿Qué páginas tienen mayor tasa de rebote en este mes?»
- «Cuántos usuarios activos hay ahora mismo en la web» (tiempo real)
Cómo lo usamos en MORA Estudio Creativo
En nuestro flujo diario, GA4 conectado al MCP nos sirve sobre todo para:
Informes mensuales para clientes
Antes nuestro equipo dedicaba 1-2 horas por cliente a copiar datos de GA4 a una plantilla. Hoy le pedimos a Claude un resumen ejecutivo del mes, lo cruzamos con los datos de GSC (que también tenemos por MCP) y producimos un informe combinado en minutos.
Diagnóstico SEO con datos
Cuando arrancamos una auditoría o curamos una página existente, Claude puede contrastar las hipótesis SEO con datos reales de comportamiento (tiempo en página, bounce, conversiones, fuentes de tráfico) sin que tengamos que exportar nada.
Detección de caídas
Pedimos a Claude semanalmente que compare las últimas 4 semanas vs. las 4 anteriores y nos avise de caídas significativas en canales clave. Esto, encadenado con claude-code-guide schedule, lo hemos automatizado para varios clientes.
Combinación con otros MCPs
La magia llega cuando se cruza GA4 con:
- Google Search Console (otro MCP) → relacionar clicks orgánicos con conversiones reales.
- Meta Ads (otro MCP) → atribuir tráfico de pago a comportamiento on-site.
- Skills propias (
seo-audit,curacion-seo-pagina,wpo-wordpress) → razonar con datos reales en lugar de suposiciones.
Seguridad y buenas prácticas
Como agencia que toca datos de varios clientes, esto es innegociable en MORA:
- Una sola clave del service account por equipo, custodiada en el gestor de secretos del estudio.
- Acceso Lector, nunca Editor, salvo casos justificados y documentados.
- Revisar trimestralmente las propiedades GA4 a las que el service account tiene acceso. Quitar las de clientes con los que ya no se trabaja.
- Si un equipo se va, rotar la clave (
Cuentas de servicio → Claves → eliminar la antigua → crear nueva). - Nunca commitear ni el JSON ni el
.mcp.jsoncon rutas reales. Usar siempre.gitignore. - Documentar internamente qué clientes están conectados y cuándo se concedió el acceso.
Troubleshooting frecuente
«Lista vacía al llamar a get_account_summaries»
El service account no tiene acceso a ninguna propiedad GA4. Vuelve al paso 3.
«Error 403 PERMISSION_DENIED»
Las APIs no están habilitadas en el proyecto GCP. Vuelve al paso 2.
«El MCP no aparece tras reiniciar Claude Code»
- Revisa que
.mcp.jsonesté bien formado (un JSON inválido se ignora silenciosamente). - Comprueba que la ruta en
commandexista (Test-Pathen PowerShell). - Mira los logs de Claude Code (en macOS/Linux:
~/.claude/logs).
«Error de credenciales al arrancar el MCP»
La ruta de GOOGLE_APPLICATION_CREDENTIALS no existe o el JSON está corrupto. Comprueba que el archivo abra correctamente y que la ruta sea absoluta y exacta.
«Funciona en una propiedad pero no en otra»
Casi seguro es permiso GA4. Cada propiedad se gestiona por separado. Revisa Gestión de accesos a la propiedad en GA4.
«Python 3.9 o inferior»
analytics-mcp requiere Python 3.10+. Actualiza Python o instala una versión más nueva en paralelo y apunta pipx a ella.
Mantenimiento
- Actualizar el MCP cuando salga versión nueva:
pipx upgrade analytics-mcp. - Añadir un cliente nuevo: solo paso 3 (dar acceso al service account en su propiedad GA4). Nada más.
- Cambiar de equipo: copia el JSON del service account al equipo nuevo, ajusta rutas en
.mcp.json, instala pipx + analytics-mcp en el nuevo equipo.
Recursos
- Repositorio oficial: https://github.com/googleanalytics/google-analytics-mcp
- Documentación de MCP: https://modelcontextprotocol.io
- Documentación de la GA4 Data API: https://developers.google.com/analytics/devguides/reporting/data/v1
- Documentación de la GA4 Admin API: https://developers.google.com/analytics/devguides/config/admin/v1
Sobre MORA Estudio Creativo
MORA Estudio Creativo es una agencia de marketing digital con base en Sevilla, especializada en SEO, paid ads, conversión y desarrollo web. Trabajamos con Claude Code y un ecosistema de skills propias para acelerar el trabajo creativo y técnico de nuestros clientes.
Si esta guía te ha sido útil, compártela. Si encuentras un fallo o quieres aportar mejoras, escríbenos.
Guía elaborada por MORA EStudio Creativo con la colaboración de Claude (Anthropic). Verificada en Windows 11 con Python 3.12, pipx 1.14, analytics-mcp 0.6.0 y Claude Code en junio de 2026. Si tienes otros entornos, no estamos seguros de que te funcione de esta forma, vamos al tajo?





0 Comentarios