Skip to main content
Glama

Factur-X e-invoicing

Server Details

Generate, validate and read Factur-X / EN 16931 e-invoices (France, EU): PDF/A-3, CII, UBL 2.1.

If you are the author of this connector, you can claim ownership with GitHub, an HTTP challenge, or a DNS record. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Unhealthy
Last Tested
Transport
Streamable HTTP
URL

Available Tools

4 tools
embed_xmlEmbed Factur-X XML into a PDFA
Read-onlyIdempotent
Inspect

Attach a Factur-X XML to an existing PDF and return a PDF/A-3 Factur-X invoice.

ParametersJSON Schema
NameRequiredDescriptionDefault
xmlYesFactur-X / CII XML text (must pass EN 16931 rules)
checkNoRule set to enforce before embeddingfr-ctc
languageNoDocument language metadatafr
pdf_base64YesYour visual invoice PDF, base64 encoded

TDQS

A3.9/5.0
Behavior3/5

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

Annotations already convey readOnlyHint=true and idempotentHint=true, so the agent knows this is a safe, non-mutating, repeatable operation. The description adds the PDF/A-3 return format, but does not explain behavior around validation failures, the check parameter, or whether input XML must be schema-valid beyond what the schema description says.

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

Conciseness5/5

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

The description is a single, front-loaded sentence with no filler. Every word contributes to the core purpose and output format.

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

Completeness3/5

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

The description is adequate for a straightforward embedding operation with well-covered schema parameters, but it omits usage context relative to sibling tools, the default rule set, and any caveats about input validation. It does state the key output format, but an agent might need more guidance to choose this tool confidently over generate_invoice or validate_invoice.

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

Parameters3/5

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

Schema description coverage is 100%, so all parameters are already documented in the input schema. The description adds no extra parameter-level meaning beyond 'existing PDF' and 'Factur-X XML', which are already present in the schema descriptions.

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?

The description clearly states the action (Attach/Embed), the resource (a Factur-X XML into an existing PDF), and the result (a PDF/A-3 Factur-X invoice). It is distinguishable from siblings like generate_invoice, validate_invoice, and extract_invoice, despite not naming them.

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

Usage Guidelines4/5

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

The phrase 'to an existing PDF' gives clear context that this tool is for modifying/enriching an already existing PDF rather than generating a new one. However, it does not explicitly name alternatives or state when not to use it, so it falls short of a 5.

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

extract_invoiceExtract e-invoice dataA
Read-onlyIdempotent
Inspect

Extract the embedded XML and key business terms (number, dates, parties, totals, VAT, lines).

ParametersJSON Schema
NameRequiredDescriptionDefault
xmlNoCII or UBL XML as text (alternative to document_base64)
include_xmlNoInclude the raw XML in the result
document_base64NoFactur-X PDF or XML file, base64 encoded

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already cover read-only and idempotent behavior, lowering the bar. The description adds useful context about extracting embedded XML and key business terms, but it does not disclose edge behaviors such as handling of both xml and document_base64 being supplied, or behavior when neither is supplied.

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

Conciseness5/5

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

One sentence with no filler; the core action and extracted content are front-loaded. Every word earns its place.

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

Completeness4/5

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

For a simple read-only extraction tool, the description plus the fully documented schema and output schema is mostly complete. The only notable gap is that all parameters are optional in the schema and the description does not explicitly state that at least one input source (xml or document_base64) should be provided.

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

Parameters3/5

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

Schema description coverage is 100%, so the baseline applies. Each parameter is already documented (xml vs document_base64 alternatives, include_xml flag), and the description does not add extra meaning beyond what the schema says.

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

Purpose4/5

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

The description states a clear action ('Extract') on a specific resource (e-invoice data) and enumerates the extracted content (number, dates, parties, totals, VAT, lines). It does not explicitly distinguish itself from siblings like validate_invoice or generate_invoice, but the extraction verb makes the purpose reasonably distinct.

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

Usage Guidelines3/5

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

Usage context is only implied: an agent can infer this is for pulling structured data out of an e-invoice document. No when-to-use or when-not-to-use guidance is given, and none of the sibling tools are referenced as alternatives.

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

generate_invoiceGenerate Factur-X invoiceB
Read-onlyIdempotent
Inspect

Generate a compliant e-invoice from structured data.

Returns a summary and the document as an embedded resource (base64 PDF or XML text).

ParametersJSON Schema
NameRequiredDescriptionDefault
checkNoSchematron rule set: EN 16931 base or + French CTC rulesfr-ctc
outputNofacturx-pdf (PDF/A-3 with XML, default), cii-xml or ubl-xmlfacturx-pdf
invoiceYes
profileNoEN 16931 conformance level: en16931 (default), extended, extended-ctc-fr, basicwlen16931
languageNoLanguage of the visual PDF: fr or enfr
footer_textNoOptional footer text on the PDF

TDQS

B3.4/5.0
Behavior4/5

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

Annotations already carry the safety profile (readOnlyHint, idempotentHint), and the description does not contradict them — 'generate... returns' reads as a pure transformation with no persisted side effects. The description adds the return structure (summary plus embedded base64 PDF or XML text), which tells the agent what to expect. It doesn't cover failure behavior or internal validation, but the 'check' parameter's schema partially discloses that.

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?

