A data analysis pipeline for running performance metrics, correcting for environmental factors (heat, altitude, slope) and generating interactive visualizations
This server has critical structural issues preventing production use. Transport is unknown/not visible in source. Tool definitions lack proper MCP registration patterns, no explicit schema objects with type/description pairs visible. Descriptions are present but generic (French-language, domain-specific jargon without LLM-friendly context). Parameters exist but lack formal JSON Schema typing. No error handling, validation, or recovery guidance. No tool annotations. This appears to be a Python CLI tool collection, not an MCP server.
Injecte perf.json dans le gabarit HTML et produit la page finale. Le gabarit contient le marqueur __DATA__, remplace par le contenu de perf.json. La page qui en sort est autonome (aucune ressource externe hors Google Fonts) et peut etre publiee telle quelle comme Artifact.
Verifie les CSV d'entree avant de lancer le pipeline. La transcription des reponses MCP vers details.csv se fait a la main, seance par seance : c'est l'endroit du pipeline ou une erreur est la plus probable et la plus silencieuse. Ce script attrape les cas typiques (lignes manquantes, doublons, allures aberrantes, durees en minutes au lieu de secondes).
Recupere la meteo horaire pour chaque lieu present dans activities_base.csv. Open-Meteo, sans cle d'API. L'archive ERA5 accuse environ 5 jours de retard, on complete donc les jours recents avec l'API forecast (past_days, max 92). Sortie : <data>/weather.csv, avec la colonne `elevation` qui donne l'altitude du site (utilisee ensuite comme altitude de depart de chaque sortie).
Indice de performance course a pied, corrige des facteurs environnementaux. Entrees : <data>/activities_base.csv, <data>/details.csv, <data>/weather.csv. Sortie : <data>/perf.json, consomme par assets/template.html
Allure à tenir le jour J, compte tenu des conditions attendues. C'est le modele de `model.py` pris a l'envers : au lieu de ramener une sortie observee vers des conditions neutres, on projette une allure de reference vers les conditions d'un lieu et d'une date.
No MCP server implementation visible. Source shows standalone Python CLI scripts (argparse-based), not MCP tool definitions. No tool registration, no JSON-RPC handlers, no transport layer.
Input schemas lack formal JSON Schema structure. Parameters are documented in docstrings and argparse, not as typed schema objects with 'type', 'description', 'required' fields. LLMs cannot parse argparse help text.
Descriptions are domain-specific and French-language without LLM-friendly context. 'Injecte perf.json dans le gabarit HTML' assumes domain knowledge. No WHEN/WHY guidance for tool selection. Descriptions lack actionable constraints (e.g., pace_target accepts 'min:sec per km' but format not formally specified).
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 33 | 2026-07-28+ | v2 |
Portage Python du validateur de palette de la skill dataviz (node absent ici). Memes seuils et memes matrices Machado-Oliveira-Fernandes (2009) severite 1.0 que scripts/validate_palette.js.
No error handling or recovery guidance. Scripts use sys.exit(1) and raise SystemExit with raw error messages. No categorization of retryable vs. fatal errors. No guidance for LLM on next steps after failure.
No output schemas documented. Tools write files (perf.json, weather.csv) or print to stdout, but return structure is not formally specified. LLMs cannot plan downstream tool calls without knowing what fields are available.