Logo FoodEatUp
OuvertDifficulté 4/5Potentiel 5/5Copilote

Fidélité intelligente

récompenses ajustées au comportement réel

Visuel du projet Fidélité intelligente

DÉMARRAGE

Des briefs prêts à copier.

Un assistant qui analyse, recommande et déclenche les bons outils MCP après validation. Le prompt Lovable contient déjà la connexion au MCP BraindCode Build, la découverte des outils et les règles de sécurité.

Logo Lovable

Construire ce projet dans Lovable

Créez votre projet avec notre lien d'invitation et recevez 10 crédits supplémentaires.

Créer mon projet
Tu construis Fidélité intelligente, une extension du Hackathon BraindCode.

Projet : Fidélité intelligente
Produit cible : FoodEatUp
Type de projet : Copilote — Un assistant qui analyse, recommande et déclenche les bons outils MCP après validation.
Promesse : récompenses ajustées au comportement réel
Problème : Chaque service produit des données sur récompenses ajustées au comportement réel, mais elles restent dispersées entre les écrans opérationnels. Le responsable recoupe les chiffres après le service, lorsque les écarts ont déjà produit leurs effets. Les équipes manquent d’un signal partagé pour décider quoi traiter en premier. Fidélité intelligente doit réunir les faits utiles, montrer leur origine et laisser toute décision sensible à une personne.
Objectif : Fournir une vue exploitable de récompenses ajustées au comportement réel, avec des constats sourcés, des priorités explicables et un suivi des décisions prises.

PILE TECHNIQUE
TanStack Start, React, Tailwind, composants shadcn, Lovable Cloud pour l’authentification, la base de données et les fonctions serveur. Tous les appels MCP passent par des fonctions serveur.

IDENTITÉ VISUELLE
CHARTE GRAPHIQUE — FoodEatUp

Logo officiel du logiciel : https://build.braindcode.com/__l5e/assets-v1/64401626-4b06-49a4-88cf-c6f9f0348e04/foodeatup-logo.png

Logo BraindCode : https://build.braindcode.com/__l5e/assets-v1/b8ab3ddf-7aea-424d-9772-b9ef3a681d1d/braindcode-logo.jpg

Couleurs :
- primary : #0098F3
- night : #161B2C
- ink : #0F172A
- surface : #FFFFFF
- surface_alt : #F1F8FE
- border : #DCE7F0
- success : #10B981
- warning : #F59E0B
- danger : #EF4444

Typographie : titres Gilroy, 600/700 (repli Poppins) / corps Inter, 400 / technique JetBrains Mono.
Titre 30/38, sous-titre 20/28, corps 15/24, étiquette 12/16 en capitales espacées.

Rayon 8 px pour les cartes et champs, 6 px pour les boutons, 999 px pour les badges.
Échelle 4 / 8 / 12 / 16 / 24 / 32 / 48. Interface dense : préfère 12 et 16 dans les tableaux.
Icônes lucide-react, trait 1.5 px, taille 16 ou 20 px, jamais colorées en plein.

Règles d'interface :
- Interface de restaurant : lisible à distance, en cuisine, sur écran tactile.
- Cibles tactiles d'au moins 44 px, contrastes élevés, aucune information critique en gris clair.
- Statuts d'hygiène et de stock en vert #10B981, alerte en ambre #F59E0B, rupture ou non-conformité en rouge #EF4444.
- Les fiches recette, lots et codes HACCP s'affichent en monospace.

Interdits :
- Aucun emoji, nulle part.
- Aucun rendu 3D photoréaliste ni illustration décorative générique.
- Aucun dégradé violet/indigo sur fond blanc.
- Aucun logo de marque inventé : n'utilise que les URL de logo fournies.
- La couleur du logiciel reste un accent (bordures, badges, filets, états actifs), jamais un aplat de fond plein écran.

VISUELS DU PROJET
- Image officielle du projet (couverture 16:9) : https://build.braindcode.com/__l5e/assets-v1/1fe2f892-b6a6-4c45-b030-304f20712d83/fidelite-intelligente.jpg
- Accroche : récompenses ajustées au comportement réel
- Punchline : Fournir une vue exploitable de récompenses ajustées au comportement réel, avec des constats sourcés, des priorités explicables et un suivi des décisions prises.
- Logo du logiciel : https://build.braindcode.com/__l5e/assets-v1/64401626-4b06-49a4-88cf-c6f9f0348e04/foodeatup-logo.png
- Logo BraindCode : https://build.braindcode.com/__l5e/assets-v1/b8ab3ddf-7aea-424d-9772-b9ef3a681d1d/braindcode-logo.jpg
Reprends l'accroche et la punchline dans l'écran d'accueil et la page de partage. Réutilise l'image officielle comme visuel de couverture, ne la remplace pas par une image générée.