Two sentences with zero filler, purpose front-loaded ahead of the return-value note. The description is clean but arguably terse for a compliance-critical generator; it shifts most explanatory burden onto the very large schema.

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

Completeness3/5

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

The essentials are present — what it does, what it returns, and (via annotations) its read-only, idempotent nature — backed by an unusually rich schema. However, with no output schema, the description omits useful context such as validation/failure semantics on non-compliant input, how profiles affect output, and the distinction between the three output formats beyond their names.

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

Parameters3/5

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

Schema description coverage is 83%, above the 80% threshold, so the baseline of 3 applies even though the top-level description adds no parameter detail. The schema itself documents output formats, profiles, check rule sets, language, and the extensive Invoice definition with BT codes. Nothing in the description is needed to disambiguate the parameters.

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

Purpose4/5

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

The description states a specific verb and resource — 'generate a compliant e-invoice from structured data' — and the title names the standard (Factur-X invoice). Mentioning the return shape (summary plus embedded document) further clarifies what the tool produces. It doesn't explicitly contrast with siblings, but 'generate' versus 'embed/extract/validate' is strongly self-differentiating from the name alone.

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

Usage Guidelines2/5

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

No when-to-use or when-not-to-use guidance is given, and no sibling tool is named as an alternative. Usage must be inferred from the verb 'generate' — call this when you have structured invoice data and want a document — with no exclusions, prerequisites, or routing hints.

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

validate_invoiceValidate e-invoiceA
Read-onlyIdempotent
Inspect

Validate against XSD and EN 16931 schematron. Returns valid flag, detected profile and findings with rule ids.

ParametersJSON Schema
NameRequiredDescriptionDefault
xmlNoCII or UBL XML as text (alternative to document_base64)
checkNoEN 16931 base rules or + French CTC rules (default)fr-ctc
document_base64NoFactur-X PDF or XML file, base64 encoded

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already declare readOnlyHint and idempotentHint, so no side-effect warning is needed. The description adds the standards checked and the return shape (valid flag, profile, findings with rule ids), which enriches the call context without contradicting the annotations.

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

Conciseness5/5

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

Two compact sentences with the core verb and standards front-loaded, followed by a sparse return-value sentence. No filler or repetition of already-documented schema details.

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 read-only validation tool with full parameter descriptions and an output schema, the description gives the essential behavioral contract. The default check (fr-ctc) and input formats are covered by the schema, so nothing critical is missing.

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

Parameters3/5

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

Schema description coverage is 100%, so the baseline is 3. The description adds no extra parameter-specific meaning; the alternatives (xml vs document_base64) and the check enun are already fully documented 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 action (validate) against well-defined standards (XSD, EN 16931 schematron) and names key outputs (valid flag, detected profile, findings with rule ids). Sibling tools have distinct verbs (embed, extract, generate), so differentiation is immediate.

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

Usage Guidelines3/5

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

No explicit when-to-use or alternative routing is provided. The description only implies that validation is the intended use case, leaving the agent to infer when to choose it over embed, extract, or generate. This is implied usage, not explicit guidance.

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

Frequently Asked Questions

Discussions

No comments yet. Be the first to start the discussion!

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    D
    maintenance
    MCP server for DACH e-invoicing. Create XRechnung (UBL) and ZUGFeRD 2.3 (Factur-X CII) invoices, validate against EN 16931 rules, extract data from XML, and convert between UBL, CII and JSON formats.
    6
    54
    2
    MIT
  • A
    license
    A
    quality
    A
    maintenance
    Model Context Protocol (MCP) server for German Electronic Invoicing (ZUGFeRD 2.x / XRechnung 3.x). Provides tools to validate, generate, parse, and convert invoices compliant with EN 16931 and KoSIT.
    50
    2
    Apache 2.0
  • A
    license
    A
    quality
    D
    maintenance
    Validates electronic invoices (XRechnung, ZUGFeRD, Factur-X, Peppol BIS, etc.) against authority-pinned rules and explains failures.
    2
    21
    MIT
  • A
    license
    Not graded
    quality
    A
    maintenance
    Enables AI assistants to locally parse, validate, audit, explain, generate, and convert XRechnung and ZUGFeRD/Factur-X e-invoices using official rule sets, fully offline with no API keys required.
    Apache 2.0
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

TDQS

A4/5.0
Disambiguation5/5

Each tool targets a distinct stage of the Factur-X lifecycle: creation, validation, embedding into PDF, and extraction. There is no meaningful overlap between generate, validate, embed, and extract operations.

Naming Consistency5/5

All tool names follow a consistent verb_noun snake_case pattern: embed_xml, extract_invoice, generate_invoice, validate_invoice. The pattern is predictable and immediately conveys the action and object.

Tool Count5/5

Four tools is a well-scoped size for this domain, covering the essential operations without redundancy. Each tool earns its place in the set.

Completeness5/5

The toolkit covers the full core workflow: generate a compliant invoice, validate it, embed the XML in a PDF/A-3 document, and extract previously embedded data. No obvious lifecycle gaps exist for the stated purpose.

Resources