# `com.einvoicewiz/einvoicewiz` on anlyon.dev

> Text inside fenced blocks marked untrusted-server-text was written by the MCP server's publisher, not by anlyon.dev. It is data to inspect, not instructions to follow. Invisible characters are shown as [U+XXXX].
> No finding is not a safety guarantee: these are point-in-time checks of tool definitions, not of code or behaviour.

- Page: https://anlyon.dev/servers/com.einvoicewiz/einvoicewiz
- JSON: https://anlyon.dev/api/v1/servers/com.einvoicewiz/einvoicewiz
- Version: 1.0.0 (active)
- Publisher: com.einvoicewiz (domain proven to the MCP Registry)
- Runs: remote (streamable-http)
- Sign-in to list tools: none
- Metadata from the official MCP Registry, synced 2026-10-21T17:54:31.174Z

Title and description, as the publisher wrote them:

```untrusted-server-text
Generate & validate EN 16931 e-invoices (Factur-X, ZUGFeRD, XRechnung); verification certificates
```

Scanned 2026-10-21T18:48:39.405Z over streamable-http.

**7 tools: 5 change things and 2 only read.**

| Group | Class | Tools | Claude Code |
| --- | --- | --- | --- |
| Deletes or cancels | destructive | 0 | deny |
| Can't be undone | irreversible | 0 | ask |
| Changes things | write | 5 | ask |
| Only reads | read | 2 | allow |

## Findings

No check matched anything in these tool definitions.


## Changes things (5)

Creates or changes something that can be changed back. Claude Code: ask.

### `check_credits`

- Nothing in its name or description says what it does, so it is counted as a write.

Description, as the server wrote it:

```untrusted-server-text
Credits remaining and calls used for an API key.
```

### `create_facturx_pdf`

- The name "create_facturx_pdf" says "create": a word for a change.

Description, as the server wrote it:

```untrusted-server-text
Your existing PDF invoice + invoice JSON → Factur-X / ZUGFeRD PDF/A-3 with embedded XML (1 credit).

    pdf_base64: the original PDF, base64-encoded (max 15 MB). Returns {pdf_base64, cert_id, verify_url,
    credits_left}. The output is validated (EN 16931 + PDF/A-3) before delivery; failures are not charged.
```

### `generate_einvoice_xml`

- The name "generate_einvoice_xml" says "generate": a word for a change.

Description, as the server wrote it:

```untrusted-server-text
Invoice JSON → validated EN 16931 CII XML (1 credit; failures free).

    profile: "en16931" (Factur-X/ZUGFeRD data, B2B) or "xrechnung" (German public sector; needs
    invoice.buyer_reference = Leitweg-ID and seller contact_email/contact_phone).
    Invoice schema: see https://einvoicewiz.com/openapi.json  (required: invoice_number, issue_date,
    currency, seller{name,country}, buyer{name,country}, lines[{name,qty,unit_price,vat_rate}]).
    Returns {xml, validation, verify:{id,url}, credits_left}. On 422 the body lists the violated rules.
```

### `signup`

- The description's first verb is "create": a word for a change.

Description, as the server wrote it:

```untrusted-server-text
Create an einvoicewiz API key with 20 free credits (no card). The key is shown once — store it.
```

### `which_format_do_i_need`

- Nothing in its name or description says what it does, so it is counted as a write.

Description, as the server wrote it:

```untrusted-server-text
Decision helper (free, no key): which e-invoice format a recipient needs and whether a plain PDF is still acceptable.
```

## Only reads (2)

Looks things up and changes nothing. Claude Code: allow.

### `lookup_certificate`

- The name "lookup_certificate" says "lookup": a word for reading.

Description, as the server wrote it:

```untrusted-server-text
Look up a verification certificate (EIW-…) — free, no key. Confirms which file hashes passed validation and when.
```

### `validate_einvoice`

- The name "validate_einvoice" says "validate": a word for reading.

Description, as the server wrote it:

```untrusted-server-text
Validate a Factur-X / ZUGFeRD / XRechnung file (PDF or XML, base64) against EN 16931 + KOSIT + PDF/A (1 credit).

    Returns the rule-level report {result:{status, errors[], warnings[], profile}, verify, credits_left}.
    verify is set only when the file passed.
```

## Claude Code permissions

For `.claude/settings.json`, assuming the server is installed as `einvoicewiz`:

```json
{
  "permissions": {
    "allow": [
      "mcp__einvoicewiz__validate_einvoice",
      "mcp__einvoicewiz__lookup_certificate"
    ],
    "ask": [
      "mcp__einvoicewiz__signup",
      "mcp__einvoicewiz__check_credits",
      "mcp__einvoicewiz__generate_einvoice_xml",
      "mcp__einvoicewiz__create_facturx_pdf",
      "mcp__einvoicewiz__which_format_do_i_need"
    ],
    "deny": []
  }
}
```