VARIABLES CSS À DÉCLARER
--color-primary: #0098F3;
--color-night: #161B2C;
--color-ink: #0F172A;
--color-surface: #FFFFFF;
--color-surface-alt: #F1F8FE;
--color-border: #DCE7F0;
--color-success: #10B981;
--color-warning: #F59E0B;
--color-danger: #EF4444;
--font-heading: Gilroy, 600/700 (repli Poppins);
--font-body: Inter, 400;
--font-mono: JetBrains Mono;

Tu vas produire l'interface d'une extension tierce du logiciel FoodEatUp, éditée par un développeur indépendant dans le cadre du Hackathon BraindCode.\n\nIDENTITÉ À RESPECTER\nMon extension est un produit distinct : elle porte son propre nom et sa propre identité, mais elle doit être visuellement compatible avec FoodEatUp et signaler clairement son appartenance à l'écosystème BraindCode.\n\nCouleur d'accent produit : #0098F3\nTypographie produit : Gilroy, fallback Poppins\nLogo produit : https://build.braindcode.com/__l5e/assets-v1/64401626-4b06-49a4-88cf-c6f9f0348e04/foodeatup-logo.png, à afficher uniquement dans une mention d'appartenance du type « Extension pour FoodEatUp », jamais comme logo principal de mon application.\n\nRÈGLES D'USAGE DES LOGOS\nNe jamais déformer, incliner, recolorer ou recomposer le logo FoodEatUp ni le logo BraindCode.\nNe jamais laisser croire que l'extension est éditée par BraindCode.\nRespecter la zone de protection autour de chaque logo.\n\nSYSTÈME VISUEL DEMANDÉ\nFond clair par défaut, surfaces sombres en #161B2C, texte #000000, gris de bordure #C1C1C1, une seule couleur d'accent : #0098F3. Monospace pour tout élément technique.\nComposants : cartes, tableaux denses, badges d'état, barre latérale de navigation.\nInterface en français, sobre, orientée métier.

MVP À LIVRER
- tableau de synthèse de récompenses ajustées au comportement réel
- filtres par période, établissement et statut
- détail sourcé de chaque signal
- priorités et recommandations explicables
- export ou partage du résultat

DONNÉES NÉCESSAIRES
- établissements et zones
- produits, recettes ou services concernés
- événements opérationnels horodatés
- statuts, responsables et historiques

ENTITÉS À MODÉLISER
- établissement
- service
- signal
- indicateur
- recommandation

CAPACITÉS MCP À COUVRIR (à découvrir à l’exécution, jamais en dur)
- lire les référentiels autorisés
- consulter les événements et historiques
- filtrer par établissement et période
- obtenir les statuts et indicateurs agrégés

Connecte d'abord le serveur BraindCode Build à l'adresse https://build.braindcode.com/api/mcp. Utilise get_project_context pour récupérer le contexte de cette idée et list_connectors pour connaître uniquement les connecteurs réellement configurés. N'invente jamais d'adresse MCP tierce.

Serveur MCP concerné : FoodEatUp — récupère son adresse avec get_project_context. Authentification OAuth 2.0 révocable. Prévois néanmoins la connexion de plusieurs serveurs : un seul mécanisme, plusieurs connecteurs découverts via list_connectors.

CONNEXION AUX SERVEURS MCP (FoodEatUp)

Construis une couche de connexion MCP générique, utilisable pour FoodEatUp, RapidoCRM, RapidoCMS et RapidoRH.

