Skip to content
mcp/skillhub

French family benefits (CNAF corpus) MCP Server

by arxohqio.arxo/cnafv0.1.1

French family-benefit models (CNAF corpus) as executable rules with sources; independent demo

0Node.jsstdioremoteofficial registry

context tax

~9,139 tok/turn16 tools

security

97/100

cold start

pending

freshness

Active4d ago

Our reading of French family benefits (CNAF corpus), from the data

French family benefits (CNAF corpus) is an MCP server from arxohq, listed in the official MCP Registry.

Its 16 tools add about 9,139 tokens to every model turn (measured 2026-10-19).

Maintenance is active: the last public signal was 4 days ago (2026-10-14).

It runs either locally over stdio or as a hosted endpoint.

Install French family benefits (CNAF corpus) MCP server

Install in Claude Code

claude mcp add cnaf -- npx -y @arxo/mcp-cnaf

Remote endpoints

  • streamable-httphttps://mcp.arxo.io/mcp/cnaf

Context tax

Connecting this server adds ~9,139 tokens of tool definitions to every model turn (heavy, 16 tools). Measured 2026-10-19 via its hosted endpoint; o200k tokenizer, worst case for clients that load all tools up front. How we measure

ModelPer 1,000 turnsWith prompt caching
Claude Opus 5.5$36.56$1.83
Claude Sonnet 5.5$18.28$1.83
Claude Haiku 5.5$0.914—

Input prices as of 2026-10-06. Excludes your own prompt and output.

