Serveur MCP (lecture seule) exposant le catalogue de guides de connexion de compteparticulier.com aux agents IA, sur Cloudflare Workers.
Two tools with clear, action-verb names (search_articles, get_article) and detailed descriptions (180+ chars each). Input schemas are well-defined with Zod validation (query: string min 2, limit: number 1-20 optional). Descriptions explain WHAT, WHEN, and HOW to chain tools. However, output schemas are not explicitly documented in the code, responses are inferred from implementation (text content arrays). No tool annotations (readOnlyHint, idempotentHint) despite both being READ_ONLY. Error messages are contextual ('Aucun guide trouvé...') but lack recovery guidance for edge cases. Parameter descriptions are strong (ex. « se connecter EDF »), but no explicit output schema documentation for LLM planning.
Retourne le contenu complet d'un guide de compteparticulier.com à partir de son slug (obtenu via search_articles).
Recherche des guides de connexion « mon compte / espace client » sur compteparticulier.com par mots-clés (marques et administrations françaises : banques, assurances, mutuelles, énergie, télécom, streaming, services publics, commerce). Retourne une liste (titre, slug, URL, description). Utiliser le slug avec get_article pour obtenir le contenu complet.
Output schemas not documented. Tools return {content: [{type, text}]} but LLMs cannot see this structure in tool definitions. Agents cannot plan downstream operations or extract structured data.
No tool annotations despite READ_ONLY risk classification. Both tools should declare readOnlyHint=true to signal safety to agents and prevent unnecessary confirmation prompts.
Error recovery guidance incomplete. 'Aucun guide trouvé' message suggests exact spelling but does not offer available brands or suggest search_articles retry with partial terms.
get_article lacks input validation error handling. No documented behavior if slug is invalid or article not found. LLM cannot distinguish 404 from 500 or know whether to retry.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | A | 83 | 2026-07-28+ | v2 |
search_articles scoring logic is opaque to LLMs. Weighting (title +5, brand +4, desc +2, body +1) is implementation detail; description does not explain ranking or why some results rank higher.