Skip to main content
Glama
MCP Assemblée nationale

MCP Assemblée nationale

by Toumi-Elyes

Cohesion Groupes

cohesion_groupes
Read-onlyIdempotent

Measure voting cohesion within parliamentary groups by calculating the share of votes aligned with each group's majority position on a given topic or period.

Instructions

Part des votes de chaque groupe qui suivent sa position majoritaire.

À utiliser pour mesurer l'homogénéité des votes au sein de chaque groupe sur un sujet ou une période : part des votes exprimés (pour, contre, abstention) conformes à la position majoritaire du groupe, calculée sur un échantillon borné de scrutins. Pour une législature close (legislature, 14 à 16), la période finit à son dernier scrutin.

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "cohesion_groupes"
  }
}

Input Schema

NameRequiredDescriptionDefault
sujetNoSujet en mots-clés (« retraites »), avec accents.
legislatureNoLégislature analysée, de 14 (2012) à 17 (en cours). Sans valeur : un sujet est cherché dans les titres publiés par CIVIX (16e et 17e), une période compte les derniers jours.
max_scrutinsNoNombre maximal de scrutins analysés (échantillon borné).
type_scrutinNoType de scrutin : `texte` (vote sur l'ensemble d'un texte), `article`, `amendement`, `autre` (motions, résolutions, suspensions de séance…) ou `tous`.tous
periode_joursNoJours à analyser.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4/5.0
Behavior4/5

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

Annotations already cover read-only, idempotent, non-destructive semantics, so the description's job is to add computation context, which it does: results are computed over a bounded sample of scrutins, and for a closed legislature (14–16) the period auto-ends at its last scrutin. It doesn't explain how the 'majority position' threshold is determined or what the returned structure contains.

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

Conciseness4/5

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

The metric is defined in the first sentence and usage in the second, so it is front-loaded and short. There is minor redundancy where "part des votes exprimés (pour, contre, abstention) conformes à la position majoritaire" restates the opening definition.

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

Completeness4/5

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

All five optional parameters are documented in the schema, no output schema exists but the metric itself is defined in prose, and the closed-legislature edge case is called out. What's missing is guidance on defaults when no parameter is supplied (all are optional) and on how the majority position is computed.

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

Parameters4/5

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

Schema description coverage is 100%, so the baseline is 3, but the description adds meaning beyond the schema: the closed-legislature rule that truncates the period at the final scrutin (14–16). That is genuinely additive, though it does not clarify the sampling interaction between sujet, periode_jours and max_scrutins.

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?

States a specific metric precisely: the share of each group's votes that follow its majority position, i.e. an intra-group voting homogeneity rate. An agent can distinguish it from siblings like positions_groupes (what a group's position is) or accords_entre_groupes (agreement across groups), though no sibling is named explicitly.

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

Usage Guidelines4/5

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

"À utiliser pour mesurer l'homogénéité des votes au sein de chaque groupe sur un sujet ou une période" gives a clear use context with the two main scoping axes (subject or period). It lacks explicit exclusions or routing advice relative to the many related sibling tools.

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