1. Table de connecteurs : clé du serveur, nom affiché, URL HTTPS, type d'authentification (aucun, clé, OAuth), statut (connecte, deconnecte, erreur), dernier test, message d'erreur. Lecture réservée aux comptes autorisés.
2. Table de secrets séparée : jeton d'accès, jeton de rafraîchissement, clé API, expiration. Jamais lisible depuis le navigateur, jamais renvoyée par une fonction serveur.
3. Dialogue MCP en JSON-RPC 2.0 sur HTTP « Streamable » côté serveur uniquement :
   - en-têtes : Content-Type: application/json et Accept: application/json, text/event-stream ;
   - séquence : initialize (protocolVersion 2025-06-18), puis notifications/initialized, puis tools/list, puis tools/call ;
   - conserver l'identifiant de session renvoyé dans l'en-tête Mcp-Session-Id et le renvoyer sur les appels suivants ;
   - accepter aussi bien une réponse JSON qu'un flux d'événements, en extrayant les lignes data: ;
   - délai maximum 15 secondes, messages d'erreur lisibles (injoignable, non autorisé, délai dépassé).
4. Écran d'administration des connecteurs : une carte par produit avec son logo et sa couleur d'accent, champ URL, choix d'authentification, bouton « Tester la connexion », pastille de statut et nombre d'outils découverts.
5. L'URL de chaque serveur MCP est saisie dans cet écran. N'invente jamais une adresse et n'en code aucune en dur.

OUTILS DÉCOUVERTS À L'EXÉCUTION

1. Après chaque connexion réussie, appelle tools/list et enregistre pour chaque outil : nom, titre, description, schéma d'entrée, serveur d'origine et indicateur « lecture seule / modifiant / destructif ».
2. Construis un registre unifié en mémoire, indexé par nom normalisé, fusionnant les outils de tous les serveurs connectés. En cas de doublon, préfixe par la clé du serveur.
3. Expose une recherche d'outil par intention en français (mots-clés sur le nom, le titre et la description) afin que l'assistant choisie l'outil pertinent sans liste figée.
4. N'écris jamais un nom d'outil MCP en dur dans le code ni dans l'interface : tout part du registre. Si un outil attendu est absent, affiche-le honnêtement plutôt que de simuler.
5. Valide systématiquement les paramètres contre le schéma d'entrée réel avant tout appel, et affiche les erreurs de validation à l'utilisateur.
6. Prévois un rafraîchissement manuel du registre et un affichage « N outils disponibles sur M serveurs ».

ORCHESTRATEUR D'EXÉCUTION

Tous les chemins d'appel d'outil (interface, assistant, routine automatique) passent par un noyau serveur unique. Ce noyau, et lui seul, réalise dans cet ordre :

1. Résolution de l'outil dans le registre unifié.
2. Validation des paramètres contre le schéma réel ; refus explicite sans consommation de quota.
3. Garde-fou : toute action modifiante ou destructrice exige une confirmation humaine explicite, transmise comme paramètre de confirmation. Sans elle, refus.
4. Consommation d'un quota par compte et par jour, avec refus lisible quand il est épuisé.
5. Journal d'exécution : outil, serveur, paramètres non sensibles, statut, durée, résultat résumé, erreur éventuelle.
6. Retour d'un résultat typé succès/échec, jamais une exception brute.

Ajoute au-dessus un planificateur : à partir d'une demande en langage naturel, il propose une suite d'étapes (outil + paramètres), l'affiche pour validation, puis l'exécute étape par étape avec possibilité d'arrêt. Les routines enregistrées rejouent une suite d'étapes et sont visibles dans un tableau de bord : dernières exécutions, taux de succès, durée moyenne, erreurs récentes.

SÉCURITÉ — RÈGLES NON NÉGOCIABLES

1. Aucun jeton, clé ou identifiant MCP dans le navigateur, dans le code source, dans une variable publique ou dans un journal.
2. Seules les URL HTTPS sont acceptées. Refuse les adresses locales, les réseaux privés et les redirections automatiques.
3. Tout appel MCP part du serveur. Le navigateur n'envoie qu'une intention et des paramètres validés.
4. Chaque appel est journalisé sans secret : utilisateur, serveur, outil, statut, durée.
5. Les actions destructrices exigent une confirmation humaine explicite et sont toujours réversibles ou tracées.
6. Les données affichées respectent les droits du compte connecté : jamais d'élévation de privilèges pour « faire fonctionner » une fonctionnalité.
7. Aucune donnée client réelle en démonstration : jeu de données fictif crédible.

TESTS ET LIVRABLES

