🇲🇾 Malaysia Invoice MCP live

AI agents can now submit, query and cancel a Malaysia e-invoice through LHDN MyInvois (e-Invois). This remote MCP server forwards your already-signed UBL 2.1 document to the government MyInvois gateway — submit_invoice to lodge it, query_submission to poll validation, cancel_invoice within the 72-hour window, and build_invoice_draft to compute SST totals locally. It only wraps the submission calls: XAdES signing stays merchant-side.

Connect

{
  "mcpServers": {
    "malaysia-invoice": {
      "type": "http",
      "url": "https://inv-my.wishpool.app/mcp",
      "headers": {
        "x-myinvois-client-id": "your-erp-client-id",
        "x-myinvois-client-secret": "your-erp-client-secret",
        "x-myinvois-mode": "prod"
      }
    }
  }
}

Get your ERP OAuth2 client_id + client_secret by self-registering your ERP in the MyTax portal (Register ERP) at mytax.hasil.gov.my (preprod: preprod-mytax.hasil.gov.my). Omit x-myinvois-mode to stay in the sandbox preprod environment (no fiscal effect); prod = production. Your certificate and private key never leave your side — this server never sees them.

How it works

Why it is safe

Weak-model friendly

Credentials taken from headers (never in the body); status enums (in progress / valid / partially valid / invalid) spelled out in every tool description; MyInvois responses passed through with numbered next_steps; every error teaches the fix (both credential headers, base64 not raw XML/JSON, submissionUid vs uuid, 72h cancel window, mode).

Sister servers

Invoices: Saudi ZATCA inv-sa · Poland KSeF inv-pl · Mexico CFDI 4.0 inv-mx · Chile DTE inv-cl · Brazil NF-e inv-br · Peru CPE inv-pe · India GST inv-in. Local payments in 81 countries, one family, same stateless pattern: mcp.wishpool.app (Taiwan e-invoice 電子發票 included).