Skip to main content
Glama
nickdesi

FFBB MCP Server

Scores en direct

ffbb_lives
Read-onlyIdempotent

Retrieve live scores from the French Basketball Federation for in-progress games. Filter by club, team, category, or engagement, and optionally include upcoming scheduled matches.

Instructions

Flux live FFBB, éventuellement complété par un calendrier ciblé et prudent.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
categorieNoCatégorie de l'équipe ciblée, par exemple U18M ou NM2.
club_nameNoNom du club si son identifiant n'est pas connu.
organisme_idNoID du club pour cibler et compléter le flux live.
engagement_idNoID d'engagement précis de l'équipe ciblée.
numero_equipeNoNuméro de l'équipe ciblée dans la catégorie.
include_scheduledNoSi True, inclut aussi les matchs programmés à venir (statut SCHEDULED). Par défaut (False), ne retourne que les matchs réellement en cours de jeu.
include_calendar_fallbackNoPour une cible club/équipe, complète le flux FFBB avec les matchs dont l'horaire est dépassé, sans les présenter comme live confirmés.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed6 schema fields changedv1.15.0
    • addedInput schema / properties / categorie
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "description": "Catégorie de l'équipe ciblée, par exemple U18M ou NM2.",
      +  "title": "Categorie"
      +}
    • addedInput schema / properties / club_name
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "description": "Nom du club si son identifiant n'est pas connu.",
      +  "title": "Club Name"
      +}
    • addedInput schema / properties / engagement_id
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "integer"
      +    },
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "description": "ID d'engagement précis de l'équipe ciblée.",
      +  "title": "Engagement Id"
      +}
    • addedInput schema / properties / include_calendar_fallback
      Added value: +{
      +  "default": true,
      +  "description": "Pour une cible club/équipe, complète le flux FFBB avec les matchs dont l'horaire est dépassé, sans les présenter comme live confirmés.",
      +  "title": "Include Calendar Fallback",
      +  "type": "boolean"
      +}
    • addedInput schema / properties / numero_equipe
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "integer"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "description": "Numéro de l'équipe ciblée dans la catégorie.",
      +  "title": "Numero Equipe"
      +}
    • addedInput schema / properties / organisme_id
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "integer"
      +    },
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "description": "ID du club pour cibler et compléter le flux live.",
      +  "title": "Organisme Id"
      +}
  2. Changed1 schema field changedv1.13.0
    • addedInput schema / properties / include_scheduled
      Added value: +{
      +  "default": false,
      +  "description": "Si True, inclut aussi les matchs programmés à venir (statut SCHEDULED). Par défaut (False), ne retourne que les matchs réellement en cours de jeu.",
      +  "title": "Include Scheduled",
      +  "type": "boolean"
      +}
  3. Changed1 schema field changedv1.9.0
    • changedOutput schema / (root)
      Previous value: -{
      -  "properties": {
      -    "result": {
      -      "items": {
      -        "additionalProperties": true,
      -        "type": "object"
      -      },
      -      "title": "Result",
      -      "type": "array"
      -    }
      -  },
      -  "required": [
      -    "result"
      -  ],
      -  "title": "ffbb_get_livesOutput",
      -  "type": "object"
      -}New value: +null
  4. Addedv1.3.2
  5. Removedv1.3.1
  6. Addedv1.2.0

TDQS

C2.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations already declare the operation read-only, idempotent, non-destructive, and open-world, so the safety profile is covered. The description adds a weak behavioral hint that the live stream may be supplemented by a 'ciblé et prudent' calendar, indicating not all returned entries are confirmed live. But it lacks detail about data freshness, response shape, or why the fallback is cautious, and it partly duplicates the include_calendar_fallback parameter description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely short, but it is an under-specified noun phrase rather than a useful sentence. It spends its only clause on vague marketing-like wording ('ciblé et prudent') instead of concrete behavior. For a tool with 7 optional parameters, this is under-specification, not effective conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema and 7 optional parameters, an agent receives almost no help on what the response contains or how to build a valid request. The description omits return values, data source restrictions, and any example usage patterns. The annotations cover safety but not operational completeness, so the description is insufficient.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

All 7 parameters are described in the input schema (100% coverage), so the schema carries the semantic load. The description itself provides no additional parameter-level meaning beyond the vague 'calendrier ciblé' phrase, which maps to include_calendar_fallback. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description identifies the tool as a live FFBB feed and hints at calendar augmentation, so an agent can infer it returns live basketball scores. However, it is a noun phrase with no explicit verb such as 'retrieves' or 'returns,' and it does not directly distinguish itself from sibling tools like ffbb_last_result or ffbb_next_match. This is clear but not fully specified.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description contains no guidance on when to prefer ffbb_lives over the many sibling tools. It neither states 'use for current in-progress games' nor mentions alternatives or exclusion conditions. A user must infer usage from the word 'live' and the title 'Scores en direct.'

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.