Facture Électronique France MCP server
MCP server for French e-invoicing (XP Z12-013). Manages invoices, validation and compliance.
0 stars70 downloads/wk
Reviews
Write oneNobody has reviewed Facture Électronique France yet.
If you have run it, two minutes of your experience saves the next person an afternoon.
Facture Électronique France tools (35, 13 write)
write = sends, deletes, buys or postsRead from the package source without running it. The installed server may list more.
check_ppf_annuaire_healthCheck the availability of the PPF Annuaire service (GET /healthcheck). Use before a directory-management session to ensure the service is reachable.
create_directory_linewrite actionCreate a directory line (electronic invoice receiving address) (POST /ligne-annuaire).
create_routing_codewrite actionCreate a routing code (POST /code-routage).
create_webhookwrite actiondelete_directory_linewrite actionDelete a directory line (DELETE /ligne-annuaire/id-instance:{id-instance}).
delete_webhookwrite actionDelete (unsubscribe from) a webhook. After deletion, the AP will stop sending notifications to the callback URL.
get_company_by_id_instanceLook up a legal unit by directory instance ID (GET /siren/id-instance:{id-instance}).
get_company_by_sirenLook up a legal unit by SIREN (GET /siren/code-insee:{siren}).
get_directory_lineLook up a directory line by directory instance ID (GET /ligne-annuaire/id-instance:{id-instance}).
get_directory_line_by_codeLook up a directory line by addressing code (GET /ligne-annuaire/code:{identifiant-adressage}).
get_establishment_by_id_instanceLook up an establishment by directory instance ID (GET /siret/id-instance:{id-instance}).
get_establishment_by_siretLook up an establishment by SIRET (GET /siret/code-insee:{siret}).
get_flowRetrieve a flow by its identifier. docType allows choosing between JSON metadata (Metadata), the original document (Original), the converted document (Converted), or the readable representation (ReadableView). By default, returns the JSON metadata (status, dates, identifiers).
get_routing_code_by_id_instanceLook up a routing code by directory instance ID (GET /code-routage/id-instance:{id-instance}).
get_routing_code_by_siret_and_codeLook up a routing code by SIRET and code (GET /code-routage/siret:{siret}/code:{identifiant-routage}).
get_webhookRetrieve the full details of a webhook subscription: callback URL, authentication mode, signature configuration, and metadata filters (flow type, direction, processing rule, ack status).
healthcheck_flowCheck the availability of the Approved Platform's Flow Service. Returns the operational status of the service (ok/degraded/unavailable). Use before an invoice submission session to ensure the AP is reachable.
list_webhooksList all webhook subscription IDs owned by the current OAuth2 token holder.
replace_directory_lineFully replace a directory line (PUT /ligne-annuaire/id-instance:{id-instance}).
replace_routing_codeFully replace a routing code (PUT /code-routage/id-instance:{id-instance}). Unlike update_routing_code, all fields are required and replace the existing object entirely.
run_check_5write actionCHECK 5 — FR-specific structural and completeness checks.
search_companySearch legal units (SIRENs) in the PPF Annuaire (POST /siren/recherche).
search_directory_lineSearch directory lines (electronic invoice receiving addresses) (POST /ligne-annuaire/recherche).
search_establishmentSearch establishments (SIRETs) in the PPF Annuaire (POST /siret/recherche).
search_flowsSearch flows (invoices, statuses, e-reportings) in the Approved Platform by criteria: flow type, status, processingRule, period, trackingId. Pagination via updatedAfter: use the 'nextUpdatedAfter' field from the response as the updated_after parameter value to get the next page.
search_routing_codeSearch routing codes (POST /code-routage/recherche).
submit_flowwrite actionsubmit_lifecycle_statuswrite actionsubmit_payment_reportwrite actionsubmit_transaction_reportwrite actionupdate_directory_linewrite actionPartially update a directory line (PATCH /ligne-annuaire/id-instance:{id-instance}). Only provided fields are modified.
update_routing_codewrite actionPartially update a routing code (PATCH /code-routage/id-instance:{id-instance}). Only provided fields are modified.
update_webhookwrite actionUpdate a webhook subscription's technical parameters (authentication, signature, custom headers). Metadata filters (flow type, direction) cannot be changed; delete and recreate the webhook instead.
validate_ereporting_xmlValidate a DGFiP e-reporting (Flux 10) FRR XML payload.
validate_facturxValidate a Factur-X CII XML document against its profile's Schematron ruleset.
Public scan report
scanner v0.1.10 · 2026-10-03 · same rubric, same numbers if you re-run it
- Code scan22 source files scanned25/25
- –Live reliabilityno gateway calls yet and no remote to proben/a
- –Tool poisoningtools not inspected (local package is not executed); not countedn/a
- Auth qualitylocal package, no credentials required12/15
- Maintenancelast push 22 days ago15/15
- Maintainer identityregistry namespace matches repository owner; GitHub account older than a year8/10
How Facture Électronique France compares
Against every graded MCP server, from our own scans and uptime checks. Updated after each scan run.
- Safety score
- 92/100
- higher than 93% of 48,243 servers
- Tools
- 35
- the typical server has 7
- Tools that change things
- 37%
- typical: 0%. Fewer write tools means less an agent can break
- Downloads a week
- 70
- more than 53% of 12,306 servers with a package
What its tools let an agent do: 20 read · 3 create · 9 change · 2 delete · 1 run or deploy
Install Facture Électronique France in Claude Code, Cursor or VS Code
claude mcp add mcp-facture-electronique-fr -- uvx mcp-facture-electronique-fr
What the publisher says
From the Facture Électronique France repository's README, as published. We do not edit it. Read it on GitHub
mcp-facture-electronique-fr 🇫🇷
English | Francais
<!-- mcp-name: io.github.cmendezs/mcp-facture-electronique-fr -->
A Python MCP server exposing the standardized AFNOR XP Z12-013 APIs for the French e-invoicing reform (effective September 1, 2026). This project enables AI agents (Claude, IDEs) to interact natively with the Approved Platform (PA/PDP) ecosystem as a Compatible Solution (SC).
Introduction
This package is built on top of mcp-einvoicing-core, a shared base library for European e-invoicing MCP servers. It provides the OAuth2 HTTP client, token cache, shared models, logging utilities, and exception hierarchy used by this package.
mcp-einvoicing-core is installed automatically as a transitive dependency, no extra step is needed.
For contributors: pip install -e ".[dev]" installs the base package from PyPI automatically.
This server operates in Compatible Solution (CS) mode as defined by the French e-invoicing reform. The CS acts as an intermediary between the company's information system and an Approved Platform (AP/PDP). This means:
- No profile validation of caller-supplied payloads. The server transmits the invoice file (Factur-X PDF/A-3, UBL 2.1, or CII XML) as provided. Structural and business-rule validation (NF XP Z12-012 profiles, Schematron rules) is performed by the receiving Approved Platform, not by this server.
- No e-reporting payload validation beyond schema-level XSD. Transaction reports (Flux 10.1/10.3) and payment reports (Flux 10.2/10.4) are validated against the DGFiP v3.2 XSD schema when validateereportingxml is called, but deeper business-rule checks (e.g. coherence between declared amounts and invoice totals) are the responsibility of the AP.
- No PDF/A-3 envelope generation. The caller must produce the conformant Factur-X PDF/A-3 file with embedded CII XML. This server transmits the finished binary.
The Approved Platform performs final validation and may reject non-conformant submissions with an error code and message.
Installation
Via PyPI (recommended)
pip install mcp-facture-electronique-frOr without prior installation using uvx:
uvx mcp-facture-electronique-frFor Factur-X Schematron validation (validate_facturx, requires the XSLT 2.0 / Saxon-HE backend — see FR-XSLT2-1 in Available tools below):
pip install mcp-facture-electronique-fr[xslt2]From source
# Clone the repository
git clone https://github.com/cmendezs/mcp-facture-electronique-fr.git
cd mcp-facture-electronique-fr
# Create the virtual environment
python -m venv .venv
source .venv/bin/activate # On Windows: .venv\Scripts\activate
# Install in editable mode
pip install -e ".[dev]"# Initial configuration
cp .env.example .env
# Edit .env with the credentials provided by your PA/PDPConfiguration (.env)
The server requires the following variables to authenticate with an Approved Platform (PA):
Shortened. The full README is on GitHub.
Nothing above is checked by us. What we check is on the safety report.
Facture Électronique France: common questions
- Is Facture Électronique France MCP server safe?
- Yes, by our scan: it is graded A (92/100). Read the Facture Électronique France safety report
- How do I install Facture Électronique France?
- It runs on your machine. Copy the Claude Code, Cursor, VS Code or Claude Desktop config from the install section.
- Does Facture Électronique France need an API key?
- Not as far as the registry entry and our scan can tell: no credentials are declared or required.
- Is Facture Électronique France maintained?
- The last commit was 54 days ago (2026-09-12). The latest release is v0.9.1.
- How does Facture Électronique France compare with other MCP servers?
- safety score 92/100 (higher than 93% of 48,243 servers); tools 35 (the typical server has 7); tools that change things 37% (typical: 0%. Fewer write tools means less an agent can break). Full comparison.