mcp-einvoicing-be
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| LOG_LEVEL | No | Logging level: DEBUG, INFO, WARNING, ERROR | INFO |
| PEPPOL_ENV | No | Peppol environment: production or test | production |
| BCE_API_KEY | No | API key for the Belgian BCE/KBO enterprise database | |
| PEPPOL_SML_URL | No | Override the SML lookup URL |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| logging | {} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| extensions | {
"io.modelcontextprotocol/ui": {}
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| validate_invoice_beA | Validate a UBL 2.1 XML invoice against Belgian business rules. Applies EN 16931 syntax and semantic checks plus the selected Belgian profile overlay (Peppol BIS Billing 3.0, PINT-BE, or Mercurius). Returns a structured result with per-rule error and warning messages. |
| validate_pint_beA | Validate an invoice against PINT-BE rules published by the National Bank of Belgium. PINT-BE is the Belgian PINT (Peppol International) extension that adds country-specific mandatory elements on top of EN 16931. Rule IDs follow the PINT-BE-Rxxx naming convention from the NBB specification. Note: PINT-BE is not mandated by the Royal Decree of 8 July 2025; it is an optional enrichment for specific use cases. |
| generate_invoice_beA | Generate a valid UBL 2.1 Belgian e-invoice XML document from structured data. Applies the correct customizationID and profileID for the selected Belgian Peppol profile. The output XML is ready for submission to the Peppol network or the Mercurius platform. Returns a dict with:
|
| transform_to_ublA | Convert a structured JSON invoice payload to UBL 2.1 XML. Unlike Returns a dict with:
|
| lookup_vat_beA | Look up a Belgian enterprise number against the BCE/KBO public database. Accepts the number with or without the 'BE' prefix and with or without dots/spaces. Returns the enterprise's legal name, registered address, legal form, status, and NACE activity codes. Optionally set the |
| check_peppol_participant_beA | Check whether a Belgian company is registered as a Peppol participant. Queries the Peppol BDMSL network using the standard DNS-over-HTTPS U-NAPTR lookup followed by an SMP service-group request, as required by the Peppol Policy for Use of Identifiers. If a plain VAT number is provided it is converted to the Belgian Peppol scheme (ICD 0208 = KBO/BCE). BE-LC-1 (resolved): uses PeppolSMPClient from mcp-einvoicing-core, replacing the previous hand-rolled HTTP client which called a non-standard SMP endpoint and did not implement DNS-based SMP discovery. Returns registration status, supported document type identifiers, and the SMP hostname resolved during the lookup. |
| get_invoice_types_beA | Return the supported Belgian e-invoice document types. Includes invoice (380), credit note (381), and debit note (383) with their
UBL |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/cmendezs/mcp-einvoicing-be'
If you have feedback or need assistance with the MCP directory API, please join our Discord server