1. Tests automatiques : validation des paramètres, refus d'une action sensible non confirmée, épuisement du quota, serveur MCP injoignable, outil absent du registre.
2. Tests manuels documentés : connexion d'un serveur, découverte des outils, exécution d'une action lecture, exécution d'une action sensible confirmée, consultation du journal.
3. États d'interface à couvrir : vide, chargement, erreur, résultat, confirmation.
4. Rapport de tests exportable, avec date, périmètre et résultats.
5. Livrables : dépôt public, serveur MCP de l'extension documenté et joignable, déclaration dans Plan'It, plugin publié sur plugin.braindcode.com, validation par un modèle tiers (Claude, Mistral ou OpenAI).
6. Vérifie le rendu sur ordinateur et sur téléphone avant de considérer le projet terminé.

Ajoute à ce projet la couche d'accès au serveur MCP FoodEatUp, hébergé par une application Laravel.\n\nRÈGLE NON NÉGOCIABLE\nAucun jeton, aucune clé, aucun identifiant MCP ne doit exister côté navigateur. Tout appel passe par une fonction serveur qui joue le rôle de proxy.\n\nÀ CONSTRUIRE\n1. Une fonction serveur mcp-proxy qui reçoit une action et ses paramètres, ajoute l'authentification depuis les secrets du projet, appelle le serveur MCP, et renvoie la réponse. Les secrets ne sont jamais journalisés.\n2. Une authentification par jeton porteur émis par Laravel, avec rafraîchissement et gestion de l'expiration. Sur 401, demander une reconnexion sans réessayer en boucle.\n3. Une découverte dynamique des outils au démarrage : lister les outils exposés, les mettre en cache pour la session, ne jamais coder une liste en dur.\n4. Une isolation stricte par établissement ou compte client ; refuser tout appel sans périmètre.\n5. Une distinction lecture / écriture avec confirmation explicite avant toute écriture.\n6. Un journal des appels : horodatage, outil, périmètre, statut, durée.\n7. Des erreurs lisibles en français avec comportement de repli.\n\nÀ NE PAS FAIRE\nN'invente aucun nom d'outil : construis le code autour de la liste découverte à l'exécution. N'implémente aucune écriture avant que la lecture ne fonctionne de bout en bout.

Les skills, routines et plugins publiables se trouvent sur https://plugin.braindcode.com. Cette marketplace complète le MCP BraindCode mais ne remplace pas son adresse de connexion.

ROUTINE & LOOP-ENGINEERING
Une extension livrée ne vaut que par ce qu'elle fait tourner. Connecte-toi au serveur MCP de la marketplace de prompts et de routines : https://plugin.braindcode.com/mcp (catalogue public sur https://plugin.braindcode.com).
Outils de routine disponibles côté marketplace : chercher_prompts, prompts_pour_agent, lister_routines, obtenir_routine, proposer_routine, mettre_a_jour_routine, planifier_routine, installer_routine, enregistrer_execution_routine, journal_routine, auditer_routines, rendre_verdict_routine, promouvoir_routine, lister_boucles, obtenir_boucle, definir_kpi, enregistrer_kpi, serie_kpi, rattacher_kpi_routine, alertes_kpi, tableau_de_bord, ma_semaine, lister_mcp, routines_pour_mcp. Découvre-les à l'exécution, n'en code aucun en dur.
Avant d'écrire du code, cherche s'il existe déjà une routine ou un prompt éprouvé pour FoodEatUp et repars de là.
Quand le projet est livré, écris sa routine par défaut avec les six champs obligatoires — objectif chiffré et échéance, déclencheur, outils MCP autorisés, garde-fous chiffrés, point d'arrêt humain, mesure (KPI et sa source) — fais-la auditer avec auditer_routines, puis propose-la avec proposer_routine. Elle s'exécutera ensuite dans Plan'It.
Points d'arrêt humains non négociables : dépenser de l'argent, publier publiquement, écrire à un client, signer. L'agent prépare, l'humain valide. Aucune clé d'API ni jeton dans un prompt ou dans le navigateur.

ÉCRANS À CONSTRUIRE
- tableau de bord
- liste filtrable
- détail d’un signal
- paramètres

ÉTATS À GÉRER
- chargement
- aucune donnée
- erreur de connexion
- résultats disponibles
- action confirmée

ACTIONS SENSIBLES — CONFIRMATION HUMAINE OBLIGATOIRE
- modifier une donnée opérationnelle
- déclencher une notification externe
- valider, annuler ou lancer une opération

