Skip to content
invowerk logo

invowerk MCP server

Which MCP servers are invowerk's own, from the official registry and from asking its own domain, whether they answer, and what they offer. A program checked each of these, nobody copied them from a product page.

read 2026-10-26

← Back to invowerk

Whose server it is
  • Registry namedev.invowerk/xrechnung-e-invoice-validatorverified in the MCP registry

The registry name sits under invowerk.dev. The registry only lets a publisher use that namespace after proving control of the domain through DNS or HTTP.

When we asked itchecked 2026-10-26
  • Stateanswerschecked 2026-10-26
  • Tools6
  • Server calls itselfinvowerk
  • Server version1
  • Protocol version2025-06-18

On 2026-10-26 the server answered initialize and tools/list without a sign-in. First answer in 504 ms.

Should an agent connect itNot proven either way yet
  • Its tools do every use case we checked: check received e-invoices before accepting them; read e-invoices as readable invoices in a viewer.
  • Checked on 1 of the 7 days it takes to judge reliability.

Once connected

  • For "check received e-invoices before accepting them", the likely first call is validate_invoice.
  • For "read e-invoices as readable invoices in a viewer", the likely first call is render_invoice.

Said by rules from the measurements above. The likely first call is a model's pick from the tool list; read its description before relying on it.

Measured dailydaily checks: 1, the first on 2026-10-26
  • INITE MCP scoreafter a weeka score needs 7 daily checks: 1 so far
  • What an agent can do with it2 of 2 use cases
  • Answeredmeasuring1 of the 7 daily checks it takes to print a share
  • Median first answer507 ms
  • Space in an agent's context≈ 2,436 tokensthe definitions of all its tools (6), which an agent carries on every turn
  • Tool definitionsA · 100 of 100
  • Typed results6 of 6 toolsdeclared outputSchema: results come typed, read once
  • Every tool passes all six checks.

What an agent can do with it

  • not sure · create ZUGFeRD PDF or XRechnung invoices in a form
  • can do · check received e-invoices before accepting them
  • can do · read e-invoices as readable invoices in a viewer

Each of the product's use cases, put to Jev against this server's tool list: can an agent do it with these tools?

Worth a look

None of the five warning signs in these definitions.

A program checks the server once a day: initialize and tools/list, no model. Tokens are the definitions' length at about four characters a token. The grade averages six checks of every tool's name, description, schema and annotations; it says how well the tools are described, not whether they work. The score weighs what was measured and nothing else: answering (25%), doing the product's job (25%), definitions (20%), context (10%), use (10%) and how readily a client connects (10%). A part that was not measured is left out, and a hidden instruction caps the score at 40. The state of vendors' MCP servers: method and numbers →

Tools it offers6 tools · read 2026-10-26
  • validate_invoice

    Check an e-invoice against EN 16931 and German rules. Input: `invoice_base64` is the base64 of an XML invoice (UBL or CII) or a ZUGFeRD / Factur-X PDF, at most 4 MB decoded; or pass the file as a download link in `file`. `explain=true`…

  • render_invoice

    Render an XML e-invoice (UBL or CII, e.g. XRechnung) as a readable HTML page. invowerk uses the KoSIT XRechnung visualization. Use it to show a person what an e-invoice contains. Input: `invoice_base64` is the base64 of the XML, at most 4…

  • explain_errors

    Explain rule codes in plain language. Works without an API key. Covers the codes of `validate_invoice` findings and hints: EN 16931, XRechnung, ZUGFeRD and invowerk's own hint codes (IW-*). Input: `codes` is a list of one or more codes…

  • generate_invoice

    Create a valid EN 16931 e-invoice (UBL or CII XML) from JSON. Input: `invoice` is a JSON object keyed on EN 16931 Business Terms, the same schema as `POST /v1/generate`, at most 4 MB. Main fields: `syntax` ("ubl" default, or "cii")…

  • parse_invoice

    Read an existing e-invoice into JSON keyed on EN 16931 Business Terms. The JSON is the input format of `generate_invoice`, so you can edit it and create the invoice again. Input: `invoice_base64` is the base64 of an XML invoice (UBL or…

  • convert_invoice

    Convert an e-invoice to UBL or CII. The result is checked before it is returned. Input: `invoice_base64` is the base64 of an XML invoice or a ZUGFeRD / Factur-X PDF, at most 4 MB decoded; or pass the file as a download link in `file`…

How to connect

Add the server to your MCP client config. Claude Desktop, Cursor and most other clients read this shape:

{
  "mcpServers": {
    "xrechnung-e-invoice-validator": {
      "type": "http",
      "url": "https://api.invowerk.dev/mcp/"
    }
  }
}

Add it

Claude Code, in a terminal

claude mcp add --transport http invowerk https://api.invowerk.dev/mcp/

Add to CursorAdd to VS Code

claude.ai, ChatGPT and other clients: add https://api.invowerk.dev/mcp/ as a custom connector in the settings.

OpenAPI spec

7 paths, read 2026-10-26. Open the spec ↗

Each line is something a program found when it went looking: the registry entry, the server's own answer, a spec that parses. A missing line means we did not find it, not that it does not exist.