Tools (16)

  • law_ask1,875 tok

    Poser une question au droit formalisé. Quand la réponse est « non établi », elle porte whyNot — le rapport why_not du moteur : les règles candidates et l'état de chaque conjonct (satisfait / non satisfait / indéterminé) ; les faits manquants y sont visibles et n'ont pas à être inventés. AVANT LE PREMIER appel, obtenez les noms de prédicats par law_search (une question dans vos propres mots → adresses) ou law_packages (les signatures d'un acte connu) — un nom inventé sera rejeté. Si l'outil a renvoyé une erreur ou « non établi », C'EST LA RÉPONSE : transmettez-la à l'utilisateur et ne la substi

  • law_query972 tok

    Une requête LawQL déterministe sur le CLIR d'une formalisation : une question sur le modèle de l'acte lui-même, pas sur une affaire. Relations (14) : anchors, edges, fields, imports, interpretations, labels, links, literals, nodes, norms, positions, rules, variables, windows. Listes des champs : `law query --schema`. Fonctions (9) : anchor/1, labels/1..2, short/1, contains/2, overlaps/2, starts_with/2, ends_with/2, position/2, derivation/2. exists/not exists sur une variable liée ; égalité et appartenance seulement, sans arithmétique ni comparaisons d'ordre. Périmètre : corpus par package.name

  • law_packages826 tok

    Le catalogue du droit formalisé : actes, prédicats avec signatures, frontières de couverture. C'est d'ici que viennent les NOMS des prédicats — ils ne doivent jamais être inventés. Mais ne commencez PAS par le catalogue pour trouver le bon acte : l'aperçu est vaste, et le titre d'un acte coïncide rarement avec les mots d'une question (« Newton's laws of motion » ne contient pas le mot « physics »). Une question dans vos propres mots va d'abord à law_search, qui renvoie des adresses ; le catalogue sert à la signature exacte de ce que vous avez trouvé. Sans arguments — l'aperçu : une ligne par a

  • law_prepare_answer550 tok

    À la demande explicite de l'utilisateur, répéter entre 1 et 12 appels law_ask ou law_process_run antérieurs, comparer strictement leurs replayControl, et préparer un document figé non public pour 24 heures. Le client ne fournit jamais la réponse machine : le serveur ne l'obtient qu'en exécutant à nouveau. Un écart dans une entrée, dans le droit, dans une ressource, dans le code du serveur, dans la bibliothèque du moteur ou dans le résultat rejette le document entier.

  • law_case_ask540 tok

    L'opération ask : exécuter une affaire enregistrée d'un paquet-affaire sur ses dépendances épinglées et renvoyer la réponse : par défaut une projection du document d'évaluation sans graphe de preuve, avec responseMode full ou proof: true le document canonique avec une preuve et un manifeste. La question est du JSON selon query.schema.json (query), une chaîne evaluate (evaluate + queryId), un queryId enregistré sans query, ou card + args. Un refus de préparation est une erreur avec un code LDC-*, jamais une réponse vide.

  • law_inspect483 tok

    Inspecteur d'évaluation sur un document d'évaluation ENREGISTRÉ : summary — la fiche d'origine, la vérification de resultHash et de l'instantané, les listes de résultats, de positions et d'issues ; slice — la clôture des nœuds de preuve pour une question, une règle, une position ou un nœud avec leurs adresses, les deux côtés de BOTH, les défaites, les valeurs, les noms résolus d'après l'instantané ; diff — ce qui a changé entre deux documents aux niveaux du contexte, du résultat et de la justification ; locate — la déclaration par StableId. Rien n'est évalué ni recalculé : la source est evalua

  • law_sources399 tok

    Sources : par défaut de courts extraits (view=summary), 5 textes par page, avec l'adresse du texte complet dans fragments[].full. package ou fragment est requis (un StableId issu de law_search/law_rules). view=full renvoie des parties exactes du texte : textRange fixe une plage de caractères Unicode, fragments[].next est la continuation avec un contentHash. L'empreinte se rapporte à la source ENTIÈRE, non à l'extrait ni à la partie. textOffset/textLimit exigent fragment ; une continuation exige contentHash. Les listes sont paginées avec offset/limit ; le budget de réponse peut réduire une page

  • law_rules383 tok

    Les règles du droit formalisé mises en mots : comment exactement un prédicat est dérivé (prémisses, articles sources). Appelez ceci AVANT de fournir des faits à law_ask — les règles disent quels faits sont nécessaires au lieu de les laisser à inventer. Pour les grands actes, package=… renvoie une table des matières ; le texte complet vient de predicate=…. La liste par paquet est paginée : limit (20 par défaut, 500 au plus) et offset ; le reste est nommé dans le texte (`showing a–b of N; k more`) et dans structuredContent (total, truncated, next — un appel de continuation tout prêt).

  • law_explain374 tok

    Déplier la preuve d'une réponse law_ask en une chaîne « règle ← prémisses → conclusion ». L'entrée compacte : question (les arguments law_ask d'origine, truth/collect), resultHash et codeHash issus de la provenance de la réponse. Le serveur répète le calcul et compare les empreintes ; si quelque chose a changé, il refuse explicitement. Autrement, passer l'évaluation de law_ask(proof=true). answerResource=fullAnswer.uri explique un instantané compact stocké sans recalcul et sans que le client charge des pages ; par défaut seulement la chaîne proofRef. nodeId sélectionne un nœud et toutes ses pr

  • law_screen317 tok

    Construire une condition nécessaire — un surensemble — pour la présélection de lignes d'une source externe. Ce n'est PAS une réponse juridique et PAS du SQL : le résultat est un arbre typé et un manifeste des extensions jusqu'à TRUE. Chaque ligne qui passe doit ensuite être calculée en entier par le moteur, avec un graphe de preuve, sur le même instantané des données. Le binding est passé comme objet épinglable ; sourceSchemaContentHash est l'empreinte réelle du schéma source et est comparée bruyamment avec l'épingle. Les faits d'affaire qui portent une provenance (origin, document, citation,

  • law_search270 tok

    Une RECHERCHE sémantique sur le droit formalisé : une question ou une notion dans vos propres mots → des candidats avec adresses — prédicats avec signatures, règles, fragments d'articles. C'est la couche de DÉCOUVERTE, non de la réponse : le résultat dit QUOI demander ensuite (law_ask par signature, law_rules, law_sources) et n'établit ni un fait ni une norme. Le classement est un embedder lexical déterministe, et la similarité de texte n'est pas l'applicabilité d'une norme. Si vous connaissez le nom exact, allez directement à law_packages/law_ask ; un résultat vide ne signifie PAS que la norm

  • law_passport190 tok

    Passeport d'une publication exacte : objet, interface, frontières, contrôles et performance. La section reports conserve l'historique des mesures, y compris les échecs. Les enregistrements sont paginés par JSON Pointer ; next poursuit la réponse.

  • law_revoke_answer91 tok

    Révoquer un document publié au moyen de son secret distinct. L'identifiant public à lui seul ne donne aucun contrôle ; la révocation ferme la page HTML, l'API et le téléchargement.

  • law_capture_answer82 tok

    Exécuter un producteur enregistré et obtenir producerControl/0.2 pour une préparation ultérieure vérifiable d'une Lens. Le producteur n'est choisi que dans le registre livré.

  • law_answer_capabilities73 tok

    Une matrice lisible par machine des producteurs Lens réellement installés, des contrôles replay/projection, des profils, des limites et des tests de contrat qui les confirment. declared_only désigne un schéma sans témoin exécutable.

  • law_publish_answer73 tok

    Publier un document préparé. La répétition avec le même preparationId renvoie de façon idempotente la même URL et le même secret de révocation distinct.

Security signals

97/100 — no known issues found as of 2026-10-19, from the checks below. This is not a guarantee of safety; review what a server can do before connecting it.

Deductions

  • No security policy (SECURITY.md)-3

Checks

  • ✓Repository hygiene (archived, activity, license, security policy)
  • ✓Tool descriptions (prompt-injection and hidden-text heuristics)
  • ○Package metadata (install scripts, provenance) — pending
  • ○Source scan (secrets, CVEs, risky code) by vectra-guard — pending

Scan it yourself before installing with vectra-guard, the open-source agent security CLI. Scoring rules

Freshness

Active — last maintenance signal 4d ago. The newest of the signals below sets the band.

  1. Last commit (default branch)

    2026-10-14 · 4d ago · GitHub

  2. Latest release

    2026-10-12 · 6d ago · GitHub · law-package-tools@0.3.0

  3. Package published

    no data · npm/PyPI

  4. Registry entry updated

    2026-10-14 · 4d ago · official registry · v0.1.1

FAQ

›How do I install the French family benefits (CNAF corpus) MCP server in Claude Code?

Run: claude mcp add cnaf -- npx -y @arxo/mcp-cnaf. For Cursor, VS Code, Claude Desktop and Windsurf, use the install tabs above.

›Does French family benefits (CNAF corpus) require an API key?

No required environment variables are declared in its published metadata.

›Can I use French family benefits (CNAF corpus) as a remote (hosted) MCP server?

Yes — it offers both a hosted endpoint and a local stdio package.

›Is French family benefits (CNAF corpus) in the official MCP registry?

Yes, as io.arxo/cnaf.

›How many tokens does French family benefits (CNAF corpus) add to my context?

Its tool definitions total about 9,139 tokens, resent on every turn.

Sources and method

Official MCP Registry entry
updated 2026-10-14
GitHub repository
fetched 2026-10-19
Package registry (npm / PyPI)
listed
Last checked against all sources
2026-10-19

The description, packages and links come from the maintainer's own published metadata. Token cost, security signals, freshness and the reading above are MCPSkillHub's own measurements; see the methodology. Spot an error? Request a correction or claim the listing.