Skip to main content
Glama
springwq

Kayzen Analytics MCP Server

by springwq

Servidor MCP de Kayzen Analytics

Implementación de servidor del Protocolo de Contexto de Modelo (MCP) para interactuar con la API de Kayzen Analytics. Este paquete permite que los modelos de IA accedan y analicen los datos de las campañas publicitarias de Kayzen mediante una interfaz estandarizada.

Características

  • Autenticación automatizada : gestión de tokens integrada con mecanismo de actualización automática

  • Gestión de informes : Fácil acceso a los informes analíticos de Kayzen

  • Manejo de errores : manejo integral de errores para interacciones de API

  • Compatibilidad con TypeScript : implementación completa de TypeScript con definiciones de tipos

  • Configuración basada en el entorno : configuración sencilla mediante variables de entorno

Related MCP server: Amazon Ads API MCP SDK

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

Enumera todos los informes disponibles de Kayzen Analytics.

  • Entradas : Ninguna

  • Devuelve : Matriz de objetos de informe que contiene:

    • id : Identificador del informe

    • name : Nombre del informe

    • type : Tipo de informe

const reports = await server.tools.list_reports();

2. get_report_results

Recupera resultados para un informe específico.

  • Entradas :

    • report_id (cadena, obligatoria): ID del informe a obtener

    • start_date (cadena, opcional): Fecha de inicio en formato AAAA-MM-DD

    • end_date (cadena, opcional): Fecha de finalización en formato AAAA-MM-DD

  • Devuelve : Datos y metadatos del informe

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 (Indicación)

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 o anomalías inusuales

Configuración

Uso con Claude Desktop

Para usar esto con Claude Desktop, agregue lo siguiente a su 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

Prerrequisitos

  • Node.js (v16 o superior)

  • npm (v7 o superior)

  • Credenciales de la API de Kayzen

Guiones

# 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 gestiona varios escenarios de error:

  • Errores de autenticación

  • Solicitudes de API no válidas

  • Problemas de red

  • Vencimiento y actualización del token

  • Parámetros no válidos

Licencia

Licencia MIT

Autor

FeedMob

Available Tools

2 tools
get_report_resultsD
ParametersJSON Schema
NameRequiredDescriptionDefault
end_dateNoEnd date in YYYY-MM-DD format
report_idYesID of the report to fetch results for
start_dateNoStart date in YYYY-MM-DD format

TDQS

D1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Tool has no description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness1/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Tool has no description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool has no description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Tool has no description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

Tool has no description.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Tool has no description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_reportsD
ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

D1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Tool has no description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness1/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Tool has no description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool has no description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Tool has no description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

Tool has no description.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Tool has no description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 2 tool updatesv1.0.0
    • First observedget_report_results
    • First observedlist_reports

TDQS

D1.8/5.0

Scored across 2 tools

Disambiguation5/5

The two tools have clearly distinct purposes: 'get_report_results' appears to retrieve specific report data, while 'list_reports' enumerates available reports. There is no overlap in functionality, making it easy for an agent to choose the correct tool based on whether it needs to list reports or fetch results from a particular report.

Naming Consistency5/5

Both tools follow a consistent verb_noun naming pattern ('get_report_results' and 'list_reports'), using snake_case throughout. The verbs 'get' and 'list' are standard and predictable, making the tool names easy to understand and use without confusion.

Tool Count2/5

With only two tools, the server feels under-scoped for an analytics domain, which typically involves operations like creating, updating, filtering, or deleting reports. This minimal set may force agents to work around gaps, such as being unable to generate new reports or modify existing ones, limiting functionality.

Completeness2/5

The tool surface is severely incomplete for analytics: it allows listing and retrieving reports but lacks essential operations like creating, updating, deleting, or filtering reports. This creates significant gaps that will likely cause agent failures when trying to perform common analytics tasks beyond basic read-only access.

Maintenance

ActivityInactive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables AI-powered advertising applications by providing MCP-compliant tools to interact with Amazon Ads API for campaign management, reporting, and optimization.
    3
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables AI assistants to manage, report, and analyze Google Ads campaigns securely with encrypted multi-client support, real-time API integrations, and audit trail logging.
    23 npm
    MIT
  • A
    license
    Not graded
    quality
    F
    maintenance
    Connects Google Ads, Meta Ads, and LinkedIn Ads to AI assistants, enabling natural language ad campaign management, reporting, and optimization across platforms.
    MIT