Le basket français officiel, directement dans vos assistants IA.
Serveur MCP pour consulter calendriers, classements, bilans, résultats et scores live de la FFBB.
đ Site · đ§© Extension VS Code · đ Documentation · đŹ Support
â Si ce serveur MCP FFBB vous est utile pour vos assistants IA, n'hĂ©sitez pas Ă laisser une Ă©toile sur GitHub ! â
Tip
Aucune installation requise : le serveur est hébergé publiquement. Ajoutez simplement l'endpoint MCP à votre client :
https://ffbb.desimone.fr/mcp
Puis posez vos questions en langage naturel :
« Quel est le prochain match des U15 de mon club ? » « Donne-moi le classement de la poule et le dernier résultat. » « Y a-t-il des matchs en direct ce soir ? »
đ Voir la section Installation pour brancher l'endpoint sur VS Code, Claude, Cursor, etc.
- đïž Calendriers & rĂ©sultats â matchs passĂ©s et Ă venir, par club ou par Ă©quipe.
- đ Classements â poules complĂštes avec points, diffĂ©rentiel et forme.
- đ Bilans agrĂ©gĂ©s â toutes phases confondues en un seul appel.
- đŽ Scores live â matchs en cours, mis Ă jour toutes les 30 s.
- đ Recherche universelle â clubs, compĂ©titions, salles, engagements.
- đ OptimisĂ© pour les LLM â rĂ©ponses agrĂ©gĂ©es et cache TTL pour rĂ©duire le contexte et le nombre d'appels.
Option recommandĂ©e â installer l'extension FFBB Basketball MCP depuis les releases, puis ouvrir Copilot Chat en mode agent.
Alternative sans extension â â Installer FFBB MCP en un clic
Option A â Via l'interface de Claude (recommandĂ©, sans prĂ©requis)
- Ouvrez les ParamĂštres de Claude, puis Connecteurs (ou Plugins).
- Cliquez sur Ajouter un connecteur personnalisé.
- Renseignez l'URL publique
https://ffbb.desimone.fr/mcpet validez.
Option B â Via claude_desktop_config.json (nĂ©cessite Node.js)
Claude Desktop n'accepte que le transport stdio local : on utilise donc le bridge SSE officiel via npx.
[!WARNING] Prérequis : Node.js (inclut
npmetnpx). Sans Node.js, privilégiez l'Option A.
{
"mcpServers": {
"ffbb": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/client-sse", "https://ffbb.desimone.fr/mcp"]
}
}
}Configurez un serveur MCP distant :
| Champ | Valeur |
|---|---|
| Type | Streamable HTTP |
| URL | https://ffbb.desimone.fr/mcp |
Configurez directement l'URL distante dans mcp_config.json via la directive native serverUrl :
{
"mcpServers": {
"ffbb_mcp": {
"serverUrl": "https://ffbb.desimone.fr/mcp"
}
}
}| Outil | Usage |
|---|---|
ffbb_version |
Informations de version et configuration runtime du serveur FFBB MCP. |
ffbb_search |
Recherche FFBB â clubs, compĂ©titions, matchs, salles, tournois, etc. |
ffbb_bilan |
Bilan complet d'une équipe toutes phases confondues en UN seul appel (V/D/N, paniers, phases). |
ffbb_get |
Recupere une ressource FFBB par identifiant. |
ffbb_club |
Outils agrégés club : calendrier (matchs pluriels), équipes engagées ou classement. |
ffbb_lives |
Matchs en cours (scores live, cache 30s). Retourne [] si aucun match. |
ffbb_saisons |
Liste des saisons FFBB. active_only=True pour la saison en cours uniquement. |
ffbb_resolve_team |
Identifie une equipe unique (Pivot central). |
ffbb_team_summary |
Résumé complet et agent-friendly pour une équipe. |
ffbb_last_result |
Dernier résultat d'une équipe précise. |
ffbb_next_match |
Prochain match à jouer pour une équipe précise. |
ffbb_bilan_saison |
Bilan détaillé de la saison pour une équipe précise (toutes phases). |
ffbb_head_to_head |
Compare deux équipes et analyse leurs confrontations directes (H2H). |
Note
Référence complÚte des paramÚtres : docs/TOOLS_REFERENCE.md.
Endpoint MCP (transport Streamable HTTP) :
https://ffbb.desimone.fr/mcp
| Endpoint | URL |
|---|---|
| đ Dashboard | https://ffbb.desimone.fr/dashboard |
| đ MĂ©triques | https://ffbb.desimone.fr/metrics.json |
| â€ïž SantĂ© | https://ffbb.desimone.fr/health |
flowchart LR
A[Client MCP<br/>Claude · Cursor · Antigravity] -->|Streamable HTTP / Stdio| B[FFBB MCP Server<br/>FastMCP]
B --> C[Services métier<br/>Cache SWR & Agrégation]
C --> D[ffbb-data-client<br/>SDK Python]
D --> E[(API Directus &<br/>Meilisearch FFBB)]
Points clés :
- Double transport : Streamable HTTP distant (spec
2025-11-25) ou Stdio local (uvx) ; - SDK Python dĂ©couplĂ© : RequĂȘtes rĂ©seau et parsing Pydantic v2 dĂ©lĂ©guĂ©s Ă
ffbb-data-client; - Agrégation composite : 12 outils optimisés pour réduire les allers-retours et le contexte LLM ;
- Cache intelligent & SWR : Stale-While-Revalidate avec TTL par type de donnée (30 s lives, 1 h bilans, 24 h clubs) ;
- Observabilité complÚte : Dashboard HTML, métriques Prometheus, snapshot JSON et healthcheck intégrés.
Détails : docs/ARCHITECTURE.md et docs/PERFORMANCE.md.
uv sync --extra dev # installer les dépendances
uv run ruff format . # formater
uv run ruff check --fix . # linter
uv run mypy src # vérifier les types
uv run pytest # lancer les testsVoir CONTRIBUTING.md pour les rĂšgles de contribution.
uv run pytest # tests unitaires + couverture
uv run pytest tests/ # cibléLe pipeline CI (.github/workflows/ci.yml) exécute ruff, mypy, pytest et le contrÎle de couverture à chaque push/PR.
| SymptĂŽme | Cause probable | Solution |
|---|---|---|
Missing session ID / deadline exceeded |
Wrapper mcp-remote ou mauvais transport |
Utiliser serverUrl natif dans mcp_config.json (voir Google Antigravity) |
Claude Desktop refuse l'URL http |
Claude Desktop impose stdio |
Utiliser le bridge @modelcontextprotocol/client-sse via npx (voir Claude Desktop) |
| Données live obsolÚtes | Cache TTL | Attendre le rafraßchissement (†30 s) ou interroger l'endpoint /health |
Projet non officiel, non affilié à la Fédération Française de BasketBall.