Servidor MCP de Google Analytics
Implementación de un servidor MCP para acceder a los datos de Google Analytics 4 (GA4), creada mediante el kit de desarrollo de software TypeScript del protocolo de contexto de modelo.
Funciones
- Obtenga métricas de páginas vistas con dimensiones personalizables
- Seguimiento de usuarios activos y nuevos a lo largo del tiempo
- Analizar eventos específicos y sus métricas
- Supervise las métricas de comportamiento del usuario (duración de la sesión, tasa de rebote)
- Selección flexible del intervalo de fechas para todas las consultas
Requisitos previos
- Node.js 20 o superior
- Propiedad de Google Analytics 4
- Proyecto de Google Cloud con Analytics Data API habilitada
- Credenciales de cuenta de servicio con los permisos adecuados
Configuración
- Cree un proyecto de Google Cloud y habilite la API de datos de análisis
- Cree una cuenta de servicio y descargue el archivo JSON de credenciales
- Conceda a la cuenta de servicio el acceso adecuado a su propiedad GA4
- Configure las variables de entorno:
export GOOGLE_CLIENT_EMAIL="your-service-account@project.iam.gserviceaccount.com" export GOOGLE_PRIVATE_KEY="tu-clave-privada" export GA_PROPERTY_ID="tu-ga4-id-propiedad"
Instalación
Instalación a través de Smithery
Para instalar Google Analytics Server para Claude Desktop automáticamente a través de Smithery:
npx -y @smithery/cli install mcp-server-google-analytics --client claude
Instalación manual
pnpm install mcp-servidor-google-analytics
Uso
Arrancar el servidor
pnpm start
Configuración en Claude Desktop
Añade esto a la configuración de tu Claude Desktop:
{ "mcpServers": { "google-analytics": { "command": "npx", "args": ["-y", "mcp-server-google-analytics"], "env": { "GOOGLE_CLIENT_EMAIL": "your-service-account@project.iam.gserviceaccount.com", "GOOGLE_PRIVATE_KEY": "tu_clave_privada", "GA_PROPERTY_ID": "your-ga4-property-id" } } }
Funciones disponibles
getPageViews
Obtiene métricas de páginas vistas para un intervalo de fechas específico:
{ "startDate": "2024-01-01", "endDate": "2024-01-31", "dimensions": ["page", "country"] // Opcional }
getActiveUsers
Obtener métricas de usuarios activos:
{ "startDate": "2024-01-01", "endDate": "2024-01-31" }
getEvents
Obtener métricas de eventos:
{ "startDate": "2024-01-01", "endDate": "2024-01-31", "eventName": "purchase" // Opcional }
getUserBehavior
Obtener métricas de comportamiento del usuario:
{ "startDate": "2024-01-01", "endDate": "2024-01-31" }
Consideraciones de seguridad
- Utilice siempre variables de entorno para las credenciales confidenciales
- Establezca la configuración CORS adecuada
- Siga el principio del mínimo privilegio al configurar los permisos de las cuentas de servicio
- Rote periódicamente las credenciales de las cuentas de servicio
- Supervise el uso de la API y aplique límites de velocidad si es necesario
Cómo contribuir
Las contribuciones son bienvenidas Por favor, lea nuestra Guía de Contribución para más detalles sobre nuestro código de conducta y el proceso de envío de pull requests.
Licencia
Este proyecto está licenciado bajo la Licencia MIT - vea el archivo LICENSE para más detalles.