Luxembourg legislation search and retrieval via Model Context Protocol, providing access to French legislation, EU cross-references, and legal provisions from Luxembourg law
Scoring was not performed
Output schemas completely undocumented. No field definitions for what search_statutes, get_provision, or list_eu_references return. LLMs cannot plan downstream operations or extract required fields without this.
Parameter 'limit' in search_statutes lacks type constraint (min/max). No indication of what range is valid, LLMs may pass 0, negative, or huge numbers that break queries or timeouts.
Parameter 'document_type' in search_statutes has no enum constraint. Description says 'e.g. statute, regulation' but does not specify valid values exhaustively. LLMs will guess invalid types.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | F | 32 | <=2025-11-25 | v2 |
| 2026-03-09 | D | 50 | - | v1 |
No pagination support documented for search_statutes. If results exceed a threshold, no indication of how to fetch more, total count, or page size behavior. Contradicts pattern:paginated-result.
Tool descriptions lack error recovery guidance. If search_statutes returns no results, or get_provision fails with a bad reference, the description does not hint at next steps or alternative tools.
Tool descriptions do not clarify composition. How does validate_citation relate to search_statutes? Should the LLM validate first or search first? No dependency hints.
Parameter descriptions are generic. 'The provision reference (e.g., article number)' in get_provision gives only an example format, not the complete syntax or valid patterns. LLMs will guess format variants.
'about' tool has empty input schema ({}). While technically valid, no documentation of what it returns, how to use it, or when an agent should call it.