electronic-invoice.app

MCP server documentation

Validate, create, convert and extract e-invoices from Claude, ChatGPT and other MCP clients

The remote MCP server connects an AI assistant to the Electronic Invoice API. You sign in once with your own API key; after that the assistant can validate XRechnung and ZUGFeRD invoices, create them from your data, convert and export them. This page covers setup, tools, supported formats and troubleshooting.

Server

URLhttps://mcp.electronic-invoice.app/mcp (Streamable HTTP)
MCP RegistryListed in the official MCP Registry as app.electronic-invoice/mcp
Sign-inOAuth 2.1, or Authorization: Bearer with your API key for direct clients
Without sign-inService status and limits tools
ForBusinesses only (B2B)

Sign-in and API key

The MCP server has no accounts of its own. You create an API key in the console. When the assistant first uses a protected tool, it opens a sign-in page on mcp.electronic-invoice.app, where you enter that key. For the duration of the connection the key is stored only AES-GCM encrypted. It is deleted when you revoke the connection or when it expires.

Clients that do not support OAuth can send the key directly as Authorization: Bearer eia_live_.... The tools for service status and limits work without any sign-in.

Set up

Menu names change between versions; if a label differs, look for the equivalent entry.

Claude

  1. Open Settings or Customize, then Connectors.
  2. Choose Add custom connector and enter https://mcp.electronic-invoice.app/mcp.
  3. In a chat, ask for something that needs an invoice tool. On first use of a protected tool, Claude asks you to connect; sign in with your API key.

ChatGPT

At the moment this works through developer mode: in Settings, Apps, create an app with the server URL and choose OAuth as the authentication. The exact steps depend on your plan and workspace settings.

Other clients

Any client that supports remote MCP servers over Streamable HTTP can use the URL. Choose OAuth if offered, or set the bearer header with your API key.

Tools

ToolWhat it does
validate_invoiceChecks an e-invoice (XML or PDF) and returns the verdict and findings with rule ID
generate_invoiceCreates an XRechnung (UBL or CII) or a ZUGFeRD/Factur-X PDF from invoice data as JSON
convert_invoiceConverts UBL to CII, CII to UBL, or XML to PDF
extract_invoiceReads invoice data as JSON, CSV or a DATEV export
open_invoice_checkOpens an upload field in the chat, for clients that cannot pass files to the tool (for example Claude)
get_service_statusService status and rule set versions, no sign-in needed
get_usage_limitsTechnical limits (rate, size, billable status codes), no sign-in needed

Supported formats for validation

The MCP server checks the same formats as the API: XRechnung, EN 16931, Peppol BIS, NLCIUS, CIUS-RO, French CIUS rules, ZUGFeRD/Factur-X, and Italy and Poland against the schema only. The table with the scope of the check per format is on the API page. Creating invoices is limited to XRechnung and ZUGFeRD/Factur-X. The server does not send invoices and has no Peppol access.

Example prompts

  • "Is this e-invoice valid?" with a PDF or XML file attached. In Claude the assistant opens the upload field.
  • "Create an XRechnung (CII) for Muster GmbH, 3 hours of consulting at EUR 120, 19 percent VAT, buyer reference 04011000-12345-34." Then check the data the assistant lists before you use the file.
  • "Convert this UBL invoice to CII."
  • "Export this invoice as a DATEV booking batch."
  • "Which rule is violated here, and what do I have to change in the XML?"
  • "Is the invoice service up, and what are the rate and size limits?"

Quota and costs

Each billable call counts against the quota of your plan, exactly like a direct API call. Plans and limits are listed on the API page. Opening the upload field is free; a check counts once you start it.

Troubleshooting

  • Sign-in loop: the key was rejected or is revoked. Create a new key in the console, remove the connector in the client and add it again. Enter the key on the sign-in page only, not in the connector settings.
  • 401 error: the key is missing, wrong or revoked. Reconnect with an active key; with a bearer header, check the header value.
  • 429 quota exceeded: the monthly quota of your plan is used up. Wait for the next period or change the plan. For a 429 with a wait time (rate limit), try again after the stated seconds.
  • File not passed: the client cannot hand the file to the tool. Ask the assistant to open the invoice check; it shows an upload field in the chat.
  • Result looks wrong: ask for the findings with rule IDs and compare them with the invoice. Findings are the output of the official rules, not a statement about your contract or tax position.

Still stuck? Write to us via the contact page.

Privacy and terms

Which data is processed, where and for how long is described in the privacy policy, section on the MCP server. The API terms apply. If you put an invoice in a chat, the provider of the assistant also sees it; its terms apply to that.

Note: checks and results are technical aids, not legal or tax advice.