Skip to main content
Glama
cmendezs

mcp-einvoicing-be

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
LOG_LEVELNoLogging level: DEBUG, INFO, WARNING, ERRORINFO
PEPPOL_ENVNoPeppol environment: production or testproduction
BCE_API_KEYNoAPI key for the Belgian BCE/KBO enterprise database
PEPPOL_SML_URLNoOverride the SML lookup URL

Capabilities

Features and capabilities supported by this server

CapabilityDetails
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

NameDescription
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 (NBB).

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.

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:

  • xml: the generated UBL 2.1 XML string

  • customization_id: the UBL customizationID applied (BT-24)

  • profile_id: the UBL profileID applied (BT-23)

transform_to_ublA

Convert a structured JSON invoice payload to UBL 2.1 XML.

Unlike generate_invoice_be, this tool does not run validation after transformation. Intended as a conversion step when the caller will validate separately or submit directly to a platform that performs its own validation.

Returns a dict with:

  • xml: the generated UBL 2.1 XML string

  • warnings: list of non-fatal issues detected during transformation

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 BCE_API_KEY environment variable for authenticated access to the full BCE dataset.

check_peppol_participant_beA

Check whether a Belgian company is registered as a Peppol participant.

Queries the Peppol SMP/SML network. If a plain VAT number is provided it is converted to the Belgian Peppol scheme (ICD 0208 for KBO/BCE numbers).

Returns registration status, supported document type identifiers, and the SMP access point endpoint URL.

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 customizationID and profileID values for each supported profile (Peppol BIS Billing 3.0 and PINT-BE).

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

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