revclamp-mcp 1.20.12 → 1.20.14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -59,13 +59,13 @@ curl -sS -X POST https://api.revclamp.com/api/mcp \
59
59
 
60
60
  ```bash
61
61
  # Run a <60s local CLI smoke check (verifies all 9 tool schemas & executes a local_engine.mjs sample audit with zero API key)
62
- npx -y github:lhphong09t2/revclamp-mcp#v1.20.12 --self-test
62
+ npx -y github:lhphong09t2/revclamp-mcp#v1.20.14 --self-test
63
63
 
64
64
  # Provision a free Cloud Workspace (or reuse REVCLAMP_API_KEY) & send a 6-digit login OTP
65
- npx -y revclamp-mcp@1.20.12 --init-workspace you@company.com
65
+ npx -y revclamp-mcp@1.20.14 --init-workspace you@company.com
66
66
 
67
67
  # Verify the 6-digit OTP using REVCLAMP_API_KEY from environment
68
- REVCLAMP_API_KEY="rg_live_..." npx -y revclamp-mcp@1.20.12 --verify-otp you@company.com 123456
68
+ REVCLAMP_API_KEY="rg_live_..." npx -y revclamp-mcp@1.20.14 --verify-otp you@company.com 123456
69
69
 
70
70
  # List all 9 MCP tools and JSON schemas (runs locally in-process)
71
71
  node index.mjs --list-tools
package/index.mjs CHANGED
@@ -33,7 +33,7 @@ export {
33
33
  executeLocalMcpJsonRpc,
34
34
  };
35
35
 
36
- export const PACKAGE_VERSION = "1.20.12";
36
+ export const PACKAGE_VERSION = "1.20.14";
37
37
  export const DEFAULT_MCP_ENDPOINT = "https://api.revclamp.com/api/mcp";
38
38
  export const ALLOWED_MCP_ORIGINS = Object.freeze(
39
39
  new Set([
package/local_engine.mjs CHANGED
@@ -237,6 +237,12 @@ export const EU_VIES_STATUTORY_TERMINOLOGY_MAP = Object.freeze({
237
237
  nativeTaxIdName: "Umsatzsteuer-Identifikationsnummer",
238
238
  directiveArticle: "Art. 196 & Art. 226(11a) Council Directive 2006/112/EC",
239
239
  directiveGoodsArticle: "Art. 138(1) & Art. 226(11) Council Directive 2006/112/EC",
240
+ en16931GoodsCategoryCode: "K",
241
+ en16931ServicesCategoryCode: "AE",
242
+ vatexGoodsCode: "VATEX-EU-IC",
243
+ vatexServicesCode: "VATEX-EU-AE",
244
+ eInvoicingMandateStandard:
245
+ "ebInterface 6.1 (B2G) / Peppol BIS Billing 3.0 (EN 16931 BT-118=K/AE, Art. 6 Abs. 1 & § 19 UStG)",
240
246
  statutoryReverseChargeClause:
241
247
  "Steuerschuldnerschaft des Leistungsempfängers – Art. 196 & Art. 226 Nr. 11a MwStSystRL (Directive 2006/112/EC, § 19 UStG) / Reverse charge (B2B services)",
242
248
  statutoryGoodsExemptionClause:
@@ -250,6 +256,12 @@ export const EU_VIES_STATUTORY_TERMINOLOGY_MAP = Object.freeze({
250
256
  nativeTaxIdName: "Numéro de TVA / Btw-identificatienummer",
251
257
  directiveArticle: "Art. 196 & Art. 226(11a) Council Directive 2006/112/EC",
252
258
  directiveGoodsArticle: "Art. 138(1) & Art. 226(11) Council Directive 2006/112/EC",
259
+ en16931GoodsCategoryCode: "K",
260
+ en16931ServicesCategoryCode: "AE",
261
+ vatexGoodsCode: "VATEX-EU-IC",
262
+ vatexServicesCode: "VATEX-EU-AE",
263
+ eInvoicingMandateStandard:
264
+ "Peppol BIS Billing 3.0 (B2B e-Invoicing Mandate Jan 2026, EN 16931 BT-118=K/AE, Art. 39bis CTVA/WBTW)",
253
265
  statutoryReverseChargeClause:
254
266
  "Autoliquidation / Btw verlegd – Art. 196 & Art. 226(11a) Directive 2006/112/EC / Reverse charge (B2B services)",
255
267
  statutoryGoodsExemptionClause:
@@ -263,6 +275,12 @@ export const EU_VIES_STATUTORY_TERMINOLOGY_MAP = Object.freeze({
263
275
  nativeTaxIdName: "Идентификационен номер по ДДС (ЗДДС)",
264
276
  directiveArticle: "Art. 196 & Art. 226(11a) Council Directive 2006/112/EC",
265
277
  directiveGoodsArticle: "Art. 138(1) & Art. 226(11) Council Directive 2006/112/EC",
278
+ en16931GoodsCategoryCode: "K",
279
+ en16931ServicesCategoryCode: "AE",
280
+ vatexGoodsCode: "VATEX-EU-IC",
281
+ vatexServicesCode: "VATEX-EU-AE",
282
+ eInvoicingMandateStandard:
283
+ "EN 16931 / Peppol BIS Billing 3.0 (BT-118=K VATEX-EU-IC [Goods] / BT-118=AE VATEX-EU-AE [Services], чл. 53 & чл. 82 ЗДДС)",
266
284
  statutoryReverseChargeClause:
267
285
  "Обратно начисляване – чл. 196 и чл. 226, т. 11а от Директива 2006/112/ЕО (чл. 82, ал. 2 ЗДДС) / Reverse charge (B2B services)",
268
286
  statutoryGoodsExemptionClause:
@@ -276,6 +294,12 @@ export const EU_VIES_STATUTORY_TERMINOLOGY_MAP = Object.freeze({
276
294
  nativeTaxIdName: "Αριθμός Εγγραφής ΦΠΑ",
277
295
  directiveArticle: "Art. 196 & Art. 226(11a) Council Directive 2006/112/EC",
278
296
  directiveGoodsArticle: "Art. 138(1) & Art. 226(11) Council Directive 2006/112/EC",
297
+ en16931GoodsCategoryCode: "K",
298
+ en16931ServicesCategoryCode: "AE",
299
+ vatexGoodsCode: "VATEX-EU-IC",
300
+ vatexServicesCode: "VATEX-EU-AE",
301
+ eInvoicingMandateStandard:
302
+ "EN 16931 / Peppol BIS Billing 3.0 (BT-118=K VATEX-EU-IC [Goods] / BT-118=AE VATEX-EU-AE [Services]) & VIES Return",
279
303
  statutoryReverseChargeClause:
280
304
  "Αντίστροφη επιβάρυνση – Άρθρα 196 & 226(11α) Οδηγίας 2006/112/ΕΚ / Reverse charge (B2B services)",
281
305
  statutoryGoodsExemptionClause:
@@ -289,6 +313,12 @@ export const EU_VIES_STATUTORY_TERMINOLOGY_MAP = Object.freeze({
289
313
  nativeTaxIdName: "Daňové identifikační číslo",
290
314
  directiveArticle: "Art. 196 & Art. 226(11a) Council Directive 2006/112/EC",
291
315
  directiveGoodsArticle: "Art. 138(1) & Art. 226(11) Council Directive 2006/112/EC",
316
+ en16931GoodsCategoryCode: "K",
317
+ en16931ServicesCategoryCode: "AE",
318
+ vatexGoodsCode: "VATEX-EU-IC",
319
+ vatexServicesCode: "VATEX-EU-AE",
320
+ eInvoicingMandateStandard:
321
+ "ISDOC 6.0.2 (Voluntary B2B) / EN 16931 Peppol BIS 3.0 (BT-118=K/AE, § 64 & § 9 odst. 1 ZDPH)",
292
322
  statutoryReverseChargeClause:
293
323
  "Daň odvede zákazník – čl. 196 a čl. 226 bod 11a směrnice 2006/112/ES / Reverse charge (B2B services)",
294
324
  statutoryGoodsExemptionClause:
@@ -302,6 +332,12 @@ export const EU_VIES_STATUTORY_TERMINOLOGY_MAP = Object.freeze({
302
332
  nativeTaxIdName: "Umsatzsteuer-Identifikationsnummer",
303
333
  directiveArticle: "Art. 196 & Art. 226(11a) Council Directive 2006/112/EC",
304
334
  directiveGoodsArticle: "Art. 138(1) & Art. 226(11) Council Directive 2006/112/EC",
335
+ en16931GoodsCategoryCode: "K",
336
+ en16931ServicesCategoryCode: "AE",
337
+ vatexGoodsCode: "VATEX-EU-IC",
338
+ vatexServicesCode: "VATEX-EU-AE",
339
+ eInvoicingMandateStandard:
340
+ "E-Rechnung (XRechnung 3.0 / ZUGFeRD 2.3, EN 16931 BT-118=K/AE) & GoBD (§ 14b Abs. 1 UStG / BEG IV 8-Year Archive, § 18e UStG BZSt Qualifizierte Bestätigung, § 17a UStDV Gelangensbestätigung)",
305
341
  statutoryReverseChargeClause:
306
342
  "Steuerschuldnerschaft des Leistungsempfängers – Art. 196 & Art. 226 Nr. 11a MwStSystRL (Directive 2006/112/EC, § 13b UStG) / Reverse charge (B2B services)",
307
343
  statutoryGoodsExemptionClause:
@@ -315,6 +351,12 @@ export const EU_VIES_STATUTORY_TERMINOLOGY_MAP = Object.freeze({
315
351
  nativeTaxIdName: "Momsregistreringsnummer (CVR/SE)",
316
352
  directiveArticle: "Art. 196 & Art. 226(11a) Council Directive 2006/112/EC",
317
353
  directiveGoodsArticle: "Art. 138(1) & Art. 226(11) Council Directive 2006/112/EC",
354
+ en16931GoodsCategoryCode: "K",
355
+ en16931ServicesCategoryCode: "AE",
356
+ vatexGoodsCode: "VATEX-EU-IC",
357
+ vatexServicesCode: "VATEX-EU-AE",
358
+ eInvoicingMandateStandard:
359
+ "NemHandel OIOUBL / Peppol BIS Billing 3.0 (EN 16931 BT-118=K/AE, ML § 34 stk. 1 nr. 1 & § 46)",
318
360
  statutoryReverseChargeClause:
319
361
  "Omvendt betalingspligt – Art. 196 & Art. 226, nr. 11a, i direktiv 2006/112/EF / Reverse charge (B2B services)",
320
362
  statutoryGoodsExemptionClause:
@@ -328,6 +370,12 @@ export const EU_VIES_STATUTORY_TERMINOLOGY_MAP = Object.freeze({
328
370
  nativeTaxIdName: "Käibemaksukohustuslase registreerimisnumber",
329
371
  directiveArticle: "Art. 196 & Art. 226(11a) Council Directive 2006/112/EC",
330
372
  directiveGoodsArticle: "Art. 138(1) & Art. 226(11) Council Directive 2006/112/EC",
373
+ en16931GoodsCategoryCode: "K",
374
+ en16931ServicesCategoryCode: "AE",
375
+ vatexGoodsCode: "VATEX-EU-IC",
376
+ vatexServicesCode: "VATEX-EU-AE",
377
+ eInvoicingMandateStandard:
378
+ "e-Arve / EN 16931 Peppol BIS Billing 3.0 (BT-118=K/AE, KMS § 15 lg 3 p 2 & § 10)",
331
379
  statutoryReverseChargeClause:
332
380
  "Pöördmaksustamine – direktiivi 2006/112/EÜ art 196 ja art 226 p 11a / Reverse charge (B2B services)",
333
381
  statutoryGoodsExemptionClause:
@@ -341,6 +389,12 @@ export const EU_VIES_STATUTORY_TERMINOLOGY_MAP = Object.freeze({
341
389
  nativeTaxIdName: "Αριθμός Φορολογικού Μητρώου (ΦΠΑ)",
342
390
  directiveArticle: "Art. 196 & Art. 226(11a) Council Directive 2006/112/EC",
343
391
  directiveGoodsArticle: "Art. 138(1) & Art. 226(11) Council Directive 2006/112/EC",
392
+ en16931GoodsCategoryCode: "K",
393
+ en16931ServicesCategoryCode: "AE",
394
+ vatexGoodsCode: "VATEX-EU-IC",
395
+ vatexServicesCode: "VATEX-EU-AE",
396
+ eInvoicingMandateStandard:
397
+ "AADE myDATA (Ηλεκτρονικά Βιβλία, EN 16931 BT-118=K/AE, Άρθρο 28 & Άρθρο 14 Κώδικα ΦΠΑ)",
344
398
  statutoryReverseChargeClause:
345
399
  "Αντίστροφη επιβάρυνση – Άρθρα 196 & 226(11α) Οδηγίας 2006/112/ΕΚ / Reverse charge (B2B services)",
346
400
  statutoryGoodsExemptionClause:
@@ -354,6 +408,12 @@ export const EU_VIES_STATUTORY_TERMINOLOGY_MAP = Object.freeze({
354
408
  nativeTaxIdName: "Número de Identificación Fiscal (ROI / NIF-IVA)",
355
409
  directiveArticle: "Art. 196 & Art. 226(11a) Council Directive 2006/112/EC",
356
410
  directiveGoodsArticle: "Art. 138(1) & Art. 226(11) Council Directive 2006/112/EC",
411
+ en16931GoodsCategoryCode: "K",
412
+ en16931ServicesCategoryCode: "AE",
413
+ vatexGoodsCode: "VATEX-EU-IC",
414
+ vatexServicesCode: "VATEX-EU-AE",
415
+ eInvoicingMandateStandard:
416
+ "AEAT SII (CausaExencion E5 Art. 25 LIVA [Goods] / No Sujeta Art. 69.Uno.1º LIVA [Services]) / Veri*factu RD 1007/2023 (Non-SII Taxpayers)",
357
417
  statutoryReverseChargeClause:
358
418
  "Inversión del sujeto pasivo – Art. 196 y Art. 226.11 bis Directiva 2006/112/CE (Art. 84 LIVA) / Reverse charge (B2B services)",
359
419
  statutoryGoodsExemptionClause:
@@ -367,6 +427,12 @@ export const EU_VIES_STATUTORY_TERMINOLOGY_MAP = Object.freeze({
367
427
  nativeTaxIdName: "Arvonlisäverotunniste (Y-tunnus)",
368
428
  directiveArticle: "Art. 196 & Art. 226(11a) Council Directive 2006/112/EC",
369
429
  directiveGoodsArticle: "Art. 138(1) & Art. 226(11) Council Directive 2006/112/EC",
430
+ en16931GoodsCategoryCode: "K",
431
+ en16931ServicesCategoryCode: "AE",
432
+ vatexGoodsCode: "VATEX-EU-IC",
433
+ vatexServicesCode: "VATEX-EU-AE",
434
+ eInvoicingMandateStandard:
435
+ "Finvoice 3.0 / Peppol BIS Billing 3.0 (EN 16931 BT-118=K/AE, AVL 72 a § & 65 §)",
370
436
  statutoryReverseChargeClause:
371
437
  "Käännetty verovelvollisuus – direktiivin 2006/112/EY 196 art. ja 226 art. 11a kohta / Reverse charge (B2B services)",
372
438
  statutoryGoodsExemptionClause:
@@ -380,6 +446,12 @@ export const EU_VIES_STATUTORY_TERMINOLOGY_MAP = Object.freeze({
380
446
  nativeTaxIdName: "Numéro de TVA intracommunautaire",
381
447
  directiveArticle: "Art. 196 & Art. 226(11a) Council Directive 2006/112/EC",
382
448
  directiveGoodsArticle: "Art. 138(1) & Art. 226(11) Council Directive 2006/112/EC",
449
+ en16931GoodsCategoryCode: "K",
450
+ en16931ServicesCategoryCode: "AE",
451
+ vatexGoodsCode: "VATEX-EU-IC",
452
+ vatexServicesCode: "VATEX-EU-AE",
453
+ eInvoicingMandateStandard:
454
+ "Factur-X / PPF & Plateformes Agréées (EN 16931 BT-118=K/AE, CGI art. 262 ter I & art. 283-2) & Piste d'Audit Fiable (PAF — CGI art. 289 VII)",
383
455
  statutoryReverseChargeClause:
384
456
  "Autoliquidation – Art. 196 et Art. 226, point 11 bis, de la Directive 2006/112/CE (CGI art. 283-2) / Reverse charge (B2B services)",
385
457
  statutoryGoodsExemptionClause:
@@ -393,6 +465,12 @@ export const EU_VIES_STATUTORY_TERMINOLOGY_MAP = Object.freeze({
393
465
  nativeTaxIdName: "PDV identifikacijski broj (OIB)",
394
466
  directiveArticle: "Art. 196 & Art. 226(11a) Council Directive 2006/112/EC",
395
467
  directiveGoodsArticle: "Art. 138(1) & Art. 226(11) Council Directive 2006/112/EC",
468
+ en16931GoodsCategoryCode: "K",
469
+ en16931ServicesCategoryCode: "AE",
470
+ vatexGoodsCode: "VATEX-EU-IC",
471
+ vatexServicesCode: "VATEX-EU-AE",
472
+ eInvoicingMandateStandard:
473
+ "Porezna uprava Fiskalizacija 2.0 / eRačun (EN 16931 BT-118=K/AE, čl. 41. st. 1. & čl. 17. st. 1. Zakona o PDV-u)",
396
474
  statutoryReverseChargeClause:
397
475
  "Prijenos porezne obveze – čl. 196. i čl. 226. t. 11.a Direktive 2006/112/EZ / Reverse charge (B2B services)",
398
476
  statutoryGoodsExemptionClause:
@@ -406,6 +484,12 @@ export const EU_VIES_STATUTORY_TERMINOLOGY_MAP = Object.freeze({
406
484
  nativeTaxIdName: "Közösségi adószám (EU ÁFA)",
407
485
  directiveArticle: "Art. 196 & Art. 226(11a) Council Directive 2006/112/EC",
408
486
  directiveGoodsArticle: "Art. 138(1) & Art. 226(11) Council Directive 2006/112/EC",
487
+ en16931GoodsCategoryCode: "K",
488
+ en16931ServicesCategoryCode: "AE",
489
+ vatexGoodsCode: "VATEX-EU-IC",
490
+ vatexServicesCode: "VATEX-EU-AE",
491
+ eInvoicingMandateStandard:
492
+ "NAV Online Számla RTIR v3.0 XML & EN 16931 (BT-118=K/AE, Áfa tv. 89. § & 37. § (1))",
409
493
  statutoryReverseChargeClause:
410
494
  "Fordított adózás – a 2006/112/EK irányelv 196. cikke és 226. cikkének 11a. pontja / Reverse charge (B2B services)",
411
495
  statutoryGoodsExemptionClause:
@@ -419,6 +503,12 @@ export const EU_VIES_STATUTORY_TERMINOLOGY_MAP = Object.freeze({
419
503
  nativeTaxIdName: "Value Added Tax Registration Number",
420
504
  directiveArticle: "Art. 196 & Art. 226(11a) Council Directive 2006/112/EC",
421
505
  directiveGoodsArticle: "Art. 138(1) & Art. 226(11) Council Directive 2006/112/EC",
506
+ en16931GoodsCategoryCode: "K",
507
+ en16931ServicesCategoryCode: "AE",
508
+ vatexGoodsCode: "VATEX-EU-IC",
509
+ vatexServicesCode: "VATEX-EU-AE",
510
+ eInvoicingMandateStandard:
511
+ "Peppol BIS Billing 3.0 / EN 16931 (BT-118=K VATEX-EU-IC [Goods] / BT-118=AE VATEX-EU-AE [Services], VATCA 2010)",
422
512
  statutoryReverseChargeClause:
423
513
  "Reverse charge – Art. 196 & Art. 226(11a) Council Directive 2006/112/EC (B2B services)",
424
514
  statutoryGoodsExemptionClause:
@@ -432,6 +522,12 @@ export const EU_VIES_STATUTORY_TERMINOLOGY_MAP = Object.freeze({
432
522
  nativeTaxIdName: "Partita IVA intracomunitaria (VIES)",
433
523
  directiveArticle: "Art. 196 & Art. 226(11a) Council Directive 2006/112/EC",
434
524
  directiveGoodsArticle: "Art. 138(1) & Art. 226(11) Council Directive 2006/112/EC",
525
+ en16931GoodsCategoryCode: "K",
526
+ en16931ServicesCategoryCode: "AE",
527
+ vatexGoodsCode: "VATEX-EU-IC",
528
+ vatexServicesCode: "VATEX-EU-AE",
529
+ eInvoicingMandateStandard:
530
+ "Sistema di Interscambio (SdI) FatturaPA XML v1.9 (Natura N3.2 non imponibili Art. 41 D.L. 331/1993 [Goods] / Natura N2.1 non soggette Art. 7-ter & dicitura Inversione contabile Art. 21 co. 6-bis lett. a DPR 633/72 [Services])",
435
531
  statutoryReverseChargeClause:
436
532
  "Inversione contabile – Art. 196 e Art. 226, punto 11-bis, Direttiva 2006/112/CE (Art. 17 DPR 633/72) / Reverse charge (B2B services)",
437
533
  statutoryGoodsExemptionClause:
@@ -445,6 +541,12 @@ export const EU_VIES_STATUTORY_TERMINOLOGY_MAP = Object.freeze({
445
541
  nativeTaxIdName: "Pridėtinės vertės mokesčio mokėtojo kodas",
446
542
  directiveArticle: "Art. 196 & Art. 226(11a) Council Directive 2006/112/EC",
447
543
  directiveGoodsArticle: "Art. 138(1) & Art. 226(11) Council Directive 2006/112/EC",
544
+ en16931GoodsCategoryCode: "K",
545
+ en16931ServicesCategoryCode: "AE",
546
+ vatexGoodsCode: "VATEX-EU-IC",
547
+ vatexServicesCode: "VATEX-EU-AE",
548
+ eInvoicingMandateStandard:
549
+ "i.SAF / SABIS EN 16931 Peppol BIS 3.0 (BT-118=K/AE, PVMĮ 49 str. & 13 str.)",
448
550
  statutoryReverseChargeClause:
449
551
  "Atvirkštinis apmokestinimas – Direktyvos 2006/112/EB 196 str. ir 226 str. 11a p. / Reverse charge (B2B services)",
450
552
  statutoryGoodsExemptionClause:
@@ -458,6 +560,12 @@ export const EU_VIES_STATUTORY_TERMINOLOGY_MAP = Object.freeze({
458
560
  nativeTaxIdName: "Numéro d'identification à la TVA",
459
561
  directiveArticle: "Art. 196 & Art. 226(11a) Council Directive 2006/112/EC",
460
562
  directiveGoodsArticle: "Art. 138(1) & Art. 226(11) Council Directive 2006/112/EC",
563
+ en16931GoodsCategoryCode: "K",
564
+ en16931ServicesCategoryCode: "AE",
565
+ vatexGoodsCode: "VATEX-EU-IC",
566
+ vatexServicesCode: "VATEX-EU-AE",
567
+ eInvoicingMandateStandard:
568
+ "Peppol BIS Billing 3.0 / EN 16931 (BT-118=K/AE, Art. 43 & Art. 17 LTVA)",
461
569
  statutoryReverseChargeClause:
462
570
  "Autoliquidation – Art. 196 et Art. 226, point 11 bis, Directive 2006/112/CE / Reverse charge (B2B services)",
463
571
  statutoryGoodsExemptionClause:
@@ -471,6 +579,12 @@ export const EU_VIES_STATUTORY_TERMINOLOGY_MAP = Object.freeze({
471
579
  nativeTaxIdName: "Pievienotās vērtības nodokļa reģistrācijas numurs",
472
580
  directiveArticle: "Art. 196 & Art. 226(11a) Council Directive 2006/112/EC",
473
581
  directiveGoodsArticle: "Art. 138(1) & Art. 226(11) Council Directive 2006/112/EC",
582
+ en16931GoodsCategoryCode: "K",
583
+ en16931ServicesCategoryCode: "AE",
584
+ vatexGoodsCode: "VATEX-EU-IC",
585
+ vatexServicesCode: "VATEX-EU-AE",
586
+ eInvoicingMandateStandard:
587
+ "e-Rēķins / EN 16931 Peppol BIS Billing 3.0 (BT-118=K/AE, PVN likuma 43. pants & 19. pants)",
474
588
  statutoryReverseChargeClause:
475
589
  "Nodokļa apgrieztā maksāšana – Direktīvas 2006/112/EK 196. pants un 226. panta 11.a punkts / Reverse charge (B2B services)",
476
590
  statutoryGoodsExemptionClause:
@@ -484,6 +598,12 @@ export const EU_VIES_STATUTORY_TERMINOLOGY_MAP = Object.freeze({
484
598
  nativeTaxIdName: "Value Added Tax Registration Number",
485
599
  directiveArticle: "Art. 196 & Art. 226(11a) Council Directive 2006/112/EC",
486
600
  directiveGoodsArticle: "Art. 138(1) & Art. 226(11) Council Directive 2006/112/EC",
601
+ en16931GoodsCategoryCode: "K",
602
+ en16931ServicesCategoryCode: "AE",
603
+ vatexGoodsCode: "VATEX-EU-IC",
604
+ vatexServicesCode: "VATEX-EU-AE",
605
+ eInvoicingMandateStandard:
606
+ "Peppol BIS Billing 3.0 / EN 16931 (BT-118=K VATEX-EU-IC [Goods] / BT-118=AE VATEX-EU-AE [Services], Value Added Tax Act Cap. 406)",
487
607
  statutoryReverseChargeClause:
488
608
  "Reverse charge – Art. 196 & Art. 226(11a) Council Directive 2006/112/EC (B2B services)",
489
609
  statutoryGoodsExemptionClause:
@@ -497,8 +617,14 @@ export const EU_VIES_STATUTORY_TERMINOLOGY_MAP = Object.freeze({
497
617
  nativeTaxIdName: "Btw-identificatienummer",
498
618
  directiveArticle: "Art. 196 & Art. 226(11a) Council Directive 2006/112/EC",
499
619
  directiveGoodsArticle: "Art. 138(1) & Art. 226(11) Council Directive 2006/112/EC",
620
+ en16931GoodsCategoryCode: "K",
621
+ en16931ServicesCategoryCode: "AE",
622
+ vatexGoodsCode: "VATEX-EU-IC",
623
+ vatexServicesCode: "VATEX-EU-AE",
624
+ eInvoicingMandateStandard:
625
+ "Peppol BIS Billing 3.0 / NLCIUS (EN 16931 BT-118=K/AE, Wet OB 1968 Art. 9 lid 2 sub b & Art. 12 lid 3 & ICP Opgaaf)",
500
626
  statutoryReverseChargeClause:
501
- "Btw verlegd – Art. 196 & Art. 226 lid 11 bis Richtlijn 2006/112/EG / Reverse charge (B2B services)",
627
+ "Btw verlegd – Art. 196 & Art. 226 lid 11 bis Richtlijn 2006/112/EG (Art. 12 lid 3 Wet OB 1968) / Reverse charge (B2B services)",
502
628
  statutoryGoodsExemptionClause:
503
629
  "Vrijgestelde intracommunautaire levering van goederen (0% btw) – Art. 138 lid 1 & Art. 226 lid 11 Richtlijn 2006/112/EG (Art. 9 lid 2 sub b Wet OB 1968 juncto Tabel II onderdeel a post 6) / Intra-Community exempt supply of goods",
504
630
  }),
@@ -510,6 +636,12 @@ export const EU_VIES_STATUTORY_TERMINOLOGY_MAP = Object.freeze({
510
636
  nativeTaxIdName: "Numer Identyfikacji Podatkowej (NIP UE)",
511
637
  directiveArticle: "Art. 196 & Art. 226(11a) Council Directive 2006/112/EC",
512
638
  directiveGoodsArticle: "Art. 138(1) & Art. 226(11) Council Directive 2006/112/EC",
639
+ en16931GoodsCategoryCode: "K",
640
+ en16931ServicesCategoryCode: "AE",
641
+ vatexGoodsCode: "VATEX-EU-IC",
642
+ vatexServicesCode: "VATEX-EU-AE",
643
+ eInvoicingMandateStandard:
644
+ "KSeF FA(3) e-Faktura (WDT P_13_6_2 0% Art. 42 ustawy o VAT [Goods] / NP II P_13_9 & P_18=1 Odwrotne obciążenie Art. 28b, Art. 106e ust. 1 pkt 18 & Art. 17 ust. 1 pkt 4 [Services])",
513
645
  statutoryReverseChargeClause:
514
646
  "Odwrotne obciążenie – art. 196 i art. 226 pkt 11a dyrektywy 2006/112/WE / Reverse charge (B2B services)",
515
647
  statutoryGoodsExemptionClause:
@@ -523,6 +655,12 @@ export const EU_VIES_STATUTORY_TERMINOLOGY_MAP = Object.freeze({
523
655
  nativeTaxIdName: "Número de Identificação Fiscal (IVA)",
524
656
  directiveArticle: "Art. 196 & Art. 226(11a) Council Directive 2006/112/EC",
525
657
  directiveGoodsArticle: "Art. 138(1) & Art. 226(11) Council Directive 2006/112/EC",
658
+ en16931GoodsCategoryCode: "K",
659
+ en16931ServicesCategoryCode: "AE",
660
+ vatexGoodsCode: "VATEX-EU-IC",
661
+ vatexServicesCode: "VATEX-EU-AE",
662
+ eInvoicingMandateStandard:
663
+ "AT SAF-T (PT) & ATCUD Certified Billing (EN 16931 BT-118=K/AE, Art. 14.º RITI & Art. 6.º n.º 6 CIVA)",
526
664
  statutoryReverseChargeClause:
527
665
  "Autoliquidação – Art. 196.º e Art. 226.º, n.º 11-A, da Diretiva 2006/112/CE / Reverse charge (B2B services)",
528
666
  statutoryGoodsExemptionClause:
@@ -536,6 +674,12 @@ export const EU_VIES_STATUTORY_TERMINOLOGY_MAP = Object.freeze({
536
674
  nativeTaxIdName: "Cod de înregistrare în scopuri de TVA",
537
675
  directiveArticle: "Art. 196 & Art. 226(11a) Council Directive 2006/112/EC",
538
676
  directiveGoodsArticle: "Art. 138(1) & Art. 226(11) Council Directive 2006/112/EC",
677
+ en16931GoodsCategoryCode: "K",
678
+ en16931ServicesCategoryCode: "AE",
679
+ vatexGoodsCode: "VATEX-EU-IC",
680
+ vatexServicesCode: "VATEX-EU-AE",
681
+ eInvoicingMandateStandard:
682
+ "ANAF RO e-Factura (CIUS-RO / UBL 2.1 EN 16931 BT-118=K/AE, Art. 294 alin. (2) & Art. 278 alin. (2) Codul Fiscal)",
539
683
  statutoryReverseChargeClause:
540
684
  "Taxare inversă – Art. 196 și Art. 226 pct. 11a din Directiva 2006/112/CE / Reverse charge (B2B services)",
541
685
  statutoryGoodsExemptionClause:
@@ -549,10 +693,16 @@ export const EU_VIES_STATUTORY_TERMINOLOGY_MAP = Object.freeze({
549
693
  nativeTaxIdName: "Momsregistreringsnummer (SE-nummer)",
550
694
  directiveArticle: "Art. 196 & Art. 226(11a) Council Directive 2006/112/EC",
551
695
  directiveGoodsArticle: "Art. 138(1) & Art. 226(11) Council Directive 2006/112/EC",
696
+ en16931GoodsCategoryCode: "K",
697
+ en16931ServicesCategoryCode: "AE",
698
+ vatexGoodsCode: "VATEX-EU-IC",
699
+ vatexServicesCode: "VATEX-EU-AE",
700
+ eInvoicingMandateStandard:
701
+ "Peppol BIS Billing 3.0 / Svefaktura (EN 16931 BT-118=K/AE, Mervärdesskattelag 2023:200 10 kap. 42 §, 6 kap. 33 § & 17 kap. 24 § p. 11 ML)",
552
702
  statutoryReverseChargeClause:
553
- "Omvänd betalningsskyldighet – Art. 196 & Art. 226.11a i direktiv 2006/112/EG / Reverse charge (B2B services)",
703
+ "Omvänd betalningsskyldighet – Art. 196 & Art. 226.11a i direktiv 2006/112/EG (6 kap. 33 § & 17 kap. 24 § p. 11 ML (2023:200)) / Reverse charge (B2B services)",
554
704
  statutoryGoodsExemptionClause:
555
- "Undantagen unionsintern leverans av varor – Art. 138.1 & Art. 226.11 i direktiv 2006/112/EG (10 kap. 42 § ML) / Intra-Community exempt supply of goods",
705
+ "Undantagen unionsintern leverans av varor – Art. 138.1 & Art. 226.11 i direktiv 2006/112/EG (10 kap. 42 § ML / Mervärdesskattelag 2023:200) / Intra-Community exempt supply of goods",
556
706
  }),
557
707
  SI: Object.freeze({
558
708
  memberState: "SI",
@@ -562,6 +712,12 @@ export const EU_VIES_STATUTORY_TERMINOLOGY_MAP = Object.freeze({
562
712
  nativeTaxIdName: "Identifikacijska številka za DDV",
563
713
  directiveArticle: "Art. 196 & Art. 226(11a) Council Directive 2006/112/EC",
564
714
  directiveGoodsArticle: "Art. 138(1) & Art. 226(11) Council Directive 2006/112/EC",
715
+ en16931GoodsCategoryCode: "K",
716
+ en16931ServicesCategoryCode: "AE",
717
+ vatexGoodsCode: "VATEX-EU-IC",
718
+ vatexServicesCode: "VATEX-EU-AE",
719
+ eInvoicingMandateStandard:
720
+ "e-SLOG 2.0 / EN 16931 Peppol BIS 3.0 (BT-118=K/AE, 46. člen & 25. člen ZDDV-1)",
565
721
  statutoryReverseChargeClause:
566
722
  "Obrnjena davčna obveznost – člen 196 in člen 226(11a) Direktive 2006/112/ES / Reverse charge (B2B services)",
567
723
  statutoryGoodsExemptionClause:
@@ -575,6 +731,12 @@ export const EU_VIES_STATUTORY_TERMINOLOGY_MAP = Object.freeze({
575
731
  nativeTaxIdName: "Identifikačné číslo pre daň z pridanej hodnoty",
576
732
  directiveArticle: "Art. 196 & Art. 226(11a) Council Directive 2006/112/EC",
577
733
  directiveGoodsArticle: "Art. 138(1) & Art. 226(11) Council Directive 2006/112/EC",
734
+ en16931GoodsCategoryCode: "K",
735
+ en16931ServicesCategoryCode: "AE",
736
+ vatexGoodsCode: "VATEX-EU-IC",
737
+ vatexServicesCode: "VATEX-EU-AE",
738
+ eInvoicingMandateStandard:
739
+ "IS EFA / EN 16931 Peppol BIS 3.0 (BT-118=K/AE, § 43 & § 15 ods. 1 zákona o DPH)",
578
740
  statutoryReverseChargeClause:
579
741
  "Prenesenie daňovej povinnosti – čl. 196 a čl. 226 bod 11a smernice 2006/112/ES / Reverse charge (B2B services)",
580
742
  statutoryGoodsExemptionClause:
@@ -591,6 +753,12 @@ export const EU_VIES_STATUTORY_TERMINOLOGY_MAP = Object.freeze({
591
753
  "Windsor Framework (Goods Only — Services Not Covered by XI VIES) / Art. 138(1) & Art. 226(11) Council Directive 2006/112/EC",
592
754
  directiveGoodsArticle:
593
755
  "Windsor Framework (Goods Only) / Art. 138(1) & Art. 226(11) Council Directive 2006/112/EC",
756
+ en16931GoodsCategoryCode: "K",
757
+ en16931ServicesCategoryCode: "N/A (Windsor Framework Goods-Only)",
758
+ vatexGoodsCode: "VATEX-EU-IC",
759
+ vatexServicesCode: "N/A",
760
+ eInvoicingMandateStandard:
761
+ "UK HMRC Windsor Framework / Northern Ireland Protocol (VATA 1994 Sch 9ZA — NI (UK) XI Prefix Applies to Cross-Border Goods Only [EN 16931 Code K]; B2B Services Governed by UK Place-of-Supply Rules)",
594
762
  statutoryReverseChargeClause:
595
763
  "N/A for B2B services under XI VIES (Windsor Framework applies to goods only under Art. 138(1) & Art. 226(11) Directive 2006/112/EC; UK/GB place-of-supply rules govern services)",
596
764
  statutoryGoodsExemptionClause:
@@ -1913,7 +2081,7 @@ export const LOCAL_STATELESS_CLOUD_UPGRADE_HINT = Object.freeze({
1913
2081
  message:
1914
2082
  "Running in stateless local mode. Provision a free or paid Cloud Workspace for 90-day event persistence, automated webhook revocation, and Slack/Email alerts.",
1915
2083
  command: "npx --yes revclamp-mcp --init-workspace <work_email>",
1916
- cliActivateCommand: "npx -y revclamp-mcp@1.20.12 --init-workspace you@company.com",
2084
+ cliActivateCommand: "npx -y revclamp-mcp@1.20.14 --init-workspace you@company.com",
1917
2085
  upgradeUrl: "https://revclamp.com/pricing?source=mcp_cli",
1918
2086
  });
1919
2087
 
@@ -2954,15 +3122,34 @@ function executeLocalMcpToolCore(toolName, rawArgs = {}) {
2954
3122
  const norm = normalizeVatId(args.buyerVatId || "");
2955
3123
  const viesMode = String(args.viesMode || "FORMAT_ONLY").toUpperCase();
2956
3124
  const isDemo = args.demo === true;
3125
+ const crossBorder = Boolean(norm.validFormat && sellerCountry !== norm.memberState);
3126
+ const goodsOnlyProtocol = Boolean(
3127
+ crossBorder && (sellerCountry === "XI" || norm.memberState === "XI")
3128
+ );
3129
+ const xiServicesNotice =
3130
+ EU_VIES_STATUTORY_TERMINOLOGY_MAP.XI.statutoryReverseChargeClause;
3131
+ const rawBuyerTerminology = norm.validFormat
3132
+ ? getEuViesStatutoryTerminology(norm.memberState)
3133
+ : null;
3134
+ const rawSellerTerminology = getEuViesStatutoryTerminology(sellerCountry);
3135
+ const statutoryTerminology = rawBuyerTerminology
3136
+ ? goodsOnlyProtocol
3137
+ ? {
3138
+ ...rawBuyerTerminology,
3139
+ statutoryReverseChargeClause:
3140
+ norm.memberState === "XI"
3141
+ ? xiServicesNotice
3142
+ : `${rawBuyerTerminology.statutoryReverseChargeClause} [Windsor Framework XI: N/A for B2B services; VIES applies to goods only under Art. 138(1)]`,
3143
+ }
3144
+ : rawBuyerTerminology
3145
+ : null;
3146
+ const sellerStatutoryTerminology = rawSellerTerminology
3147
+ ? goodsOnlyProtocol
3148
+ ? { ...rawSellerTerminology, statutoryReverseChargeClause: xiServicesNotice }
3149
+ : rawSellerTerminology
3150
+ : null;
2957
3151
 
2958
- if (
2959
- norm.validFormat &&
2960
- sellerCountry !== norm.memberState &&
2961
- supplyType === "SERVICES" &&
2962
- (sellerCountry === "XI" || norm.memberState === "XI")
2963
- ) {
2964
- const statutoryTerminology = getEuViesStatutoryTerminology(norm.memberState);
2965
- const sellerStatutoryTerminology = getEuViesStatutoryTerminology(sellerCountry);
3152
+ if (goodsOnlyProtocol && supplyType === "SERVICES") {
2966
3153
  return {
2967
3154
  ok: true,
2968
3155
  executionMode: "local_open_source_engine",
@@ -2970,6 +3157,7 @@ function executeLocalMcpToolCore(toolName, rawArgs = {}) {
2970
3157
  valid: null,
2971
3158
  formatValid: true,
2972
3159
  supplyType,
3160
+ goodsOnlyProtocol: true,
2973
3161
  status: "HOLD_XI_SERVICES_OUTSIDE_EU_VIES",
2974
3162
  action: "APPLY_UK_OR_NON_EU_SERVICES_VAT_RULES",
2975
3163
  reason: "WINDSOR_FRAMEWORK_XI_B2B_SERVICES_EXCLUDED_FROM_VIES",
@@ -3016,6 +3204,7 @@ function executeLocalMcpToolCore(toolName, rawArgs = {}) {
3016
3204
  valid: false,
3017
3205
  formatValid: false,
3018
3206
  supplyType,
3207
+ goodsOnlyProtocol: false,
3019
3208
  status: "HOLD_INVALID_VAT",
3020
3209
  reason: "INVALID_EU_VAT_FORMAT",
3021
3210
  sellerCountry,
@@ -3026,9 +3215,6 @@ function executeLocalMcpToolCore(toolName, rawArgs = {}) {
3026
3215
  };
3027
3216
  }
3028
3217
 
3029
- const crossBorder = sellerCountry !== norm.memberState;
3030
- const statutoryTerminology = getEuViesStatutoryTerminology(norm.memberState);
3031
- const sellerStatutoryTerminology = getEuViesStatutoryTerminology(sellerCountry);
3032
3218
  const callerConsultationId =
3033
3219
  typeof args.consultationNumber === "string" && args.consultationNumber.trim().length > 0
3034
3220
  ? args.consultationNumber.trim().slice(0, 64)
@@ -3041,6 +3227,7 @@ function executeLocalMcpToolCore(toolName, rawArgs = {}) {
3041
3227
  valid: null,
3042
3228
  formatValid: true,
3043
3229
  supplyType,
3230
+ goodsOnlyProtocol,
3044
3231
  status: "FORMAT_VALID_UNVERIFIED",
3045
3232
  action: crossBorder ? "FORMAT_VALID_UNVERIFIED" : "APPLY_DOMESTIC_STANDARD_VAT",
3046
3233
  reason: "LOCAL_FORMAT_CHECK_ONLY_NO_LIVE_VIES_CONSULTATION",
@@ -3089,6 +3276,7 @@ function executeLocalMcpToolCore(toolName, rawArgs = {}) {
3089
3276
  valid: null,
3090
3277
  formatValid: true,
3091
3278
  supplyType,
3279
+ goodsOnlyProtocol,
3092
3280
  status: "PENDING_ASYNC_RETRY",
3093
3281
  reason: `VIES_SOFT_FAULT_${viesMode}`,
3094
3282
  sellerCountry,
@@ -3112,6 +3300,7 @@ function executeLocalMcpToolCore(toolName, rawArgs = {}) {
3112
3300
  valid: null,
3113
3301
  formatValid: true,
3114
3302
  supplyType,
3303
+ goodsOnlyProtocol,
3115
3304
  status: "HOLD_UNVERIFIED_VIES_FAULT",
3116
3305
  reason: `VIES_GATEWAY_FAULT_${viesMode}`,
3117
3306
  sellerCountry,
@@ -3135,6 +3324,7 @@ function executeLocalMcpToolCore(toolName, rawArgs = {}) {
3135
3324
  valid: false,
3136
3325
  formatValid: true,
3137
3326
  supplyType,
3327
+ goodsOnlyProtocol,
3138
3328
  status: "HOLD_INVALID_VAT",
3139
3329
  reason: viesMode === "INVALID" ? "VIES_DEFINITE_INVALID" : `VIES_${viesMode}`,
3140
3330
  sellerCountry,
@@ -3158,6 +3348,7 @@ function executeLocalMcpToolCore(toolName, rawArgs = {}) {
3158
3348
  valid: null,
3159
3349
  formatValid: true,
3160
3350
  supplyType,
3351
+ goodsOnlyProtocol,
3161
3352
  status: "HOLD_UNVERIFIED_VIES_FAULT",
3162
3353
  reason: "UNRECOGNIZED_VIES_SIMULATION_MODE",
3163
3354
  sellerCountry,
@@ -3191,6 +3382,7 @@ function executeLocalMcpToolCore(toolName, rawArgs = {}) {
3191
3382
  valid: true,
3192
3383
  formatValid: true,
3193
3384
  supplyType,
3385
+ goodsOnlyProtocol,
3194
3386
  status: crossBorder ? "VERIFIED_ZERO_RATED" : "DOMESTIC_TAXABLE_SUPPLY",
3195
3387
  action: crossBorder ? "ALLOW_ZERO_RATED_REVERSE_CHARGE" : "APPLY_DOMESTIC_STANDARD_VAT",
3196
3388
  reason: crossBorder ? "VALID_CROSS_BORDER_REVERSE_CHARGE" : "SAME_MEMBER_STATE_DOMESTIC",
@@ -3985,7 +4177,7 @@ function toSafeLocalRpcId(rawId) {
3985
4177
 
3986
4178
  export function executeLocalMcpJsonRpc(
3987
4179
  rpcRequest,
3988
- packageVersion = "1.20.12",
4180
+ packageVersion = "1.20.14",
3989
4181
  options = {}
3990
4182
  ) {
3991
4183
  if (!rpcRequest || typeof rpcRequest !== "object" || Array.isArray(rpcRequest)) {
package/mcp-config.json CHANGED
@@ -26,7 +26,7 @@
26
26
  },
27
27
  "manifest": {
28
28
  "name": "revclamp-mcp",
29
- "version": "1.20.12",
29
+ "version": "1.20.14",
30
30
  "tools": [
31
31
  "revclamp_audit_revenue_leakage",
32
32
  "revclamp_evaluate_ghost_usage",
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "revclamp-mcp",
3
3
  "mcpName": "com.revclamp/revclamp-mcp",
4
- "version": "1.20.12",
4
+ "version": "1.20.14",
5
5
  "description": "Model Context Protocol (MCP) server and CLI for Stripe 2025-03-31.basil entitlement checks, Visa CE 3.0 dispute staging (submit: false), EU/XI VIES VAT validation, Shopify Plus B2B Net-15/30/60 reconciliation, webhook HMAC-SHA256 verification, 0% take-rate ROI calculation, 72-hour webhook replay & out-of-order state-machine simulation, and Stripe dispute evidence 18,000 UTF-16 code unit & CE 3.0 completeness linting.",
6
6
  "type": "module",
7
7
  "main": "./index.mjs",
@@ -46,6 +46,6 @@
46
46
  "node": ">=20.0.0"
47
47
  },
48
48
  "revclamp": {
49
- "engineSha256": "c67f214211284a479fbe10857dfef984b45e3c3403c37d5d834dcd5a5b326b60"
49
+ "engineSha256": "9849cc3faf44f50ae6c361fa055110d745364b0c83e9367aad64d793bcbac17b"
50
50
  }
51
51
  }
package/server.json CHANGED
@@ -7,13 +7,13 @@
7
7
  "url": "https://github.com/lhphong09t2/revclamp-mcp",
8
8
  "source": "github"
9
9
  },
10
- "version": "1.20.12",
10
+ "version": "1.20.14",
11
11
  "packages": [
12
12
  {
13
13
  "registryType": "npm",
14
14
  "registryBaseUrl": "https://registry.npmjs.org",
15
15
  "identifier": "revclamp-mcp",
16
- "version": "1.20.12",
16
+ "version": "1.20.14",
17
17
  "transport": {
18
18
  "type": "stdio"
19
19
  },