Skip to main content

mcp-invoicenow-sg 🇸🇬

English

PyPI version Python License


Introduction

mcp-invoicenow-sg is an MCP (Model Context Protocol) server for Singapore electronic invoicing over InvoiceNow, the national e-invoicing platform operated by IMDA. It builds and validates PINT-SG v1.4.1 and SG Peppol BIS Billing 3.0 sent invoices (originally-issued invoices, not the received/purchase side). It is part of the mcp-einvoicing-* family of country-specific servers, all built on mcp-einvoicing-core, which provides the shared validation engine, EN 16931 abstractions, and Peppol network utilities.


Supported standards

  • PINT-SG v1.4.1 (urn:peppol:pint:billing-1@sg-1) — the recommended profile for new senders.
  • SG Peppol BIS Billing 3.0 — legacy profile, predates the PINT programme.
  • Both are EN 16931-conformant; the invoice model extends mcp_einvoicing_core.en16931.EN16931Invoice.
  • Validation runs the real PINT-SG Schematron (base + jurisdiction rulesets) plus IRAS's own C5 acceptance layer — a document can be PINT-SG-conformant and still be rejected by IRAS (e.g. a missing buyer/seller UEN), and both outcomes are reported.

Not yet supported (see specs/README.md and this monorepo's context-library/countries/sg.md for full detail):

  • The Peppol Ordering message family (Order, OrderResponse, etc.) and IMDA's SG-specific Order Balance.
  • Submission to an IMDA-accredited Access Point — no publicly available document states an Access Point's actual API base URL or authentication flow; this package builds and validates documents, it does not transmit them.
  • SG Peppol BIS Billing 3.0 Schematron validation — only PINT-SG's rule sets are bundled.
  • The received/purchase-side invoice model (LocalTaxInvoice, TX2_Annex Annex B Type 1B).

Installation

Requirements

  • Python ≥ 3.11
  • mcp-einvoicing-core (installed automatically as a dependency)
  • Optional: the xslt2 extra (pip install mcp-invoicenow-sg[xslt2]) — required for validate_invoice_sg to run. The bundled PINT-SG and IRAS C5 stylesheets require XSLT 2.0.

Using uvx (recommended)

uvx mcp-invoicenow-sg

Using uv

uv add mcp-invoicenow-sg

From source

git clone https://github.com/cmendezs/mcp-invoicenow-sg.git
cd mcp-invoicenow-sg
uv sync --all-extras

Configuration

Add the server to your MCP client configuration:

{
  "mcpServers": {
    "invoicenow-sg": {
      "command": "uvx",
      "args": ["mcp-invoicenow-sg"]
    }
  }
}

Environment variables

Variable Required Default Description
LOG_LEVEL No INFO Logging level: DEBUG, INFO, WARNING, or ERROR

Tools

Tool Description
generate_invoice_sg Build an SGInvoice from structured data and serialize it to UBL 2.1 XML.
validate_invoice_sg Validate a UBL 2.1 invoice against PINT-SG's Schematron rulesets plus IRAS's C5 acceptance layer.
get_gst_category_codes_sg Return the IRAS GST category codes (Annex E) accepted on Singapore invoices.
get_profile_urn_sg Return the CustomizationID (BT-24) and ProfileID (BT-23) for a given profile (PINT_SG or BIS3).

Recommended workflow: get_profile_urn_sg to pick the profile pair, then generate_invoice_sg with that pair in the invoice data, then validate_invoice_sg on the result.

The tool reference in docs/TOOLS.md is generated from the running server:

uv run python scripts/gen_tool_reference.py

Contributing

See CONTRIBUTING.md for development setup, the test and lint commands, and the pull request checklist. Security issues follow the private disclosure process in SECURITY.md.


Other e-invoicing MCP servers

Country Server
🌍 Global mcp-einvoicing-core
🇧🇪 Belgium mcp-einvoicing-be
🇧🇷 Brazil mcp-nfe-br
🇫🇷 France mcp-facture-electronique-fr
🇩🇪 Germany mcp-einvoicing-de
🇮🇹 Italy mcp-fattura-elettronica-it
🇵🇱 Poland mcp-ksef-pl
🇸🇬 Singapore mcp-invoicenow-sg
🇪🇸 Spain mcp-facturacion-electronica-es
🇦🇪 United Arab Emirates mcp-einvoicing-ae

License

This project is licensed under the Apache 2.0 license — see LICENSE for details.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mcp_invoicenow_sg-0.2.0.tar.gz (8.6 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mcp_invoicenow_sg-0.2.0-py3-none-any.whl (34.8 kB view details)

Uploaded Python 3

File details

Details for the file mcp_invoicenow_sg-0.2.0.tar.gz.

File metadata

  • Download URL: mcp_invoicenow_sg-0.2.0.tar.gz
  • Upload date:
  • Size: 8.6 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for mcp_invoicenow_sg-0.2.0.tar.gz
Algorithm Hash digest
SHA256 902e49ed9ab9a5b6c68737689ba8f61a60fe082bf4a48c4f0e66b899af85affd
MD5 d102e97e9f638af5d99d3ca378179a8c
BLAKE2b-256 ae78d1501291a5fe535e4a3481274272443cd6488755a9b23c3dfb7e51d8b6a6

See more details on using hashes here.

Provenance

The following attestation bundles were made for mcp_invoicenow_sg-0.2.0.tar.gz:

Publisher: publish.yml on cmendezs/mcp-invoicenow-sg

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mcp_invoicenow_sg-0.2.0-py3-none-any.whl.

File metadata

File hashes

Hashes for mcp_invoicenow_sg-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 8f6e9347fe6ebc0b4996077a1b1c76b5889beb1aa44db8143635def4c895e81e
MD5 909e43f4f94eb24ccb59a17fd5c17ecf
BLAKE2b-256 78393afebfad505f760fb218ae92eae7684208a20a9e6dcec05ff7a999081082

See more details on using hashes here.

Provenance

The following attestation bundles were made for mcp_invoicenow_sg-0.2.0-py3-none-any.whl:

Publisher: publish.yml on cmendezs/mcp-invoicenow-sg

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

0.3.0

2 files

This release

0.2.0 This release

2 files

0.1.0

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page