{"$schema":"https://wellknown.network/schemas/agent-record-v1.json","schemaVersion":"1","id":"ag_ugzbrmht7455","handle":"factur-x-e-invoicing","url":"https://wellknown.network/agents/factur-x-e-invoicing","links":{"self":"https://wellknown.network/agents/factur-x-e-invoicing/record.json","html":"https://wellknown.network/agents/factur-x-e-invoicing","markdown":"https://wellknown.network/agents/factur-x-e-invoicing/record.md","api":"https://wellknown.network/api/v1/agents/factur-x-e-invoicing","status":"https://wellknown.network/api/v1/agents/factur-x-e-invoicing/status","claim":"https://wellknown.network/agents/factur-x-e-invoicing/claim","claimApi":"https://wellknown.network/api/v1/claims","claimDescriptor":"https://wellknown.network/agents/factur-x-e-invoicing/claim.json","badge":"https://wellknown.network/agents/factur-x-e-invoicing/badge.svg","openapi":"https://wellknown.network/openapi.json","history":"https://wellknown.network/api/v1/agents/factur-x-e-invoicing/history","tools":"https://wellknown.network/api/v1/agents/factur-x-e-invoicing/tools"},"ard":{"identifier":"urn:air:facturx.orvel.dev:server:factur-x-e-invoicing","type":"application/mcp-server-card+json"},"kind":"mcp_server","declared":{"name":"Factur-X: Generate & Validate E-Invoices","summary":"Generate and validate Factur-X, CII & UBL invoices. Free demo; 10-operation account trial.","description":"Generate and validate Factur-X, CII & UBL invoices. Free demo; 10-operation account trial.","publisher":{"name":"LeBorgneAntoine","url":null},"homepage":"https://facturx.orvel.dev/docs/mcp/","repository":null,"version":"0.1.22","license":null,"protocols":["mcp"],"tags":[],"pricing":null,"endpoints":[{"url":"https://facturx.orvel.dev/mcp","type":"mcp_streamable_http","auth":null,"probeable":true}],"skills":null,"tools":null,"extra":{"updatedAt":"2026-10-09T17:18:43.416805Z","publishedAt":"2026-10-09T17:18:43.416805Z","registryName":"io.github.LeBorgneAntoine/facturx"},"attribution":{"kind":"mcp_registry","name":"mcp_registry","summary":"mcp_registry","version":"mcp_registry","description":"mcp_registry","homepageUrl":"mcp_registry","publisherName":"mcp_registry"}},"derived":{"capabilities":[{"slug":"documents.invoice-processing","name":"Invoice Processing","confidence":1,"provenance":"derived"},{"slug":"documents.extraction","name":"Data Extraction","confidence":0.583,"provenance":"derived"},{"slug":"finance.accounting","name":"Accounting","confidence":0.569,"provenance":"derived"},{"slug":"ai.evaluation","name":"Evaluation & Benchmarks","confidence":0.554,"provenance":"derived"}],"categories":["ai","documents","finance"],"language":"en"},"observed":{"status":"live","statusReason":"Responded 5h ago.","lastOkAt":"2026-10-09T22:28:24.775Z","lastProbedAt":"2026-10-09T22:28:24.775Z","statusComputedAt":"2026-10-09T22:29:08.773Z","reliability30d":{"probes":109,"successRate":1,"p50Ms":12,"basis":"service","measures":{"availability":"availability","latency":"response time","tools":"tool surface observed","summary":"Checks reached the service itself."},"checks":{"total":109,"ok":109,"authBoundaryOk":0,"serviceOk":109,"note":"Counted from the observation rows for the window, checks of the server only (HTTP, A2A card, MCP initialize). ok = authBoundaryOk + serviceOk. `probes` is the sum of daily rollups and includes registry checks, so it can differ from `total`."}},"latestObservations":[{"at":"2026-10-09T22:28:24.775Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":13,"error":null,"detail":{"tools":[{"name":"view_invoice_demo","description":"Demonstrate the engine on bundled synthetic samples only; never checks a user's invoice.\n\n    Use for product evaluation without a key. To check a supplied docu"},{"name":"generate_invoice","description":"Create an EN 16931 e-invoice from structured data: Factur-X PDF/A-3, CII XML, or UBL 2.1 XML.\n\n    Use when you have the parties, lines and dates and need the d"},{"name":"embed_xml","description":"Combine a visual PDF you already have with CII XML into one Factur-X PDF/A-3.\n\n    Use for an existing visual invoice; use generate_invoice to render invoice da"},{"name":"validate_invoice","description":"Check a Factur-X PDF, CII XML or UBL XML against EN 16931, and report the fields to fix.\n\n    Use when the caller supplies a document, including after correctio"},{"name":"extract_invoice","description":"Extract invoice parties, dates, lines, totals and VAT as JSON for bookkeeping or matching.\n\n    Use validate_invoice for compliance; this performs no OCR or rec"},{"name":"check_party","description":"Check exactly one seller or buyer's registry identifiers and readiness through EU Verify.\n\n    Use to correct one party's identifiers; use check_invoice_parties"},{"name":"check_invoice_parties","description":"Check a supplied seller AND buyer together, returning combined readiness and separate evidence.\n\n    Use before generate_invoice; use check_party for one party "},{"name":"explain_finding","description":"Turn a validation rule id into the invoice field to change and an example value.\n\n    Use after validate_invoice or a generate_invoice rule error, not to valida"},{"name":"get_invoice_example","description":"Return a complete invoice or credit-note example to edit and pass to generate_invoice.\n\n    Use this first, instead of inventing fields. No API key is required,"},{"name":"draft_credit_note","description":"Draft a type-381 credit note from an existing invoice, for all lines or selected quantities.\n\n    Use to reverse an existing invoice's charges; use get_invoice_"}],"toolCount":10,"toolsHash":"bdfd5690e87bf4cc9c99f4cca3824e6e0a4f8ea66e5b1644eb136f9102bc275f","serverName":"facturx","capabilities":["experimental","prompts","resources","tools"],"serverVersion":"0.1.22","protocolVersion":"2025-06-18"}},{"at":"2026-10-09T16:33:45.583Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":19,"error":null,"detail":{"tools":[{"name":"view_invoice_demo","description":"Demonstrate the engine on bundled synthetic samples only; never checks a user's invoice.\n\n    Use for product evaluation without a key. To check a supplied docu"},{"name":"generate_invoice","description":"Create an EN 16931 e-invoice from structured data: Factur-X PDF/A-3, CII XML, or UBL 2.1 XML.\n\n    Use when you have the parties, lines and dates and need the d"},{"name":"embed_xml","description":"Combine a visual PDF you already have with CII XML into one Factur-X PDF/A-3.\n\n    Use for an existing visual invoice; use generate_invoice to render invoice da"},{"name":"validate_invoice","description":"Check a Factur-X PDF, CII XML or UBL XML against EN 16931, and report the fields to fix.\n\n    Use when the caller supplies a document, including after correctio"},{"name":"extract_invoice","description":"Extract invoice parties, dates, lines, totals and VAT as JSON for bookkeeping or matching.\n\n    Use validate_invoice for compliance; this performs no OCR or rec"},{"name":"check_party","description":"Check exactly one seller or buyer's registry identifiers and readiness through EU Verify.\n\n    Use to correct one party's identifiers; use check_invoice_parties"},{"name":"check_invoice_parties","description":"Check a supplied seller AND buyer together, returning combined readiness and separate evidence.\n\n    Use before generate_invoice; use check_party for one party "},{"name":"explain_finding","description":"Turn a validation rule id into the invoice field to change and an example value.\n\n    Use after validate_invoice or a generate_invoice rule error, not to valida"},{"name":"get_invoice_example","description":"Return a complete invoice or credit-note example to edit and pass to generate_invoice.\n\n    Use this first, instead of inventing fields. No API key is required,"},{"name":"draft_credit_note","description":"Draft a type-381 credit note from an existing invoice, for all lines or selected quantities.\n\n    Use to reverse an existing invoice's charges; use get_invoice_"}],"toolCount":10,"toolsHash":"57c1e9648dd2ae042a5a77863a261092d16d97f993246958974a0fd6c9501cce","serverName":"facturx","capabilities":["experimental","prompts","resources","tools"],"serverVersion":"0.1.21","protocolVersion":"2025-06-18"}},{"at":"2026-10-09T10:23:25.670Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":10,"error":null,"detail":{"tools":[{"name":"view_invoice_demo","description":"Demonstrate the engine on bundled synthetic samples only; never checks a user's invoice.\n\n    Use for product evaluation without a key. To check a supplied docu"},{"name":"generate_invoice","description":"Create an EN 16931 e-invoice from structured data: Factur-X PDF/A-3, CII XML, or UBL 2.1 XML.\n\n    Use when you have the parties, lines and dates and need the d"},{"name":"embed_xml","description":"Combine a visual PDF you already have with CII XML into one Factur-X PDF/A-3.\n\n    Use for an existing visual invoice; use generate_invoice to render invoice da"},{"name":"validate_invoice","description":"Check a Factur-X PDF, CII XML or UBL XML against EN 16931, and report the fields to fix.\n\n    Use when the caller supplies a document, including after correctio"},{"name":"extract_invoice","description":"Extract invoice parties, dates, lines, totals and VAT as JSON for bookkeeping or matching.\n\n    Use validate_invoice for compliance; this performs no OCR or rec"},{"name":"check_party","description":"Check exactly one seller or buyer's registry identifiers and readiness through EU Verify.\n\n    Use to correct one party's identifiers; use check_invoice_parties"},{"name":"check_invoice_parties","description":"Check a supplied seller AND buyer together, returning combined readiness and separate evidence.\n\n    Use before generate_invoice; use check_party for one party "},{"name":"explain_finding","description":"Turn a validation rule id into the invoice field to change and an example value.\n\n    Use after validate_invoice or a generate_invoice rule error, not to valida"},{"name":"get_invoice_example","description":"Return a complete invoice or credit-note example to edit and pass to generate_invoice.\n\n    Use this first, instead of inventing fields. No API key is required,"},{"name":"draft_credit_note","description":"Draft a type-381 credit note from an existing invoice, for all lines or selected quantities.\n\n    Use to reverse an existing invoice's charges; use get_invoice_"}],"toolCount":10,"toolsHash":"57c1e9648dd2ae042a5a77863a261092d16d97f993246958974a0fd6c9501cce","serverName":"facturx","capabilities":["experimental","prompts","resources","tools"],"serverVersion":"0.1.21","protocolVersion":"2025-06-18"}},{"at":"2026-10-09T04:28:52.892Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":21,"error":null,"detail":{"tools":[{"name":"view_invoice_demo","description":"Demonstrate the engine on bundled synthetic samples only; never checks a user's invoice.\n\n    Use for product evaluation without a key. To check a supplied docu"},{"name":"generate_invoice","description":"Create an EN 16931 e-invoice from structured data: Factur-X PDF/A-3, CII XML, or UBL 2.1 XML.\n\n    Use when you have the parties, lines and dates and need the d"},{"name":"embed_xml","description":"Combine a visual PDF you already have with CII XML into one Factur-X PDF/A-3.\n\n    Use for an existing visual invoice; use generate_invoice to render invoice da"},{"name":"validate_invoice","description":"Check a Factur-X PDF, CII XML or UBL XML against EN 16931, and report the fields to fix.\n\n    Use when the caller supplies a document, including after correctio"},{"name":"extract_invoice","description":"Extract invoice parties, dates, lines, totals and VAT as JSON for bookkeeping or matching.\n\n    Use validate_invoice for compliance; this performs no OCR or rec"},{"name":"check_party","description":"Check exactly one seller or buyer's registry identifiers and readiness through EU Verify.\n\n    Use to correct one party's identifiers; use check_invoice_parties"},{"name":"check_invoice_parties","description":"Check a supplied seller AND buyer together, returning combined readiness and separate evidence.\n\n    Use before generate_invoice; use check_party for one party "},{"name":"explain_finding","description":"Turn a validation rule id into the invoice field to change and an example value.\n\n    Use after validate_invoice or a generate_invoice rule error, not to valida"},{"name":"get_invoice_example","description":"Return a complete invoice or credit-note example to edit and pass to generate_invoice.\n\n    Use this first, instead of inventing fields. No API key is required,"},{"name":"draft_credit_note","description":"Draft a type-381 credit note from an existing invoice, for all lines or selected quantities.\n\n    Use to reverse an existing invoice's charges; use get_invoice_"}],"toolCount":10,"toolsHash":"57c1e9648dd2ae042a5a77863a261092d16d97f993246958974a0fd6c9501cce","serverName":"facturx","capabilities":["experimental","prompts","resources","tools"],"serverVersion":"0.1.21","protocolVersion":"2025-06-18"}},{"at":"2026-10-08T22:23:20.111Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":9,"error":null,"detail":{"tools":[{"name":"view_invoice_demo","description":"Demonstrate the engine on bundled synthetic samples only; never checks a user's invoice.\n\n    Use for product evaluation without a key. To check a supplied docu"},{"name":"generate_invoice","description":"Create an EN 16931 e-invoice from structured data: Factur-X PDF/A-3, CII XML, or UBL 2.1 XML.\n\n    Use when you have the parties, lines and dates and need the d"},{"name":"embed_xml","description":"Combine a visual PDF you already have with CII XML into one Factur-X PDF/A-3.\n\n    Use for an existing visual invoice; use generate_invoice to render invoice da"},{"name":"validate_invoice","description":"Check a Factur-X PDF, CII XML or UBL XML against EN 16931, and report the fields to fix.\n\n    Use when the caller supplies a document, including after correctio"},{"name":"extract_invoice","description":"Extract invoice parties, dates, lines, totals and VAT as JSON for bookkeeping or matching.\n\n    Use validate_invoice for compliance; this performs no OCR or rec"},{"name":"check_party","description":"Check exactly one seller or buyer's registry identifiers and readiness through EU Verify.\n\n    Use to correct one party's identifiers; use check_invoice_parties"},{"name":"check_invoice_parties","description":"Check a supplied seller AND buyer together, returning combined readiness and separate evidence.\n\n    Use before generate_invoice; use check_party for one party "},{"name":"explain_finding","description":"Turn a validation rule id into the invoice field to change and an example value.\n\n    Use after validate_invoice or a generate_invoice rule error, not to valida"},{"name":"get_invoice_example","description":"Return a complete invoice or credit-note example to edit and pass to generate_invoice.\n\n    Use this first, instead of inventing fields. No API key is required,"},{"name":"draft_credit_note","description":"Draft a type-381 credit note from an existing invoice, for all lines or selected quantities.\n\n    Use to reverse an existing invoice's charges; use get_invoice_"}],"toolCount":10,"toolsHash":"57c1e9648dd2ae042a5a77863a261092d16d97f993246958974a0fd6c9501cce","serverName":"facturx","capabilities":["experimental","prompts","resources","tools"],"serverVersion":"0.1.21","protocolVersion":"2025-06-18"}},{"at":"2026-10-08T15:24:58.178Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":12,"error":null,"detail":{"tools":[{"name":"view_invoice_demo","description":"Demonstrate the engine on bundled synthetic samples only; never checks a user's invoice.\n\n    Use for product evaluation without a key. To check a supplied docu"},{"name":"generate_invoice","description":"Create an EN 16931 e-invoice from structured data: Factur-X PDF/A-3, CII XML, or UBL 2.1 XML.\n\n    Use when you have the parties, lines and dates and need the d"},{"name":"embed_xml","description":"Combine a visual PDF you already have with CII XML into one Factur-X PDF/A-3.\n\n    Use for an existing visual invoice; use generate_invoice to render invoice da"},{"name":"validate_invoice","description":"Check a Factur-X PDF, CII XML or UBL XML against EN 16931, and report the fields to fix.\n\n    Use when the caller supplies a document, including after correctio"},{"name":"extract_invoice","description":"Extract invoice parties, dates, lines, totals and VAT as JSON for bookkeeping or matching.\n\n    Use validate_invoice for compliance; this performs no OCR or rec"},{"name":"check_party","description":"Check exactly one seller or buyer's registry identifiers and readiness through EU Verify.\n\n    Use to correct one party's identifiers; use check_invoice_parties"},{"name":"check_invoice_parties","description":"Check a supplied seller AND buyer together, returning combined readiness and separate evidence.\n\n    Use before generate_invoice; use check_party for one party "},{"name":"explain_finding","description":"Turn a validation rule id into the invoice field to change and an example value.\n\n    Use after validate_invoice or a generate_invoice rule error, not to valida"},{"name":"get_invoice_example","description":"Return a complete invoice or credit-note example to edit and pass to generate_invoice.\n\n    Use this first, instead of inventing fields. No API key is required,"},{"name":"draft_credit_note","description":"Draft a type-381 credit note from an existing invoice, for all lines or selected quantities.\n\n    Use to reverse an existing invoice's charges; use get_invoice_"}],"toolCount":10,"toolsHash":"57c1e9648dd2ae042a5a77863a261092d16d97f993246958974a0fd6c9501cce","serverName":"facturx","capabilities":["experimental","prompts","resources","tools"],"serverVersion":"0.1.21","protocolVersion":"2025-06-18"}},{"at":"2026-10-08T09:22:21.965Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":15,"error":null,"detail":{"tools":[{"name":"view_invoice_demo","description":"Demonstrate the engine on bundled synthetic samples only; never checks a user's invoice.\n\n    Use for product evaluation without a key. To check a supplied docu"},{"name":"generate_invoice","description":"Create an EN 16931 e-invoice from structured data: Factur-X PDF/A-3, CII XML, or UBL 2.1 XML.\n\n    Use when you have the parties, lines and dates and need the d"},{"name":"embed_xml","description":"Combine a visual PDF you already have with CII XML into one Factur-X PDF/A-3.\n\n    Use for an existing visual invoice; use generate_invoice to render invoice da"},{"name":"validate_invoice","description":"Check a Factur-X PDF, CII XML or UBL XML against EN 16931, and report the fields to fix.\n\n    Use when the caller supplies a document, including after correctio"},{"name":"extract_invoice","description":"Extract invoice parties, dates, lines, totals and VAT as JSON for bookkeeping or matching.\n\n    Use validate_invoice for compliance; this performs no OCR or rec"},{"name":"check_party","description":"Check exactly one seller or buyer's registry identifiers and readiness through EU Verify.\n\n    Use to correct one party's identifiers; use check_invoice_parties"},{"name":"check_invoice_parties","description":"Check a supplied seller AND buyer together, returning combined readiness and separate evidence.\n\n    Use before generate_invoice; use check_party for one party "},{"name":"explain_finding","description":"Turn a validation rule id into the invoice field to change and an example value.\n\n    Use after validate_invoice or a generate_invoice rule error, not to valida"},{"name":"get_invoice_example","description":"Return a complete invoice or credit-note example to edit and pass to generate_invoice.\n\n    Use this first, instead of inventing fields. No API key is required,"},{"name":"draft_credit_note","description":"Draft a type-381 credit note from an existing invoice, for all lines or selected quantities.\n\n    Use to reverse an existing invoice's charges; use get_invoice_"}],"toolCount":10,"toolsHash":"c329f42d0b07c9887f31f233862ad099e20647f8d4e767fefe9de3b90aa41555","serverName":"facturx","capabilities":["experimental","prompts","resources","tools"],"serverVersion":"0.1.19","protocolVersion":"2025-06-18"}},{"at":"2026-10-08T02:22:38.704Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":12,"error":null,"detail":{"tools":[{"name":"view_invoice_demo","description":"Demonstrate the engine on bundled synthetic samples only; never checks a user's invoice.\n\n    Use for product evaluation without a key. To check a supplied docu"},{"name":"generate_invoice","description":"Create an EN 16931 e-invoice from structured data: Factur-X PDF/A-3, CII XML, or UBL 2.1 XML.\n\n    Use when you have the parties, lines and dates and need the d"},{"name":"embed_xml","description":"Combine a visual PDF you already have with CII XML into one Factur-X PDF/A-3.\n\n    Use for an existing visual invoice; use generate_invoice to render invoice da"},{"name":"validate_invoice","description":"Check a Factur-X PDF, CII XML or UBL XML against EN 16931, and report the fields to fix.\n\n    Use when the caller supplies a document, including after correctio"},{"name":"extract_invoice","description":"Extract invoice parties, dates, lines, totals and VAT as JSON for bookkeeping or matching.\n\n    Use validate_invoice for compliance; this performs no OCR or rec"},{"name":"check_party","description":"Check exactly one seller or buyer's registry identifiers and readiness through EU Verify.\n\n    Use to correct one party's identifiers; use check_invoice_parties"},{"name":"check_invoice_parties","description":"Check a supplied seller AND buyer together, returning combined readiness and separate evidence.\n\n    Use before generate_invoice; use check_party for one party "},{"name":"explain_finding","description":"Turn a validation rule id into the invoice field to change and an example value.\n\n    Use after validate_invoice or a generate_invoice rule error, not to valida"},{"name":"get_invoice_example","description":"Return a complete invoice or credit-note example to edit and pass to generate_invoice.\n\n    Use this first, instead of inventing fields. No API key is required,"},{"name":"draft_credit_note","description":"Draft a type-381 credit note from an existing invoice, for all lines or selected quantities.\n\n    Use to reverse an existing invoice's charges; use get_invoice_"}],"toolCount":10,"toolsHash":"c329f42d0b07c9887f31f233862ad099e20647f8d4e767fefe9de3b90aa41555","serverName":"facturx","capabilities":["experimental","prompts","resources","tools"],"serverVersion":"0.1.19","protocolVersion":"2025-06-18"}},{"at":"2026-10-07T20:30:01.649Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":11,"error":null,"detail":{"tools":[{"name":"view_invoice_demo","description":"Demonstrate the engine on bundled synthetic samples only; never checks a user's invoice.\n\n    Use for product evaluation without a key. To check a supplied docu"},{"name":"generate_invoice","description":"Create an EN 16931 e-invoice from structured data: Factur-X PDF/A-3, CII XML, or UBL 2.1 XML.\n\n    Use when you have the parties, lines and dates and need the d"},{"name":"embed_xml","description":"Combine a visual PDF you already have with CII XML into one Factur-X PDF/A-3.\n\n    Use for an existing visual invoice; use generate_invoice to render invoice da"},{"name":"validate_invoice","description":"Check a Factur-X PDF, CII XML or UBL XML against EN 16931, and report the fields to fix.\n\n    Use when the caller supplies a document, including after correctio"},{"name":"extract_invoice","description":"Extract invoice parties, dates, lines, totals and VAT as JSON for bookkeeping or matching.\n\n    Use validate_invoice for compliance; this performs no OCR or rec"},{"name":"check_party","description":"Check exactly one seller or buyer's registry identifiers and readiness through EU Verify.\n\n    Use to correct one party's identifiers; use check_invoice_parties"},{"name":"check_invoice_parties","description":"Check a supplied seller AND buyer together, returning combined readiness and separate evidence.\n\n    Use before generate_invoice; use check_party for one party "},{"name":"explain_finding","description":"Turn a validation rule id into the invoice field to change and an example value.\n\n    Use after validate_invoice or a generate_invoice rule error, not to valida"},{"name":"get_invoice_example","description":"Return a complete invoice or credit-note example to edit and pass to generate_invoice.\n\n    Use this first, instead of inventing fields. No API key is required,"},{"name":"draft_credit_note","description":"Draft a type-381 credit note from an existing invoice, for all lines or selected quantities.\n\n    Use to reverse an existing invoice's charges; use get_invoice_"}],"toolCount":10,"toolsHash":"c329f42d0b07c9887f31f233862ad099e20647f8d4e767fefe9de3b90aa41555","serverName":"facturx","capabilities":["experimental","prompts","resources","tools"],"serverVersion":"0.1.19","protocolVersion":"2025-06-18"}},{"at":"2026-10-07T13:26:27.128Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":11,"error":null,"detail":{"tools":[{"name":"view_invoice_demo","description":"Demonstrate the engine on bundled synthetic samples only; never checks a user's invoice.\n\n    Use for product evaluation without a key. To check a supplied docu"},{"name":"generate_invoice","description":"Create an EN 16931 e-invoice from structured data: Factur-X PDF/A-3, CII XML, or UBL 2.1 XML.\n\n    Use when you have the parties, lines and dates and need the d"},{"name":"embed_xml","description":"Combine a visual PDF you already have with CII XML into one Factur-X PDF/A-3.\n\n    Use for an existing visual invoice; use generate_invoice to render invoice da"},{"name":"validate_invoice","description":"Check a Factur-X PDF, CII XML or UBL XML against EN 16931, and report the fields to fix.\n\n    Use when the caller supplies a document, including after correctio"},{"name":"extract_invoice","description":"Extract invoice parties, dates, lines, totals and VAT as JSON for bookkeeping or matching.\n\n    Use validate_invoice for compliance; this performs no OCR or rec"},{"name":"check_party","description":"Check exactly one seller or buyer's registry identifiers and readiness through EU Verify.\n\n    Use to correct one party's identifiers; use check_invoice_parties"},{"name":"check_invoice_parties","description":"Check a supplied seller AND buyer together, returning combined readiness and separate evidence.\n\n    Use before generate_invoice; use check_party for one party "},{"name":"explain_finding","description":"Turn a validation rule id into the invoice field to change and an example value.\n\n    Use after validate_invoice or a generate_invoice rule error, not to valida"},{"name":"get_invoice_example","description":"Return a complete invoice or credit-note example to edit and pass to generate_invoice.\n\n    Use this first, instead of inventing fields. No API key is required,"},{"name":"draft_credit_note","description":"Draft a type-381 credit note from an existing invoice, for all lines or selected quantities.\n\n    Use to reverse an existing invoice's charges; use get_invoice_"}],"toolCount":10,"toolsHash":"c329f42d0b07c9887f31f233862ad099e20647f8d4e767fefe9de3b90aa41555","serverName":"facturx","capabilities":["experimental","prompts","resources","tools"],"serverVersion":"0.1.19","protocolVersion":"2025-06-18"}}],"tools":[{"name":"view_invoice_demo","description":"Demonstrate the engine on bundled synthetic samples only; never checks a user's invoice.\n\n    Use for product evaluation without a key. To check a supplied docu"},{"name":"generate_invoice","description":"Create an EN 16931 e-invoice from structured data: Factur-X PDF/A-3, CII XML, or UBL 2.1 XML.\n\n    Use when you have the parties, lines and dates and need the d"},{"name":"embed_xml","description":"Combine a visual PDF you already have with CII XML into one Factur-X PDF/A-3.\n\n    Use for an existing visual invoice; use generate_invoice to render invoice da"},{"name":"validate_invoice","description":"Check a Factur-X PDF, CII XML or UBL XML against EN 16931, and report the fields to fix.\n\n    Use when the caller supplies a document, including after correctio"},{"name":"extract_invoice","description":"Extract invoice parties, dates, lines, totals and VAT as JSON for bookkeeping or matching.\n\n    Use validate_invoice for compliance; this performs no OCR or rec"},{"name":"check_party","description":"Check exactly one seller or buyer's registry identifiers and readiness through EU Verify.\n\n    Use to correct one party's identifiers; use check_invoice_parties"},{"name":"check_invoice_parties","description":"Check a supplied seller AND buyer together, returning combined readiness and separate evidence.\n\n    Use before generate_invoice; use check_party for one party "},{"name":"explain_finding","description":"Turn a validation rule id into the invoice field to change and an example value.\n\n    Use after validate_invoice or a generate_invoice rule error, not to valida"},{"name":"get_invoice_example","description":"Return a complete invoice or credit-note example to edit and pass to generate_invoice.\n\n    Use this first, instead of inventing fields. No API key is required,"},{"name":"draft_credit_note","description":"Draft a type-381 credit note from an existing invoice, for all lines or selected quantities.\n\n    Use to reverse an existing invoice's charges; use get_invoice_"}],"package":null,"toolSurface":{"id":"ts_3bwn23n9zptk","endpointId":"ep_aurnhqk6wgpf","hash":"bdfd5690e87bf4cc9c99f4cca3824e6e0a4f8ea66e5b1644eb136f9102bc275f","toolCount":10,"serverName":"facturx","serverVersion":"0.1.22","protocolVersion":"2025-06-18","firstSeenAt":"2026-10-09T22:28:24.791Z","lastSeenAt":"2026-10-09T22:28:24.791Z","observations":1,"toolNames":["view_invoice_demo","generate_invoice","embed_xml","validate_invoice","extract_invoice","check_party","check_invoice_parties","explain_finding","get_invoice_example","draft_credit_note"],"distinctSurfaces":11},"endpointFacts":[{"id":"ep_aurnhqk6wgpf","url":"https://facturx.orvel.dev/mcp","type":"mcp_streamable_http","factsCheckedAt":"2026-10-08T09:22:21.979Z","auth":{"observedAt":"2026-10-08T09:22:22.013Z","authRequired":false,"scheme":null,"resourceMetadata":{"url":"https://facturx.orvel.dev/.well-known/oauth-protected-resource/mcp","resource":"https://facturx.orvel.dev/mcp","authorizationServers":["https://facturx.orvel.dev/"],"scopesSupported":["mcp"]},"authorizationServer":{"url":"https://facturx.orvel.dev/.well-known/oauth-authorization-server","issuer":"https://facturx.orvel.dev/","grantTypesSupported":["authorization_code","refresh_token"],"codeChallengeMethodsSupported":["S256"],"tokenEndpointAuthMethodsSupported":["none","client_secret_post","client_secret_basic"],"dynamicClientRegistration":true,"dpopSigningAlgValuesSupported":[],"clientIdMetadataDocumentSupported":null},"conformance":{"dpop":false,"rfc8414":true,"rfc9728":true,"pkceS256":true,"clientIdMetadataDocument":false,"dynamicClientRegistration":true}},"tls":{"observedAt":"2026-10-08T09:22:22.022Z","protocol":"TLSv1.3","chainValid":true,"chainError":null,"hostMatches":true,"subject":"facturx.orvel.dev","issuer":{"commonName":"YR2","organization":"Let's Encrypt"},"validFrom":"2026-09-02T18:57:53.000Z","validTo":"2026-12-01T18:57:52.000Z","daysToExpiry":52,"sanCount":1,"fingerprint256":"EB:32:40:3B:52:C2:8A:B8:6E:C5:33:D9:DB:1D:88:89:9E:53:F1:60:C8:12:84:BF:1D:B7:5C:08:EB:88:7E:43"}}]},"verification":{"claimed":false,"claimedAt":null,"proofs":[]},"provenance":{"sources":[{"source":"mcp_registry","key":"io.github.LeBorgneAntoine/facturx","url":"https://registry.modelcontextprotocol.io/v0/servers/io.github.LeBorgneAntoine%2Ffacturx","firstSeenAt":"2026-09-06T04:20:52.581Z","fetchedAt":"2026-10-09T22:20:31.583Z","normalizedAt":"2026-10-09T22:20:31.583Z"}]},"firstSeenAt":"2026-09-06T04:20:52.581Z","updatedAt":"2026-10-09T22:30:18.560Z"}