{
  "tool": "extracteur-pdf",
  "name": "L'Extracteur PDF",
  "apiVersion": "1",
  "kind": "op",
  "description": "Extrait le texte structuré (Markdown) et les tableaux (CSV) d'un PDF via sa couche texte — sans OCR, 100 % local. Idéal pour lire un gros PDF sans le rouvrir page par page, ou pour récupérer ses tableaux. Reconstruit titres, paragraphes, listes et tableaux par heuristique sur les positions x/y des caractères. Ne fonctionne pas sur un PDF scanné sans couche texte (utiliser l'OCR dans ce cas).",
  "url": "https://sui-juris.fr/p2p-tools/extracteur-pdf/",
  "heavy": false,
  "ops": {
    "extract": {
      "summary": "Extrait le contenu d'un PDF en Markdown, texte brut ou CSV des tableaux.",
      "args": {
        "fileBytes": { "type": "base64", "required": true, "description": "Le PDF source en base64." },
        "filename":  { "type": "string", "required": false, "description": "Nom du fichier source (défaut document.pdf)." },
        "mode":      { "type": "string", "required": false, "default": "markdown", "enum": ["markdown", "text", "tables"], "description": "markdown = titres + paragraphes + listes + tableaux Markdown ; text = texte brut nettoyé ; tables = uniquement les tableaux détectés au format CSV." }
      },
      "returns": { "text": "Le contenu extrait selon le mode choisi (Markdown, texte brut ou CSV)." }
    },
    "tables": {
      "summary": "Extrait uniquement les tableaux réguliers du PDF au format CSV.",
      "args": {
        "fileBytes": { "type": "base64", "required": true, "description": "Le PDF source en base64." },
        "filename":  { "type": "string", "required": false, "description": "Nom du fichier source (défaut document.pdf)." }
      },
      "returns": { "text": "Les tableaux détectés au format CSV, séparés par '--- table N ---'." }
    }
  }
}
