Kayzen Analytics

Um servidor MCP para interagir com a API do Kayzen Analytics, exigindo credenciais configuradas por meio de variáveis de ambiente.

Documentação

Servidor MCP Kayzen Analytics

Uma implementação de servidor Model Context Protocol (MCP) para interagir com a API Kayzen Analytics. Este pacote permite que modelos de IA acessem e analisem dados de campanhas publicitárias Kayzen por meio de uma interface padronizada.

Recursos

  • Autenticação Automatizada: Gerenciamento de token integrado com mecanismo de renovação automática
  • Gerenciamento de Relatórios: Acesso fácil aos relatórios analíticos Kayzen
  • Tratamento de Erros: Tratamento abrangente de erros para interações com a API
  • Suporte a TypeScript: Implementação completa em TypeScript com definições de tipos
  • Configuração Baseada em Ambiente: Configuração simples usando variáveis de ambiente

Instalação

npm install @feedmob-ai/kayzen-mcp

Configuração

Crie um arquivo .env com suas credenciais 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

Configuração Básica

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

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

Ferramentas Disponíveis

1. list_reports

Lista todos os relatórios disponíveis do Kayzen Analytics.

  • Entradas: Nenhuma
  • Retorna: Matriz de objetos de relatório contendo:
    • id: Identificador do relatório
    • name: Nome do relatório
    • type: Tipo de relatório
const reports = await server.tools.list_reports();

2. get_report_results

Recupera resultados de um relatório específico.

  • Entradas:
    • report_id (string, obrigatório): ID do relatório a ser buscado
    • start_date (string, opcional): Data de início no formato AAAA-MM-DD
    • end_date (string, opcional): Data de término no formato AAAA-MM-DD
  • Retorna: Dados do relatório e metadados
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)

Analisa resultados de relatórios e fornece insights.

  • Entradas:
    • report_id (string): ID do relatório a ser analisado
  • A análise inclui:
    • Métricas de desempenho
    • Principais tendências
    • Áreas para otimização
    • Padrões incomuns ou anomalias

Configuração

Uso com Claude Desktop

Para usar com Claude Desktop, adicione o seguinte ao seu 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"
      }
    }
  }
}

Desenvolvimento

Pré-requisitos

  • Node.js (v16 ou superior)
  • npm (v7 ou superior)
  • Credenciais da API 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

Estrutura do Projeto

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

Dependências

Principais dependências:

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

Tratamento de Erros

O servidor lida com vários cenários de erro:

  • Falhas de autenticação
  • Solicitações de API inválidas
  • Problemas de rede
  • Expiração e renovação de token
  • Parâmetros inválidos

Licença

Licença MIT

Autor

FeedMob