acf.advisor
Conseil de gouvernance ACF® à partir d’un cas en texte libre, un paragraphe en entrée, une évaluation structurée en sortie : principes activés, niveau d’autonomie, risque, articles applicables, premières actions, risques opérationnels. C’est l’outil de conversion de la bibliothèque ACF® vers le rôle d’advisor.
requires_human_review vaut toujours true. Pour une qualification plus défensive, repassez via acf.classify-agent avec des énumérations qualifiées.Quand l’utiliser
Utilisez cet outil quand un porteur de cas (DSI, métier, conseil) arrive avec une description prose de son agent IA et a besoin d’un premier verdict structuré sur la gouvernance ACF® applicable : quels principes s’activent, quel niveau d’autonomie déléguée est cohérent, quelles obligations réglementaires se déclenchent, quelles fiches mobiliser dans quel ordre. C’est l’outil « première étape » avant qualification rigoureuse.
Il répond à la question board-level : « par où on commence sur ce cas-là ? ». La sortie est conçue pour être servie à un comité IA ou à un DDAO qui décidera des étapes suivantes.
Paramètres d’entrée
Un champ obligatoire (la description du cas), trois champs contextuels optionnels qui resserrent la calibration.
case_descriptionstring (20-2000)requiredsectorstring (≤80)jurisdiction"eu" | "uk" | "us" | "ca" | "ch" | "br" | "jp" | "other"deployment_scale"pilot" | "department" | "enterprise" | "public"locale"en" | "fr"default: "en"Schéma de sortie
La sortie est un objet structuré avec niveau d’autonomie, niveau de risque, principes activés, fiches priorisées, articles applicables, premières actions, risques opérationnels, pied-de-page signé.
autonomy_level{ level: "suggestive"|"co_decision"|"supervised_autonomous"|"autonomous", rationale: string }risk_level{ level: "low"|"medium"|"high"|"unacceptable", rationale: string }activated_principles{ code: string, why: string }[]priority_fiches{ code: string, order: number, why: string }[]applicable_articles{ regulation: string, article: string, why: string }[]first_actionsstring[] (≤5)operational_risksstring[]confidence"low" | "medium" | "high"assumptionsstring[]gaps_to_validatestring[]rationale_per_rule{ rule_id, rule_version, fired, evidence }[]requires_human_reviewtrueExemple d’appel
Un assistant RH interne qui propose une shortlist validée par un recruteur :
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.advisor",
arguments: {
case_description:
"We are rolling out an internal HR assistant that summarises candidate CVs, proposes a shortlist score, and writes the shortlist to our ATS. A recruiter validates each shortlist before any candidate is contacted. The agent reads structured candidate profiles (name, email, education) and uses a GPAI under the hood for the summarisation.",
sector: "human-resources",
jurisdiction: "eu",
deployment_scale: "department",
locale: "en",
},
});
console.log(JSON.stringify(result.content, null, 2));Réponse
{
"autonomy_level": {
"level": "co_decision",
"rationale": "No clear autonomy threshold matched the declared inputs; defaulting to co-decision (the agent proposes, a human validates). Confirm with the team."
},
"risk_level": {
"level": "medium",
"rationale": "Combination of personal_data_level + financial_exposure not yet calibrated; defaulting to medium for safety."
},
"activated_principles": [
{
"code": "P1",
"why": "Decision sovereignty applies to every agentic deployment, regardless of autonomy."
}
],
"priority_fiches": [
{
"code": "ACF-01",
"order": 1,
"why": "Start here: the sovereignty score is the entry point of the toolkit."
}
],
"applicable_articles": [],
"first_actions": [
"Identify or appoint the DDAO accountable for the agent (cf. ACF-13).",
"Document the agent constitution (decision perimeter, allowed/forbidden actions: cf. ACF-04).",
"Open the decision register and define the retention policy (cf. ACF-09 + ACF-P14)."
],
"operational_risks": [],
"confidence": "low",
"assumptions": [
"human_approval, external_actions and personal_data_level were inferred from the free-text description; pass classify-agent with qualified enums for higher confidence."
],
"gaps_to_validate": [
"re-run via acf.classify-agent with structured enums for a more defensible qualification."
],
"requires_human_review": true,
"rationale_per_rule": [
{
"rule_id": "ai-act-annex-iii.annex-iii-1a-biometric-identity",
"rule_version": "2026-06",
"fired": false,
"evidence": ""
},
{
"rule_id": "ai-act-annex-iii.annex-iii-2-critical-infrastructure",
"rule_version": "2026-06",
"fired": false,
"evidence": ""
},
{
"rule_id": "ai-act-annex-iii.annex-iii-3-educational",
"rule_version": "2026-06",
"fired": false,
"evidence": ""
},
{
"rule_id": "ai-act-annex-iii.annex-iii-4-employment",
"rule_version": "2026-06",
"fired": false,
"evidence": ""
},
{
"rule_id": "ai-act-annex-iii.annex-iii-5b-credit-scoring",
"rule_version": "2026-06",
"fired": false,
"evidence": ""
},
{
"rule_id": "ai-act-annex-iii.annex-iii-5c-insurance-pricing",
"rule_version": "2026-06",
"fired": false,
"evidence": ""
},
{
"rule_id": "ai-act-annex-iii.annex-iii-6-law-enforcement",
"rule_version": "2026-06",
"fired": false,
"evidence": ""
},
{
"rule_id": "ai-act-annex-iii.annex-iii-7-migration-asylum",
"rule_version": "2026-06",
"fired": false,
"evidence": ""
},
{
"rule_id": "ai-act-annex-iii.annex-iii-8-justice-democracy",
"rule_version": "2026-06",
"fired": false,
"evidence": ""
},
{
"rule_id": "ai-act-annex-i.annex-i-medical-device",
"rule_version": "2026-06",
"fired": false,
"evidence": ""
},
{
"rule_id": "ai-act-annex-i.annex-i-vehicle-safety",
"rule_version": "2026-06",
"fired": false,
"evidence": ""
},
{
"rule_id": "ai-act-annex-i.annex-i-machinery",
"rule_version": "2026-06",
"fired": false,
"evidence": ""
},
{
"rule_id": "gpai-triggers",
"rule_version": "2026-06",
"fired": false,
"evidence": ""
},
{
"rule_id": "autonomy-inference.default-co_decision",
"rule_version": "2026-06",
"fired": true,
"evidence": "inferred human_approval=sometimes, external=read_only from description"
},
{
"rule_id": "criticality-matrix.default-medium",
"rule_version": "2026-06",
"fired": true,
"evidence": "inferred pii=standard, financial=none from description"
}
],
"doctrine_version": "ACF framework v1.0 / rules 2026-06",
"doctrine_hash": "sha256:119819463363cde0649504ab8ed5a96982fdb8506441f2c5e76e7e3c3feb77f1",
"doctrine_signature": "ed25519:3R0oIiqL3Kgd…",
"doctrine_archive_url": "https://acfstandard.io/archive/doctrine/v1.0/doctrine-v1.0.json",
"regulatory_snapshot": "EU AI Act (Reg. 2024/1689, incl. Digital Omnibus deferral) + GDPR (Reg. 2016/679) + DORA (Reg. 2022/2554) + NIS2 (Dir. 2022/2555) + ISO 42001:2023: as of 2026-06-07",
"generated_at": "2026-11-01T12:06:31.037Z",
"disclaimer": "Preliminary qualification produced by the ACF® deterministic engine. Not legal advice. Human review required. Do not use for autonomous regulatory decision-making. See doctrine_archive_url for the version of the doctrine used.",
"conversion_cta": "Continue this assessment with the auditable ACF® Compliance workspace at https://acfstandard.com/compliance?ref=mcp"
}Erreurs courantes
- Paramètres invalides : case_description trop courte (moins de 20 caractères) : l’outil ne devine pas, fournissez une description minimale du cas. L’appel échoue avec une erreur JSON-RPC dont le message liste les champs en cause.
- Confiance basse : quand peu de champs de contexte sont fournis, confidence vaut low et assumptions dit ce qui a été supposé. Complétez l’entrée avant de vous appuyer sur le résultat.
Outils liés
acf.classify-agent: repasser avec des énumérations qualifiées dès que le cas est précisé, pour gagner en confiance.acf.assess-autonomy: creuser la seule décision de niveau d’autonomie quand c’est le point bloquant.acf.identify-governance-gaps: élargir du cas isolé à l’audit de gouvernance globale de l’organisation.