NOTES DE CADRAGE
Commencer en lecture seule sur un établissement de démonstration. Rendre chaque résultat traçable jusqu’à sa donnée source. Tester la qualité et la fraîcheur des données avant de proposer une action.

SUIVI BRAINDCODE
Enregistre l'avancement avec save_project_progress, utilise check_project_readiness avant la publication, puis publish_project pour créer la vitrine publique sur build.braindcode.com.

Devenir une routine

Une extension livrée ne vaut que par ce qu’elle fait tourner.

Une fois le projet livré, écrivez sa routine : objectif chiffré, déclencheur, outils du MCP FoodEatUp autorisés, garde-fous, point d’arrêt humain et mesure. Faites-la auditer dans Claude Code via le MCP de la marketplace de prompts, puis mettez-la en production dans Plan’It.

REVENUS

Combien cette extension peut vous rapporter.

Clients équipés3
Installation facturée (par client)600 €
Abonnement de votre extension39 €/mois
Licence FoodEatUp (par client)89 €/mois
Commission reversée sur la licence25 %

Valeurs indicatives à régler vous-même : les prix et le taux de commission réels se fixent avec BraindCode.

Encaissé tout de suite

1 800 €

Chaque mois, tant que le client reste

184 €

117 € d’abonnement + 67 € de commission

Première année

4 005 €

ÉQUIPE D’AGENTS

Qui fait tourner « Fidélité intelligente ».

Chaque agent a un métier, une mission sur ce projet et des compétences. L’agent référent dépend du logiciel concerné (FoodEatUp) ; les coéquipiers sont choisis selon ce que le projet manipule.

Léo

Léo

Le Chef — agent référent

Fait tourner « Fidélité intelligente » au quotidien sur FoodEatUp : Fournir une vue exploitable de récompenses ajustées au comportement réel, avec des constats sourcés, des priorités explicables et un suivi des décisions prises.

  • tableau de synthèse de récompenses ajustées au comportement réel
  • filtres par période, établissement et statut
  • détail sourcé de chaque signal
  • priorités et recommandations explicables
L'Orchestrateur

L'Orchestrateur

Chef d'orchestre

Déclenche la routine de « Fidélité intelligente », arbitre les conflits entre agents et s'arrête devant chaque validation humaine.

  • Déclenchement
  • Arbitrage
  • Journalisation
  • Compte rendu
Marc

Marc

Le Directeur — verdict hebdomadaire

Relit chaque vendredi les chiffres de « Fidélité intelligente » et rend le verdict : on garde, on corrige, on arrête.

  • Lecture des KPI
  • Verdict
  • Trois priorités
Ali

Ali

Le passeur de commandes — pôle Salle

Apporte au projet le métier « le passeur de commandes » : il relit ce que produit Léo et signale ce qui ne tient pas sur le terrain.

  • Salle
  • operations
Léna

Léna

La conceptrice d'expérience — pôle Produit

Apporte au projet le métier « la conceptrice d'expérience » : il relit ce que produit Léo et signale ce qui ne tient pas sur le terrain.

  • Produit
  • operations
Bruno

Bruno

Le second de cuisine — pôle Cuisine

Apporte au projet le métier « le second de cuisine » : il relit ce que produit Léo et signale ce qui ne tient pas sur le terrain.

  • Cuisine
  • operations

MESURE

Les indicateurs connectés à Plan’It.

IndicateurUnitéSourceCibleAlerte
Temps gagné sur « Fidélité intelligente »minutes par jourJournal d'exécution de la routine (MCP FoodEatUp)30 minutes par jour au bout de 3 semainesen dessous de 10 minutes par jour
Exécutions réussies sans reprise humainepourcentagejournal_routine90 % des exécutionsen dessous de 70 %
Personnes au-dessus de leur capaciténombreMCP FoodEatUpzéro deux semaines de suiteau-dessus de 1

PROMPTS

Routine, boucle et plugin, prêts à coller.

ROUTINE — Fidélité intelligente
Agent référent : Léo (Le Chef — agent référent)
Équipe : Léo, L'Orchestrateur, Marc, Ali, Léna, Bruno

