Koskamo

Factur-X MCP MCP server

An official MCP server by Orvel that allows AI assistants to generate Factur-X PDF/A-3, CII XML, and UBL 2.1 invoices, validate them against EN 16931 rules, and extract invoice data. It supports stateless workflows, full/partial credits, and integrates with major clients like Cursor, VS Code, and Claude Code via OAuth or API keys.

Endpoint and access

No sign-in: your client connects and lists tools immediately, with no account or key.

No sign-inEndpoint checked 2026-10-05Operated by Orvel
MCP endpoint (Streamable HTTP)
https://facturx.orvel.dev/mcp
Vendor documentation

What you can do with it

  • Generate Factur-X PDF/A-3, CII XML, and UBL 2.1 invoices
  • Validate invoices against EN 16931 compliance rules
  • Extract invoice data from AI assistant prompts
  • Process full and partial credits for existing invoices
Tools advertised by the last live check:
  • view_invoice_demo
  • generate_invoice
  • embed_xml
  • validate_invoice
  • extract_invoice
  • check_party
  • check_invoice_parties
  • explain_finding
  • get_invoice_example
  • draft_credit_note

Connect from your client

Each snippet registers the same endpoint; pick the client you use.

This server is operated by the named third party. Listing and endpoint checks are not an endorsement or a security audit. Review the operator's permissions, terms, and data handling before connecting. How listings are checked and corrected.

Claude Code

Run this once in a terminal. It registers a Streamable HTTP server. Use --scope project to write .mcp.json for the repo.
Claude Code configuration
claude mcp add --transport http factur-x-mcp https://facturx.orvel.dev/mcp

Codex

Run this once. Codex stores MCP servers in ~/.codex/config.toml (or .codex/config.toml in a trusted project).
Codex configuration
codex mcp add factur-x-mcp --url https://facturx.orvel.dev/mcp

Cursor

Merge this server into .cursor/mcp.json in your project, then enable factur-x-mcp in your MCP settings.
Cursor configuration
{
  "mcpServers": {
    "factur-x-mcp": {
      "url": "https://facturx.orvel.dev/mcp"
    }
  }
}

Cline

Merge this into cline_mcp_settings.json (Cline → MCP Servers → Configure). The type must be streamableHttp for a remote HTTP server.
Cline configuration
{
  "mcpServers": {
    "factur-x-mcp": {
      "type": "streamableHttp",
      "url": "https://facturx.orvel.dev/mcp",
      "disabled": false
    }
  }
}

VS Code

Merge this server into .vscode/mcp.json. Use MCP: List Servers to start factur-x-mcp and inspect its tools.
VS Code configuration
{
  "servers": {
    "factur-x-mcp": {
      "type": "http",
      "url": "https://facturx.orvel.dev/mcp"
    }
  }
}

Gemini CLI

Run this once. It writes .gemini/settings.json in the current project; pass --scope user for ~/.gemini/settings.json.
Gemini CLI configuration
gemini mcp add --transport http factur-x-mcp https://facturx.orvel.dev/mcp

Claude Desktop

Merge this into claude_desktop_config.json (macOS: ~/Library/Application Support/Claude/, Windows: %APPDATA%\Claude\), then restart Claude Desktop.
Claude Desktop configuration
{
  "mcpServers": {
    "factur-x-mcp": {
      "url": "https://facturx.orvel.dev/mcp"
    }
  }
}

Windsurf

Merge this into ~/.codeium/windsurf/mcp_config.json, then refresh MCP in Cascade. Windsurf remote servers use serverUrl, not url.
Windsurf configuration
{
  "mcpServers": {
    "factur-x-mcp": {
      "serverUrl": "https://facturx.orvel.dev/mcp"
    }
  }
}

Do you run Factur-X MCP?

Prove ownership with a DNS record, a well-known file, or your Official MCP Registry entry, and your edits publish immediately. Proofs are re-checked weekly; admins can still hide or remove a listing.

Claim this listing