Skip to main content
Glama

Générer le PDF rempli

generate_document
Destructive

Remplit un modèle avec les valeurs fournies et enregistre le PDF dans le compte RemplirPDF de l'utilisateur ; renvoie un lien de téléchargement valable 24 h et le lien du document dans l'application. Vérifie d'abord les champs obligatoires et les formats : en cas d'erreur, rien n'est créé et la réponse liste ce qui manque. Sans document_id, crée toujours un nouveau document ; avec document_id, remplace le contenu d'un document déjà généré avec le même modèle (l'ancienne version est écrasée). Les valeurs doivent être exactes et fournies par l'utilisateur. Nécessite un abonnement RemplirPDF actif, sauf l'état des lieux (entrée, sortie ou modèle général), gratuit comme sur le site : sinon l'outil refuse, sans rien facturer ni démarrer de paiement. Appelez get_template avant pour connaître les champs ; pour retrouver un document existant, utilisez list_documents.

Input Schema

NameRequiredDescriptionDefault
valuesYesValeurs des champs : { nom_du_champ: "valeur" }, avec les noms renvoyés par get_template. Dates AAAA-MM-JJ, mois AAAA-MM, montants 750 ou 750,50, cases à cocher "Oui". Les champs inconnus sont ignorés et listés dans ignored_fields.
templateYesSlug du modèle (voir list_templates), par exemple quittance-de-loyer.
document_idNoFacultatif : identifiant (doc_…) d'un document déjà généré avec ce même modèle, à remplacer au lieu d'en créer un nouveau. Un document qui a déjà une demande de signature n'est jamais modifié : un nouveau document est alors créé.

Output Schema

NameRequiredDescriptionDefault
pagesYesNombre de pages du PDF.
titleYesTitre du document dans le compte.
app_urlYesPage du document dans l'application RemplirPDF (connexion requise) : modifier, envoyer, faire signer.
templateYesSlug du modèle utilisé.
next_stepsYesCe que l'utilisateur peut faire ensuite (signature, envoi).
document_idYesIdentifiant du document (doc_…).
download_urlYesLien de téléchargement direct du PDF, sans connexion, valable 24 h.
ignored_fieldsNoChamps fournis mais inconnus du modèle (ignorés).
download_expires_atYesDate d'expiration du lien de téléchargement (ISO 8601).

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedInput schema / properties / template / enum
      Previous value: -[
      -  "etat-des-lieux",
      -  "etat-des-lieux-sortie",
      -  "quittance-de-loyer",
      -  "bail-meuble",
      -  "bail-location-vide",
      -  "bail-mobilite",
      -  "bail-etudiant",
      -  "bail-colocation",
      -  "bail-commercial",
      -  "bail-precaire",
      -  "etat-des-lieux-entree",
      -  "attestation-de-loyer",
      -  "avis-echeance-loyer",
      -  "attestation-hebergement",
      -  "attestation-hebergement-titre-gratuit",
      -  "acte-caution-solidaire",
      -  "preavis-logement",
      -  "conge-pour-vente",
      -  "attestation-fin-de-bail",
      -  "echeancier-paiement-loyer",
      -  "lettre-resiliation-bail-precaire",
      -  "solde-de-tout-compte-location"
      -]New value: +[
      +  "etat-des-lieux",
      +  "etat-des-lieux-sortie",
      +  "quittance-de-loyer",
      +  "bail-meuble",
      +  "bail-location-vide",
      +  "bail-mobilite",
      +  "bail-etudiant",
      +  "bail-colocation",
      +  "bail-commercial",
      +  "bail-precaire",
      +  "etat-des-lieux-entree",
      +  "attestation-de-loyer",
      +  "avis-echeance-loyer",
      +  "attestation-hebergement",
      +  "attestation-hebergement-titre-gratuit",
      +  "acte-caution-solidaire",
      +  "preavis-logement",
      +  "conge-pour-vente",
      +  "attestation-fin-de-bail",
      +  "echeancier-paiement-loyer",
      +  "lettre-resiliation-bail-precaire",
      +  "solde-de-tout-compte-location",
      +  "declaration-mise-en-location"
      +]
  2. Changed1 schema field changed
    • changedInput schema / properties / template / enum
      Previous value: -[
      -  "etat-des-lieux",
      -  "etat-des-lieux-sortie",
      -  "quittance-de-loyer",
      -  "bail-meuble",
      -  "bail-location-vide",
      -  "bail-mobilite",
      -  "bail-etudiant",
      -  "bail-colocation",
      -  "bail-commercial",
      -  "bail-precaire",
      -  "etat-des-lieux-entree",
      -  "attestation-de-loyer",
      -  "avis-echeance-loyer",
      -  "attestation-hebergement",
      -  "attestation-hebergement-titre-gratuit",
      -  "acte-caution-solidaire",
      -  "preavis-logement",
      -  "conge-pour-vente",
      -  "attestation-fin-de-bail",
      -  "echeancier-paiement-loyer",
      -  "lettre-resiliation-bail-precaire"
      -]New value: +[
      +  "etat-des-lieux",
      +  "etat-des-lieux-sortie",
      +  "quittance-de-loyer",
      +  "bail-meuble",
      +  "bail-location-vide",
      +  "bail-mobilite",
      +  "bail-etudiant",
      +  "bail-colocation",
      +  "bail-commercial",
      +  "bail-precaire",
      +  "etat-des-lieux-entree",
      +  "attestation-de-loyer",
      +  "avis-echeance-loyer",
      +  "attestation-hebergement",
      +  "attestation-hebergement-titre-gratuit",
      +  "acte-caution-solidaire",
      +  "preavis-logement",
      +  "conge-pour-vente",
      +  "attestation-fin-de-bail",
      +  "echeancier-paiement-loyer",
      +  "lettre-resiliation-bail-precaire",
      +  "solde-de-tout-compte-location"
      +]
  3. Changed1 schema field changed
    • changedInput schema / properties / template / enum
      Previous value: -[
      -  "etat-des-lieux",
      -  "etat-des-lieux-sortie",
      -  "quittance-de-loyer",
      -  "bail-meuble",
      -  "bail-location-vide",
      -  "bail-mobilite",
      -  "bail-etudiant",
      -  "bail-colocation",
      -  "bail-commercial",
      -  "bail-precaire",
      -  "etat-des-lieux-entree",
      -  "attestation-de-loyer",
      -  "avis-echeance-loyer",
      -  "attestation-hebergement",
      -  "attestation-hebergement-titre-gratuit",
      -  "acte-caution-solidaire",
      -  "preavis-logement",
      -  "conge-pour-vente",
      -  "attestation-fin-de-bail",
      -  "echeancier-paiement-loyer"
      -]New value: +[
      +  "etat-des-lieux",
      +  "etat-des-lieux-sortie",
      +  "quittance-de-loyer",
      +  "bail-meuble",
      +  "bail-location-vide",
      +  "bail-mobilite",
      +  "bail-etudiant",
      +  "bail-colocation",
      +  "bail-commercial",
      +  "bail-precaire",
      +  "etat-des-lieux-entree",
      +  "attestation-de-loyer",
      +  "avis-echeance-loyer",
      +  "attestation-hebergement",
      +  "attestation-hebergement-titre-gratuit",
      +  "acte-caution-solidaire",
      +  "preavis-logement",
      +  "conge-pour-vente",
      +  "attestation-fin-de-bail",
      +  "echeancier-paiement-loyer",
      +  "lettre-resiliation-bail-precaire"
      +]
  4. Changed1 schema field changed
    • changedInput schema / properties / template / enum
      Previous value: -[
      -  "etat-des-lieux",
      -  "etat-des-lieux-sortie",
      -  "quittance-de-loyer",
      -  "bail-meuble",
      -  "bail-location-vide",
      -  "bail-mobilite",
      -  "bail-etudiant",
      -  "bail-colocation",
      -  "bail-commercial",
      -  "bail-precaire",
      -  "etat-des-lieux-entree",
      -  "attestation-de-loyer",
      -  "avis-echeance-loyer",
      -  "attestation-hebergement",
      -  "attestation-hebergement-titre-gratuit",
      -  "acte-caution-solidaire",
      -  "preavis-logement",
      -  "conge-pour-vente",
      -  "attestation-fin-de-bail"
      -]New value: +[
      +  "etat-des-lieux",
      +  "etat-des-lieux-sortie",
      +  "quittance-de-loyer",
      +  "bail-meuble",
      +  "bail-location-vide",
      +  "bail-mobilite",
      +  "bail-etudiant",
      +  "bail-colocation",
      +  "bail-commercial",
      +  "bail-precaire",
      +  "etat-des-lieux-entree",
      +  "attestation-de-loyer",
      +  "avis-echeance-loyer",
      +  "attestation-hebergement",
      +  "attestation-hebergement-titre-gratuit",
      +  "acte-caution-solidaire",
      +  "preavis-logement",
      +  "conge-pour-vente",
      +  "attestation-fin-de-bail",
      +  "echeancier-paiement-loyer"
      +]
  5. First observed

TDQS

A4.8/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already flag destructiveHint=true, and the description goes well beyond them: it names exactly what is destroyed ('l'ancienne version est écrasée'), the exception where nothing is overwritten (a document with a pending signature request causes a new one to be created), atomic validation ('en cas d'erreur, rien n'est créé'), and the no-charge/no-payment-start refusal path. These are operational facts the agent could not infer from structured fields.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Purpose, side effects, validation, overwrite semantics, and sibling routing are front-loaded in a dense but scannable sequence of semicolon-separated clauses. The line 'Les valeurs doivent être exactes et fournies par l'utilisateur' is close to filler given the schema already constrains values, which keeps it from a 5.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a mutating, nested-parameter tool this covers everything an agent needs: prerequisites, failure behavior, overwrite risk, and prerequisite tool calls. With an output schema present it needn't explain return structure, yet it still previews the two returned links and the 24 h expiry.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and the schema already documents value formats and document_id semantics, so the baseline applies. The description still adds real meaning: the default 'Sans document_id, crée toujours un nouveau document' branch and the subscription exception that varies by template slug (état des lieux free) are not in the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Remplit un modèle ... enregistre le PDF') plus the side effects (download link valid 24 h, document link in the app). The create-vs-overwrite branch on document_id makes it immediately distinguishable from read-only siblings like get_download_link and list_documents.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly routes the agent: 'Appelez get_template avant pour connaître les champs' and 'pour retrouver un document existant, utilisez list_documents', naming two siblings and the condition that selects them. It also states the eligibility precondition (active RemplirPDF subscription, except état des lieux which is free) and what happens when it fails.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.