Skip to main content

🏀 FFBB MCP Server

Le basket français officiel, directement dans vos assistants IA.

Serveur MCP pour consulter calendriers, classements, bilans, résultats, scores live et règlements officiels de la FFBB (Fédération Française de Basketball).

🇺🇸 English Summary: Official Model Context Protocol (MCP) server for French Basketball (FFBB). Connect your AI assistants (Claude, Cursor, Copilot, ChatGPT, Antigravity) to live French basketball schedules, standings, scores, team records, club directories, and official federal regulations via Streamable HTTP or Stdio.

🌐 Site · 🧩 Extension VS Code · 📚 Documentation · 💬 Support


Version Python CI MCP Glama License: Apache 2.0 GitHub stars


⭐ Si ce serveur MCP FFBB vous est utile pour vos assistants IA, n'hésitez pas à laisser une étoile sur GitHub ! ⭐


⚡ Démarrage express (< 2 min)

https://ffbb.desimone.fr/mcp

Puis posez vos questions en langage naturel :

« Quel est le prochain match des U15 de mon club (nommer le club) ? » « Donne-moi le classement de la poule des U15M2 du Stade Clermontois 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.


✨ Fonctionnalités

  • 🗓️ 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.

🚀 Installation

VS Code / GitHub Copilot

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

Claude Desktop

Option A — Via l'interface de Claude (recommandé, sans prérequis)
  1. Ouvrez les Paramètres de Claude, puis Connecteurs (ou Plugins).
  2. Cliquez sur Ajouter un connecteur personnalisé.
  3. Renseignez l'URL publique https://ffbb.desimone.fr/mcp et 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.

{
  "mcpServers": {
    "ffbb": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/client-sse", "https://ffbb.desimone.fr/mcp"]
    }
  }
}

Cursor / autres clients MCP

Configurez un serveur MCP distant :

Champ Valeur
Type Streamable HTTP
URL https://ffbb.desimone.fr/mcp

Google Antigravity

Configurez directement l'URL distante dans mcp_config.json via la directive native serverUrl :

{
  "mcpServers": {
    "ffbb_mcp": {
      "serverUrl": "https://ffbb.desimone.fr/mcp"
    }
  }
}

🧰 Outils principaux

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 Flux live FFBB, éventuellement complété par un calendrier ciblé et prudent.
ffbb_saisons Liste des saisons FFBB (référentiel temporel).
ffbb_resolve_team Identifie une equipe unique (Pivot central).
ffbb_find_team_candidates Recherche et ordonne les équipes candidates d'un club/CTC pour désambiguïser avant tout calendrier/résultat.
ffbb_team_summary Résumé complet d'équipe : bilan, classement, dernier et prochain match en un seul appel.
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) et dynamiques.
ffbb_search_regulations Recherche plein texte déterministe dans les règlements officiels FFBB, régionaux et départementaux.
ffbb_get_regulation_article Récupère le texte intégral et exact d'un article spécifique de règlement sans troncature.
ffbb_explain_tiebreak_rules Fournit les règles officielles de départage en cas d'égalité (Article 28 du RSG FFBB).
ffbb_list_regulations Liste l'ensemble des textes réglementaires fédéraux (RSG, RSP Élite, NM1-NM3, LF2-NF3),.

🌐 Instance publique

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

🏗️ Architecture

flowchart LR
    A[Client MCP<br/>Claude · Cursor · Antigravity] -->|Streamable HTTP / Stdio| B[FFBB MCP Server<br/>MCPServer]
    B --> C[Services métier<br/>Cache SWR & Agrégation]
    C --> D[ffbb-data-client<br/>SDK Python]
    D --> E[(API FFBB · Meilisearch · Directus)]

Points clés :

  • Double transport : Streamable HTTP distant (spec 2026-07-28, Stateless Core) ou Stdio local (uvx) ;
  • SDK Python découplé : Requêtes vers les sources fédérales et parsing Pydantic v2 délégués à ffbb-data-client ; le serveur MCP ne les interroge pas directement ;
  • 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.


💻 Développement local

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 tests

Voir CONTRIBUTING.md pour les règles de contribution.


🧪 Tests

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.


📚 Documentation


🤝 Communauté


❓ Dépannage

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

🌟 Stargazers & Communauté

Star History Chart


Projet non officiel, non affilié à la Fédération Française de BasketBall.

Release files for ffbb-mcp-server 1.16.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for ffbb-mcp-server 1.16.0
File Size Uploaded
ffbb_mcp_server-1.16.0.tar.gz 293.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for ffbb-mcp-server 1.16.0
File Interpreter ABI Platform
ffbb_mcp_server-1.16.0-py3-none-any.whl Python 3 none any Details

Total release size: 518.7 kB

Release files / ffbb_mcp_server-1.16.0.tar.gz

Download URL ffbb_mcp_server-1.16.0.tar.gz
Size 293.3 kB
Tags Source
SHA-256 checksum
How to use checksums
927aef72f45f725fb531b39dbb70c02952adc61090fa550ebba09146d2b931e8
BLAKE2b-256 checksum
How to use checksums
aa2d4e32b27d5063afc894b598a6a3663622e2769abaffee66b5c1f02ad7f3ad
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.18 {"installer":{"name":"uv","version":"0.12.18","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / ffbb_mcp_server-1.16.0-py3-none-any.whl

Download URL ffbb_mcp_server-1.16.0-py3-none-any.whl
Size 225.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
47090ab86b37062a650adcaf3a549414e87fea48023af26e5b4949872766e18b
BLAKE2b-256 checksum
How to use checksums
dd7b49c4076c180a853bdd8637b266f15cbf750e5173ef20e55c6f1a8de63bb4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.18 {"installer":{"name":"uv","version":"0.12.18","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release history Release notifications | RSS feed

1.16.2

2 release files

1.16.1

2 release files

This release

1.16.0 This release

2 release files

1.15.0

2 release files

1.14.5

2 release files

1.14.4

2 release files

1.14.3

2 release files

1.14.2

2 release files

1.14.1

2 release files

1.14.0

2 release files

1.13.0

2 release files

1.12.6

2 release files

1.12.5

2 release files

1.12.4

2 release files

1.12.2

2 release files

1.12.1

2 release files

1.12.0

2 release files

1.11.0

2 release files

1.9.0

2 release files

1.8.0

2 release files

1.7.0

2 release files

1.6.1

2 release files

1.6.0

2 release files

1.5.1

2 release files

1.5.0

2 release files

1.4.0

2 release files

1.3.2

2 release files

1.3.1

2 release files

1.3.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page