Skip to content
Agentmart
Submit a tool

Gofact

Creates compliant French e-invoices locally: Factur-X PDF/A-3 with EN 16931 CII XML, legal numbering

Connector by kOlapsis · GitHub account verified by the MCP Registry

IndexedAGPL-3.0Local (stdio)★ 5
Write a review

Install

Works with Claude Desktop. Read the repository before you give any tool access to your data.

Download the bundle

MCP bundle (.mcpb): open it with Claude Desktop.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

Creates compliant French e-invoices locally: Factur-X PDF/A-3 with EN 16931 CII XML, legal numbering

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this server can do and what it asks for, from its tool list, install config and code. Checked Oct 25, 2026.

Tools
9 read · 3 write · 0 delete · 2 not yet classified
Secrets
None asked for
Install scripts
None found
Runs as
Downloaded binary

Tools by what they do 14

Read from the source code; the running server may list different tools.

Read 9 · Look things up without changing anything.

  • find_routing_address
  • get_invoice_status
  • get_invoice_template
  • get_organization
  • list_invoices
  • list_organizations
  • preview_invoice
  • preview_next_number
  • search_client

Write 3 · Create, change, send or run things.

  • create_invoice
  • send_invoice
  • update_organization

Not yet classified 2 · We could not tell from the name and description.

  • init_organization
  • initialize_numbering

Network hosts it talks to 11

  • aiim.org · found in code
  • api.github.com · found in code
  • api.superpdp.tech · found in code
  • directory.peppol.eu · found in code
  • github.com · found in install command, code
  • gofact.kolapsis.com · found in code
  • google.com · found in code
  • ns.adobe.com · found in code
  • raw.githubusercontent.com · found in code
  • recherche-entreprises.api.gouv.fr · found in code
  • repo1.maven.org · found in code

Files it touches

  • /opt/google/chrome/chrome
  • /var/lib/flatpak
  • /var/lib/snapd
  • Your home directory (~)

Tools (14)

Read from the source code; the running server may differ. Descriptions are the server’s own words; hidden characters are shown as [U+…].

  • create_invoice

    Crée la facture : attribue le numéro (séquence légale, continue), écrit le HTML et les données dans le dossier de l'organisation, génère le PDF Factur-X (PDF/A-3 + XML EN 16931) et inscrit la facture au registre — le tout en une transaction. Avant d'appeler : faire valider le contenu (client, lignes, montants, date) par l'utilisateur, en lui annonçant le numéro via preview_next_number.

  • find_routing_address

    Vérifie dans l'annuaire Peppol qu'un destinataire est adressable électroniquement, et sous quels identifiants. Indispensable avant un envoi PDP : sans adresse de routage valide, le dépôt est rejeté.

  • get_invoice_status

    Cycle de vie d'une facture déjà déposée sur la PDP (fr:200 déposée → fr:201 émise → fr:202 reçue…). Un rejet (fr:213) est signalé avec ses motifs, règle par règle.

  • get_invoice_template

    Modèle HTML de référence de l'organisation, figé lors de la première facture. TOUJOURS l'appeler avant de composer une facture, et REPARTIR DU HTML renvoyé (mêmes classes, même structure, même feuille de style) : les factures d'une même entité doivent se ressembler. Tant qu'aucun modèle n'est figé, l'outil renvoie le modèle par défaut de gofact (is_default) — jamais rien, donc jamais de page blanche.

  • get_organization

    Fiche d'une organisation : identité de l'émetteur (jamais de secret ni d'IBAN en clair), état de la numérotation, présence du modèle de facture figé.

  • init_organization

    Crée un dossier d'organisation : registre de numérotation et identité de l'émetteur. Refuse d'écraser un dossier existant. Demander les informations à l'utilisateur, ne jamais les inventer — et TOUJOURS demander si des factures ont déjà été émises cette année : si oui, last_invoice_number reprend la séquence là où elle en est.

  • initialize_numbering

    Reprend une numérotation existante quand l'utilisateur facturait déjà avant gofact : le compteur de l'année passe au dernier numéro émis, le suivant sera émis par gofact. Le compteur ne peut que monter — l'abaisser réutiliserait des numéros, ce qui est interdit. Idempotent.

  • list_invoices

    Factures inscrites au registre de l'organisation, de la plus récente à la plus ancienne.

  • list_organizations

    Liste les organisations (entités émettrices de factures) configurées sur ce poste, avec leur identité publique, leur compteur et leur prochain numéro. À appeler en premier.

  • preview_invoice

    Rend un HTML de facture en PDF d'aperçu, SANS rien consommer ni enregistrer : ni numéro, ni registre, ni Factur-X. L'outil de mise au point du modèle — montrer le PDF à l'utilisateur, recueillir ses retours, itérer, et seulement ensuite create_invoice.

  • preview_next_number

    Prochain numéro de facture, SANS le consommer — pour l'annoncer à l'utilisateur avant confirmation. Seul create_invoice attribue réellement le numéro.

  • search_client

    Recherche un client : d'abord l'historique de facturation de l'organisation (coordonnées validées par l'usage — TOUJOURS les réutiliser), puis, si l'historique ne connaît pas le nom, l'annuaire public des entreprises (SIRENE) pour résoudre nom, SIREN, SIRET et adresse du siège. Ne retenir qu'un candidat actif, confirmé par l'utilisateur.

  • send_invoice

    Dépose une facture émise sur la plateforme de dématérialisation (PDP) de l'organisation. IRRÉVERSIBLE : la facture entre dans le circuit de la facturation électronique. N'appeler qu'après un accord explicite de l'utilisateur, avec confirm=true. Refuse un acheteur sans adresse de routage connue de l'annuaire, et remonte immédiatement un rejet de la plateforme avec ses motifs.

  • update_organization

    Corrige l'identité d'une organisation existante : nom, SIRET, adresse, n° de TVA, IBAN. À utiliser dès qu'une facture est refusée faute d'une donnée de l'émetteur — un IBAN manquant fait échouer BR-50 à la dernière étape. Seuls les champs fournis sont modifiés ; les autres, y compris les identifiants de plateforme, sont conservés intacts. Une chaîne vide efface le champ. Demander les valeurs à l'utilisateur, ne jamais les inventer.

Compare and alternatives

    Featured in

    Signals

    Stars
    5
    Forks
    0
    Open issues
    0
    Last commit
    Oct 6, 2026 (22 days ago)
    Last release
    Sep 5, 2026 (1 month ago)

    From GitHub (fetched Oct 24, 2026).

    Details

    Registry name
    io.github.kOlapsis/gofact
    Version
    1.2.0
    Auth
    No auth
    License
    AGPL-3.0
    First seen
    Oct 24, 2026
    Last checked
    Oct 24, 2026

    More from kOlapsis

    Cite this page

    Gofact MCP server. Agent Mart. https://agentmart.dev/connectors/kolapsis-gofact (last updated 2026-10-24)