Serveur MCP de Kayzen Analytics
Mise en œuvre d'un serveur Model Context Protocol (MCP) pour interagir avec l'API de Kayzen Analytics. Ce package permet aux modèles d'IA d'accéder et d'analyser les données des campagnes publicitaires de Kayzen à travers une interface standardisée.
Caractéristiques
- Authentification automatisée: Gestion intégrée des jetons avec mécanisme de rafraîchissement automatique
- Gestion des rapports: Accès facile aux rapports d'analyse de Kayzen
- Gestion des erreurs: Gestion complète des erreurs pour les interactions avec l'API
- Support TypeScript: Implémentation complète de TypeScript avec définitions de types
- Configuration basée sur l'environnement: Configuration simple à l'aide de variables d'environnement
Installation
npm install @feedmob-ai/kayzen-mcp
Configuration de l'environnement
Créez un fichier .env
avec vos identifiants Kayzen :
KAYZEN_USERNAME=votre_nomd'utilisateur KAYZEN_PASSWORD=votre_mot_de_passe KAYZEN_BASIC_AUTH=votre_base_auth_token KAYZEN_BASE_URL=https://api.kayzen.io/v1 # Facultatif, cette valeur est proposée par défaut
Utilisation
Configuration de base
import { KayzenMCPServer } from '@feedmob-ai/kayzen-mcp' ; const server = new KayzenMCPServer() ; server.start()
Outils disponibles
1. list_reports
Liste tous les rapports disponibles de Kayzen Analytics.
- Entrées: Aucune
- Retourne: Tableau d'objets de rapport contenant
id
: Identifiant du rapportname
: Nom du rapporttype
: Type de rapport
const reports = await server.tools.list_reports()
2. get_report_results
Récupère les résultats d'un rapport spécifique.
- Entrées
report_id
(chaîne, obligatoire) : ID du rapport à récupérerstart_date
(chaîne, facultatif) : Date de début au format AAAA-MM-JJend_date
(chaîne de caractères, facultatif) : Date de fin au format AAAA-MM-JJ
- Retourne: Données et métadonnées du rapport
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
(Invite)
Analyse les résultats du rapport et fournit des informations.
- Entrées
report_id
(chaîne) : ID du rapport à analyser
- L'analyse comprend
- Mesures de performance
- Tendances clés
- Domaines à optimiser
- Modèles inhabituels ou anomalies
Configuration
Utilisation avec Claude Desktop
Pour l'utiliser avec Claude Desktop, ajoutez ce qui suit à votre fichier claude_desktop_config.json
:
NPX
{ "mcpServers" : { "github" : { "command" : "npx", "args" : [ "-y", "@feedmob-ai/kayzen-mcp" ], "env" : { "KAYZEN_USERNAME" : "username", "KAYZEN_PASSWORD" : "mot de passe", "KAYZEN_BASIC_AUTH" : "auth token" } } }
Développement
Conditions préalables
- Node.js (v16 ou supérieure)
- npm (v7 ou supérieure)
- Identifiants de l'API Kayzen
Scripts
# Installation des dépendances npm install # Construction du projet npm run build # Démarrage du serveur npm start # Mode développement avec hot-reload npm run dev
Structure du projet
kayzen-mcp/ ├── src/ │ ├── server.ts # Implémentation du serveur MCP │ └── kayzen-client.ts # Client de l'API Kayzen ├── dist/ # JavaScript compilé └── package.json # Configuration du projet
Dépendances
Principales dépendances :
@modelcontextprotocol/sdk
: ^1.7.0axios
: ^1.8.3dotenv
: ^16.4.7zod
: ^3.24.2
Gestion des erreurs
Le serveur gère différents scénarios d'erreur :
- Échecs d'authentification
- Demandes d'API non valides
- Problèmes de réseau
- Expiration et rafraîchissement des jetons
- Paramètres non valides
Licence d'utilisation
Licence MIT
Auteur
FeedMob