acf.fiche.lookup
Récupère le contenu signé d’une fiche méthodologique ACF® (ACF-00 à ACF-16) — frontmatter (principes, dimensions, fiches liées), corps markdown, exemple et anti-patterns. Aucune interprétation, le texte canonique tel qu’archivé.
acf.fiche.lookup sert la fiche verbatim avec son hash et sa signature : si vous la citez à un régulateur, vous citez exactement ce que le standard publie.Quand l’utiliser
Utilisez cet outil quand vous avez identifié la fiche pertinente (par acf.search, par acf.classify-agent, ou parce que l’utilisateur l’a citée explicitement) et qu’il faut son contenu canonique pour répondre. Typiquement : préparer une réponse de mandat DDAO, rédiger un kill switch, justifier un sign-off, citer une fiche dans un audit.
Citez toujours le code (ACF-06), pas le titre traduit. Les fiches sont la couche opérationnelle de la doctrine — chaque fiche mappe vers un ou plusieurs principes (P-XX) et une ou plusieurs dimensions (D-XX) que l’utilisateur peut explorer ensuite.
Paramètres d’entrée
Deux champs. Le code est strictement validé contre /^ACF-(0[0-9]|1[0-6])$/ — pas de path traversal possible.
code"ACF-00" .. "ACF-16"requiredlocale"en" | "fr"default: "en"Schéma de sortie
Le frontmatter structuré + le corps markdown + le pied-de-page signé. La sortie est un objet JSON ; le corps est une string markdown que vous pouvez rendre tel quel.
codestringuristringserved_locale"en" | "fr"is_fallbackbooleanfrontmatter{ code, title, version, keywords[], related_principles[], related_dimensions[], related_fiches[] }bodystring (markdown)doctrine_versionstringdoctrine_hashstringdoctrine_signaturestringdoctrine_archive_urlstringgenerated_atstring (ISO-8601)disclaimerstringExemple d’appel
L’agent récupère la fiche ACF-06 (kill switch) pour rédiger une réponse à l’audit DORA :
import { Client } from "@modelcontextprotocol/sdk/client/index.js";
import { StdioClientTransport } from "@modelcontextprotocol/sdk/client/stdio.js";
const transport = new StdioClientTransport({
command: "npx",
args: ["-y", "acf-mcp"],
});
const client = new Client({ name: "demo", version: "1.0" }, {});
await client.connect(transport);
const result = await client.callTool({
name: "acf.fiche.lookup",
arguments: {
code: "ACF-06",
locale: "en",
},
});
console.log(JSON.stringify(result.content, null, 2));Réponse
{
"code": "ACF-06",
"uri": "acf://fiche/ACF-06",
"served_locale": "en",
"is_fallback": false,
"frontmatter": {
"code": "ACF-06",
"title": "Kill switch and degraded modes",
"version": "1.0",
"keywords": ["kill switch", "degraded mode", "escalation", "DDAO", "reversibility"],
"related_principles": ["P-04", "P-07"],
"related_dimensions": ["D-03", "D-05"],
"related_fiches": ["ACF-04", "ACF-08", "ACF-12"]
},
"body": "## Purpose\n\nThis card defines the mandatory shutdown path for any agent operating at autonomy level N2 or above. The kill switch is the last line of defence: any DDAO must be able to fire it at any time, without prior sign-off, and the agent must stop within the bounded recovery window.\n\n## Required elements\n\n1. **Trigger surface** — a documented endpoint, button or runbook command the DDAO can fire in under 60 seconds.\n2. **Stop semantics** — the agent must commit no further external action after the trigger fires, and ongoing operations must roll back to a safe state.\n3. **Degraded mode** — a fallback that keeps the business function alive at a lower autonomy (typically N1 with human approval per decision).\n4. **Quarterly test** — the DDAO runs a documented kill-switch test every 90 days; the signed register records the test result.\n\n## Example\n\nA fraud-scoring agent (N2) has a Slack /kill-fraud-agent command bound to the DDAO group. Firing it switches the agent to N1 degraded mode where every score is queued for human review. The quarterly test is run in production with a synthetic transaction and recorded in ACF-08.\n\n## Anti-patterns\n\n- A kill switch that requires the deployer’s sign-off to fire (defeats the purpose).\n- A degraded mode that simply stops the function (the business stops too — kill switches must not be all-or-nothing).\n- A kill switch that was never tested in production (untested switch ≈ no switch).",
"doctrine_version": "ACF framework v1.0 / rules 2026-06",
"doctrine_hash": "sha256:bf0b6d8e4731ebdc58f6d6338702c5b74af47874cf0ad3dc958cde5c5b30b9dc",
"doctrine_signature": "ed25519:…",
"doctrine_archive_url": "https://acfstandard.io/doctrine/v1.0/archive.json",
"generated_at": "2026-06-14T11:47:22.318Z",
"disclaimer": "Canonical ACF® card content — quote verbatim or paraphrase, always cite the code and version."
}Erreurs courantes
InvalidFicheCode— code hors regex /^ACF-(0[0-9]|1[0-6])$/. Vérifiez le format : préfixe ACF-, deux chiffres entre 00 et 16, casse exacte.FicheNotFound— le code est valide mais la fiche n’existe ni dans la locale demandée ni dans aucune locale de la chaîne de fallback. Le corpus V1.0 publie ACF-00 à ACF-16 ; ACF-17+ est V1.1.DoctrineSnapshotMismatch— le doctrine_hash demandé n’est pas chargé. Mettez acf-mcp à jour ou pointez vers la version archivée.
Outils liés
acf.search— trouver le code de la fiche pertinente avant de la lire en détail.acf.regulation.article— remonter du texte réglementaire vers les fiches qui l’opérationnalisent.acf.classify-agent— obtenir la liste des fiches applicables à un agent à qualifier (applicable_fiches dans la sortie).