Connecte-toi au MCP de la marketplace de routines (https://plugin.braindcode.com/mcp), au MCP BraindCode Build (https://build.braindcode.com/api/mcp) et au MCP du logiciel — FoodEatUp : adresse MCP à confirmer avec l'équipe. Découvre les outils à l'exécution, n'en code aucun en dur.

1. OBJECTIF CHIFFRÉ
Fournir une vue exploitable de récompenses ajustées au comportement réel, avec des constats sourcés, des priorités explicables et un suivi des décisions prises.
Cible retenue : 30 minutes par jour au bout de 3 semaines.

2. DÉCLENCHEUR
Tous les jours à 7 h, et à chaque événement qui touche établissement, service, signal.

3. OUTILS MCP AUTORISÉS
- lire les référentiels autorisés
- consulter les événements et historiques
- filtrer par établissement et période
- obtenir les statuts et indicateurs agrégés
Rien d'autre. Un outil non listé n'est pas appelé, même en cas d'imprévu.

4. GARDE-FOUS
- Maximum une exécution par déclencheur, dans la plage 7 h – 20 h.
- Aucune donnée personnelle sortie du logiciel source.
- Aucune écriture tant que la lecture n'a pas été vérifiée.

5. POINT D'ARRÊT HUMAIN
- modifier une donnée opérationnelle : l'agent prépare, l'humain valide.
- déclencher une notification externe : l'agent prépare, l'humain valide.
- valider, annuler ou lancer une opération : l'agent prépare, l'humain valide.

6. MESURE
- Temps gagné sur « Fidélité intelligente » (minutes par jour) — source : Journal d'exécution de la routine (MCP FoodEatUp) — cible : 30 minutes par jour au bout de 3 semaines
- Exécutions réussies sans reprise humaine (pourcentage) — source : journal_routine — cible : 90 % des exécutions
- Personnes au-dessus de leur capacité (nombre) — source : MCP FoodEatUp — cible : zéro deux semaines de suite

À la fin de chaque exécution : enregistre_execution_routine, puis enregistrer_kpi pour chaque mesure ci-dessus. Aucune clé d'API ni jeton dans ce prompt.

Le problème

Chaque service produit des données sur récompenses ajustées au comportement réel, mais elles restent dispersées entre les écrans opérationnels. Le responsable recoupe les chiffres après le service, lorsque les écarts ont déjà produit leurs effets. Les équipes manquent d’un signal partagé pour décider quoi traiter en premier. Fidélité intelligente doit réunir les faits utiles, montrer leur origine et laisser toute décision sensible à une personne.

Ce qu’il faut construire

Fournir une vue exploitable de récompenses ajustées au comportement réel, avec des constats sourcés, des priorités explicables et un suivi des décisions prises.

MVP

  • — tableau de synthèse de récompenses ajustées au comportement réel
  • — filtres par période, établissement et statut
  • — détail sourcé de chaque signal
  • — priorités et recommandations explicables
  • — export ou partage du résultat

Bonus

  • — comparaison entre périodes
  • — alertes configurables par rôle
  • — historique des décisions et résultats

Données du produit concernées

Familles de données

  • — établissements et zones
  • — produits, recettes ou services concernés
  • — événements opérationnels horodatés
  • — statuts, responsables et historiques

Capacités MCP concernées

Familles de capacités

  • — lire les référentiels autorisés
  • — consulter les événements et historiques
  • — filtrer par établissement et période
  • — obtenir les statuts et indicateurs agrégés
Découvrez la liste d’outils à l’exécution. Ne codez aucun nom d’outil en dur.
Voir les capacités de FoodEatUp

Actions sensibles

Confirmation humaine obligatoire avant toute action :

  • — modifier une donnée opérationnelle
  • — déclencher une notification externe
  • — valider, annuler ou lancer une opération

Exigences techniques BraindCode

L’extension expose son propre serveur MCP, documenté et joignable
Ses outils portent des noms et descriptions compréhensibles par un modèle
Elle est déclarable dans Plan’It
L’authentification passe par un backend, jamais par le navigateur
Un plugin est publié sur plugin.braindcode.com
Le dépôt GitHub est public ou partagé avec le jury
Un rapport de tests manuels et automatisés est fourni
Une validation par Claude, Mistral ou OpenAI est jointe

Grille d’évaluation

Utilité réelle20 %
Qualité du serveur MCP20 %
Innovation15 %
Expérience utilisateur15 %
Qualité technique et tests15 %
Modèle économique15 %