Kayzen Analytics

Un servidor MCP para interactuar con la API de Kayzen Analytics, que requiere credenciales configuradas mediante variables de entorno.

Documentación

Servidor MCP de Kayzen Analytics

Una implementación de servidor de Protocolo de Contexto de Modelo (MCP) para interactuar con la API de Kayzen Analytics. Este paquete permite a los modelos de IA acceder y analizar datos de campañas publicitarias de Kayzen a través de una interfaz estandarizada.

Características

  • Autenticación Automatizada: Gestión de tokens integrada con mecanismo de renovación automática
  • Gestión de Informes: Acceso fácil a los informes analíticos de Kayzen
  • Manejo de Errores: Manejo integral de errores para interacciones con la API
  • Soporte TypeScript: Implementación completa en TypeScript con definiciones de tipos
  • Configuración Basada en Entorno: Configuración sencilla mediante variables de entorno

Instalación

npm install @feedmob-ai/kayzen-mcp

Configuración

Crea un archivo .env con tus credenciales de Kayzen:

KAYZEN_USERNAME=your_username
KAYZEN_PASSWORD=your_password
KAYZEN_BASIC_AUTH=your_basic_auth_token
KAYZEN_BASE_URL=https://api.kayzen.io/v1  # Optional, defaults to this value

Uso

Configuración Básica

import { KayzenMCPServer } from '@feedmob-ai/kayzen-mcp';

const server = new KayzenMCPServer();
server.start();

Herramientas Disponibles

1. list_reports

Lista todos los informes disponibles de Kayzen Analytics.

  • Entradas: Ninguna
  • Devuelve: Matriz de objetos de informe que contienen:
    • id: Identificador del informe
    • name: Nombre del informe
    • type: Tipo de informe
const reports = await server.tools.list_reports();

2. get_report_results

Recupera los resultados de un informe específico.

  • Entradas:
    • report_id (cadena, obligatorio): ID del informe a recuperar
    • start_date (cadena, opcional): Fecha de inicio en formato AAAA-MM-DD
    • end_date (cadena, opcional): Fecha de fin en formato AAAA-MM-DD
  • Devuelve: Datos del informe y metadatos
const results = await server.tools.get_report_results({
  report_id: 'report_id',
  start_date: '2024-01-01',  // optional
  end_date: '2024-01-31'     // optional
});

3. analyze_report_results (Prompt)

Analiza los resultados del informe y proporciona información.

  • Entradas:
    • report_id (cadena): ID del informe a analizar
  • El análisis incluye:
    • Métricas de rendimiento
    • Tendencias clave
    • Áreas de optimización
    • Patrones inusuales o anomalías

Configuración

Uso con Claude Desktop

Para usar esto con Claude Desktop, agrega lo siguiente a tu claude_desktop_config.json:

NPX

{
  "mcpServers": {
    "github": {
      "command": "npx",
      "args": [
        "-y",
        "@feedmob-ai/kayzen-mcp"
      ],
      "env": {
        "KAYZEN_USERNAME": "username",
        "KAYZEN_PASSWORD": "pasword",
        "KAYZEN_BASIC_AUTH": "auth token"
      }
    }
  }
}

Desarrollo

Requisitos Previos

  • Node.js (v16 o superior)
  • npm (v7 o superior)
  • Credenciales de la API de Kayzen

Scripts

# Install dependencies
npm install

# Build the project
npm run build

# Start the server
npm start

# Development mode with hot-reload
npm run dev

Estructura del Proyecto

kayzen-mcp/
├── src/
│   ├── server.ts        # MCP server implementation
│   └── kayzen-client.ts # Kayzen API client
├── dist/               # Compiled JavaScript
└── package.json       # Project configuration

Dependencias

Dependencias principales:

  • @modelcontextprotocol/sdk: ^1.7.0
  • axios: ^1.8.3
  • dotenv: ^16.4.7
  • zod: ^3.24.2

Manejo de Errores

El servidor maneja varios escenarios de error:

  • Fallos de autenticación
  • Solicitudes de API no válidas
  • Problemas de red
  • Expiración y renovación de tokens
  • Parámetros no válidos

Licencia

Licencia MIT

Autor

FeedMob