@monnify/mcp-server 1.0.0

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.
Files changed (192) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +563 -0
  3. package/build/auth/tokenManager.d.ts +11 -0
  4. package/build/auth/tokenManager.d.ts.map +1 -0
  5. package/build/auth/tokenManager.js +62 -0
  6. package/build/auth/tokenManager.js.map +1 -0
  7. package/build/cli.d.ts +3 -0
  8. package/build/cli.d.ts.map +1 -0
  9. package/build/cli.js +39 -0
  10. package/build/cli.js.map +1 -0
  11. package/build/client/monnifyClient.d.ts +7 -0
  12. package/build/client/monnifyClient.d.ts.map +1 -0
  13. package/build/client/monnifyClient.js +119 -0
  14. package/build/client/monnifyClient.js.map +1 -0
  15. package/build/config/env.d.ts +47 -0
  16. package/build/config/env.d.ts.map +1 -0
  17. package/build/config/env.js +39 -0
  18. package/build/config/env.js.map +1 -0
  19. package/build/index.d.ts +36 -0
  20. package/build/index.d.ts.map +1 -0
  21. package/build/index.js +84 -0
  22. package/build/index.js.map +1 -0
  23. package/build/schemas/compat.d.ts +24 -0
  24. package/build/schemas/compat.d.ts.map +1 -0
  25. package/build/schemas/compat.js +20 -0
  26. package/build/schemas/compat.js.map +1 -0
  27. package/build/schemas/extended/collections.d.ts +439 -0
  28. package/build/schemas/extended/collections.d.ts.map +1 -0
  29. package/build/schemas/extended/collections.js +403 -0
  30. package/build/schemas/extended/collections.js.map +1 -0
  31. package/build/schemas/extended/directDebit.d.ts +123 -0
  32. package/build/schemas/extended/directDebit.d.ts.map +1 -0
  33. package/build/schemas/extended/directDebit.js +121 -0
  34. package/build/schemas/extended/directDebit.js.map +1 -0
  35. package/build/schemas/extended/verification.d.ts +55 -0
  36. package/build/schemas/extended/verification.d.ts.map +1 -0
  37. package/build/schemas/extended/verification.js +51 -0
  38. package/build/schemas/extended/verification.js.map +1 -0
  39. package/build/schemas/generated.d.ts +4 -0
  40. package/build/schemas/generated.d.ts.map +1 -0
  41. package/build/schemas/generated.js +2603 -0
  42. package/build/schemas/generated.js.map +1 -0
  43. package/build/security/guards.d.ts +5 -0
  44. package/build/security/guards.d.ts.map +1 -0
  45. package/build/security/guards.js +43 -0
  46. package/build/security/guards.js.map +1 -0
  47. package/build/security/sanitiser.d.ts +46 -0
  48. package/build/security/sanitiser.d.ts.map +1 -0
  49. package/build/security/sanitiser.js +269 -0
  50. package/build/security/sanitiser.js.map +1 -0
  51. package/build/tools/collections/authoriseCard3ds.d.ts +7 -0
  52. package/build/tools/collections/authoriseCard3ds.d.ts.map +1 -0
  53. package/build/tools/collections/authoriseCard3ds.js +63 -0
  54. package/build/tools/collections/authoriseCard3ds.js.map +1 -0
  55. package/build/tools/collections/authoriseCardOtp.d.ts +7 -0
  56. package/build/tools/collections/authoriseCardOtp.d.ts.map +1 -0
  57. package/build/tools/collections/authoriseCardOtp.js +55 -0
  58. package/build/tools/collections/authoriseCardOtp.js.map +1 -0
  59. package/build/tools/collections/chargeCard.d.ts +7 -0
  60. package/build/tools/collections/chargeCard.d.ts.map +1 -0
  61. package/build/tools/collections/chargeCard.js +59 -0
  62. package/build/tools/collections/chargeCard.js.map +1 -0
  63. package/build/tools/collections/chargeCardToken.d.ts +7 -0
  64. package/build/tools/collections/chargeCardToken.d.ts.map +1 -0
  65. package/build/tools/collections/chargeCardToken.js +68 -0
  66. package/build/tools/collections/chargeCardToken.js.map +1 -0
  67. package/build/tools/collections/createInvoice.d.ts +7 -0
  68. package/build/tools/collections/createInvoice.d.ts.map +1 -0
  69. package/build/tools/collections/createInvoice.js +57 -0
  70. package/build/tools/collections/createInvoice.js.map +1 -0
  71. package/build/tools/collections/deallocateReservedAccount.d.ts +14 -0
  72. package/build/tools/collections/deallocateReservedAccount.d.ts.map +1 -0
  73. package/build/tools/collections/deallocateReservedAccount.js +55 -0
  74. package/build/tools/collections/deallocateReservedAccount.js.map +1 -0
  75. package/build/tools/collections/getAllTransactions.d.ts +47 -0
  76. package/build/tools/collections/getAllTransactions.d.ts.map +1 -0
  77. package/build/tools/collections/getAllTransactions.js +140 -0
  78. package/build/tools/collections/getAllTransactions.js.map +1 -0
  79. package/build/tools/collections/getReservedAccount.d.ts +14 -0
  80. package/build/tools/collections/getReservedAccount.d.ts.map +1 -0
  81. package/build/tools/collections/getReservedAccount.js +55 -0
  82. package/build/tools/collections/getReservedAccount.js.map +1 -0
  83. package/build/tools/collections/getReservedAccountTransactions.d.ts +20 -0
  84. package/build/tools/collections/getReservedAccountTransactions.d.ts.map +1 -0
  85. package/build/tools/collections/getReservedAccountTransactions.js +86 -0
  86. package/build/tools/collections/getReservedAccountTransactions.js.map +1 -0
  87. package/build/tools/collections/getTransactionDetails.d.ts +14 -0
  88. package/build/tools/collections/getTransactionDetails.d.ts.map +1 -0
  89. package/build/tools/collections/getTransactionDetails.js +60 -0
  90. package/build/tools/collections/getTransactionDetails.js.map +1 -0
  91. package/build/tools/collections/getTransactionStatus.d.ts +7 -0
  92. package/build/tools/collections/getTransactionStatus.d.ts.map +1 -0
  93. package/build/tools/collections/getTransactionStatus.js +58 -0
  94. package/build/tools/collections/getTransactionStatus.js.map +1 -0
  95. package/build/tools/collections/initiatePayment.d.ts +7 -0
  96. package/build/tools/collections/initiatePayment.d.ts.map +1 -0
  97. package/build/tools/collections/initiatePayment.js +63 -0
  98. package/build/tools/collections/initiatePayment.js.map +1 -0
  99. package/build/tools/collections/payWithBankTransfer.d.ts +7 -0
  100. package/build/tools/collections/payWithBankTransfer.d.ts.map +1 -0
  101. package/build/tools/collections/payWithBankTransfer.js +55 -0
  102. package/build/tools/collections/payWithBankTransfer.js.map +1 -0
  103. package/build/tools/collections/processRefund.d.ts +7 -0
  104. package/build/tools/collections/processRefund.d.ts.map +1 -0
  105. package/build/tools/collections/processRefund.js +55 -0
  106. package/build/tools/collections/processRefund.js.map +1 -0
  107. package/build/tools/collections/reserveAccount.d.ts +7 -0
  108. package/build/tools/collections/reserveAccount.d.ts.map +1 -0
  109. package/build/tools/collections/reserveAccount.js +57 -0
  110. package/build/tools/collections/reserveAccount.js.map +1 -0
  111. package/build/tools/directDebit/cancelMandate.d.ts +7 -0
  112. package/build/tools/directDebit/cancelMandate.d.ts.map +1 -0
  113. package/build/tools/directDebit/cancelMandate.js +55 -0
  114. package/build/tools/directDebit/cancelMandate.js.map +1 -0
  115. package/build/tools/directDebit/createMandate.d.ts +7 -0
  116. package/build/tools/directDebit/createMandate.d.ts.map +1 -0
  117. package/build/tools/directDebit/createMandate.js +55 -0
  118. package/build/tools/directDebit/createMandate.js.map +1 -0
  119. package/build/tools/directDebit/debitMandate.d.ts +7 -0
  120. package/build/tools/directDebit/debitMandate.d.ts.map +1 -0
  121. package/build/tools/directDebit/debitMandate.js +55 -0
  122. package/build/tools/directDebit/debitMandate.js.map +1 -0
  123. package/build/tools/directDebit/getMandateDebitStatus.d.ts +7 -0
  124. package/build/tools/directDebit/getMandateDebitStatus.d.ts.map +1 -0
  125. package/build/tools/directDebit/getMandateDebitStatus.js +55 -0
  126. package/build/tools/directDebit/getMandateDebitStatus.js.map +1 -0
  127. package/build/tools/directDebit/getMandateStatus.d.ts +7 -0
  128. package/build/tools/directDebit/getMandateStatus.d.ts.map +1 -0
  129. package/build/tools/directDebit/getMandateStatus.js +55 -0
  130. package/build/tools/directDebit/getMandateStatus.js.map +1 -0
  131. package/build/tools/registry.d.ts +11 -0
  132. package/build/tools/registry.d.ts.map +1 -0
  133. package/build/tools/registry.js +15 -0
  134. package/build/tools/registry.js.map +1 -0
  135. package/build/tools/utilities/getSupportedBanks.d.ts +8 -0
  136. package/build/tools/utilities/getSupportedBanks.d.ts.map +1 -0
  137. package/build/tools/utilities/getSupportedBanks.js +47 -0
  138. package/build/tools/utilities/getSupportedBanks.js.map +1 -0
  139. package/build/tools/utilities/getTransactionList.d.ts +47 -0
  140. package/build/tools/utilities/getTransactionList.d.ts.map +1 -0
  141. package/build/tools/utilities/getTransactionList.js +136 -0
  142. package/build/tools/utilities/getTransactionList.js.map +1 -0
  143. package/build/tools/verification/verifyBankAccount.d.ts +7 -0
  144. package/build/tools/verification/verifyBankAccount.d.ts.map +1 -0
  145. package/build/tools/verification/verifyBankAccount.js +58 -0
  146. package/build/tools/verification/verifyBankAccount.js.map +1 -0
  147. package/build/tools/verification/verifyBvn.d.ts +7 -0
  148. package/build/tools/verification/verifyBvn.d.ts.map +1 -0
  149. package/build/tools/verification/verifyBvn.js +55 -0
  150. package/build/tools/verification/verifyBvn.js.map +1 -0
  151. package/build/tools/verification/verifyBvnInfo.d.ts +7 -0
  152. package/build/tools/verification/verifyBvnInfo.d.ts.map +1 -0
  153. package/build/tools/verification/verifyBvnInfo.js +55 -0
  154. package/build/tools/verification/verifyBvnInfo.js.map +1 -0
  155. package/build/tools/verification/verifyNin.d.ts +7 -0
  156. package/build/tools/verification/verifyNin.d.ts.map +1 -0
  157. package/build/tools/verification/verifyNin.js +55 -0
  158. package/build/tools/verification/verifyNin.js.map +1 -0
  159. package/build/transport/http.d.ts +3 -0
  160. package/build/transport/http.d.ts.map +1 -0
  161. package/build/transport/http.js +71 -0
  162. package/build/transport/http.js.map +1 -0
  163. package/build/transport/stdio.d.ts +3 -0
  164. package/build/transport/stdio.d.ts.map +1 -0
  165. package/build/transport/stdio.js +8 -0
  166. package/build/transport/stdio.js.map +1 -0
  167. package/build/types/mcp.d.ts +11 -0
  168. package/build/types/mcp.d.ts.map +1 -0
  169. package/build/types/mcp.js +7 -0
  170. package/build/types/mcp.js.map +1 -0
  171. package/build/utils/clientContext.d.ts +7 -0
  172. package/build/utils/clientContext.d.ts.map +1 -0
  173. package/build/utils/clientContext.js +24 -0
  174. package/build/utils/clientContext.js.map +1 -0
  175. package/build/utils/errors.d.ts +21 -0
  176. package/build/utils/errors.d.ts.map +1 -0
  177. package/build/utils/errors.js +45 -0
  178. package/build/utils/errors.js.map +1 -0
  179. package/build/utils/format.d.ts +34 -0
  180. package/build/utils/format.d.ts.map +1 -0
  181. package/build/utils/format.js +362 -0
  182. package/build/utils/format.js.map +1 -0
  183. package/build/utils/formatters.d.ts +4 -0
  184. package/build/utils/formatters.d.ts.map +1 -0
  185. package/build/utils/formatters.js +26 -0
  186. package/build/utils/formatters.js.map +1 -0
  187. package/build/utils/logger.d.ts +3 -0
  188. package/build/utils/logger.d.ts.map +1 -0
  189. package/build/utils/logger.js +30 -0
  190. package/build/utils/logger.js.map +1 -0
  191. package/openapi/monnify.yaml +9295 -0
  192. package/package.json +55 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generated.js","sourceRoot":"","sources":["../../src/schemas/generated.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import type { Env } from "../config/env.js";
2
+ export type OperationCategory = "collections" | "directDebit" | "verification" | "utilities";
3
+ export declare function assertEnvironmentConsistency(env: Env): void;
4
+ export declare function isOperationAllowed(category: OperationCategory, env: Env): boolean;
5
+ //# sourceMappingURL=guards.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"guards.d.ts","sourceRoot":"","sources":["../../src/security/guards.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAC;AAE5C,MAAM,MAAM,iBAAiB,GACzB,aAAa,GACb,aAAa,GACb,cAAc,GACd,WAAW,CAAC;AAIhB,wBAAgB,4BAA4B,CAAC,GAAG,EAAE,GAAG,GAAG,IAAI,CA2B3D;AAwBD,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,iBAAiB,EAC3B,GAAG,EAAE,GAAG,GACP,OAAO,CAKT"}
@@ -0,0 +1,43 @@
1
+ const API_KEY_PATTERN = /^MK_(TEST|PROD)_[A-Za-z0-9]{10}/;
2
+ export function assertEnvironmentConsistency(env) {
3
+ const isProductionUrl = env.MONNIFY_BASE_URL.includes("app.monnify.com");
4
+ const isProductionEnv = env.MONNIFY_ENV === "production";
5
+ if (isProductionUrl && !isProductionEnv) {
6
+ process.stderr.write("\n⚠️ WARNING: MONNIFY_BASE_URL points to production but MONNIFY_ENV is not \"production\".\n" +
7
+ ' Set MONNIFY_ENV=production explicitly to confirm this is intentional.\n\n');
8
+ process.exit(1);
9
+ }
10
+ if (!isProductionUrl && isProductionEnv) {
11
+ process.stderr.write("\n⚠️ WARNING: MONNIFY_ENV is \"production\" but MONNIFY_BASE_URL does not point to app.monnify.com.\n" +
12
+ " Check your configuration.\n\n");
13
+ process.exit(1);
14
+ }
15
+ assertApiKeyMatchesEnvironment(env.MONNIFY_API_KEY, isProductionEnv);
16
+ if (isProductionUrl && isProductionEnv) {
17
+ process.stderr.write("\n🔴 PRODUCTION MODE — All operations affect real funds and real accounts.\n\n");
18
+ }
19
+ }
20
+ function assertApiKeyMatchesEnvironment(apiKey, isProductionEnv) {
21
+ const match = API_KEY_PATTERN.exec(apiKey);
22
+ if (!match)
23
+ return;
24
+ const isSandboxKey = match[1] === "TEST";
25
+ if (isProductionEnv && isSandboxKey) {
26
+ process.stderr.write("\n❌ ERROR: A sandbox API key (MK_TEST_...) was provided but MONNIFY_ENV is \"production\".\n" +
27
+ " Use your live API key or switch to the sandbox environment.\n\n");
28
+ process.exit(1);
29
+ }
30
+ if (!isProductionEnv && !isSandboxKey) {
31
+ process.stderr.write("\n❌ ERROR: A production API key (MK_PROD_...) was provided but MONNIFY_ENV is \"sandbox\".\n" +
32
+ " Use your sandbox API key or set MONNIFY_ENV=production.\n\n");
33
+ process.exit(1);
34
+ }
35
+ }
36
+ export function isOperationAllowed(category, env) {
37
+ if (!env.MONNIFY_ALLOWED_OPERATIONS)
38
+ return true;
39
+ return env.MONNIFY_ALLOWED_OPERATIONS.split(",")
40
+ .map((s) => s.trim())
41
+ .includes(category);
42
+ }
43
+ //# sourceMappingURL=guards.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"guards.js","sourceRoot":"","sources":["../../src/security/guards.ts"],"names":[],"mappings":"AAQA,MAAM,eAAe,GAAG,iCAAiC,CAAC;AAE1D,MAAM,UAAU,4BAA4B,CAAC,GAAQ;IACnD,MAAM,eAAe,GAAG,GAAG,CAAC,gBAAgB,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC;IACzE,MAAM,eAAe,GAAG,GAAG,CAAC,WAAW,KAAK,YAAY,CAAC;IAEzD,IAAI,eAAe,IAAI,CAAC,eAAe,EAAE,CAAC;QACxC,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,+FAA+F;YAC7F,8EAA8E,CACjF,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,IAAI,CAAC,eAAe,IAAI,eAAe,EAAE,CAAC;QACxC,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,wGAAwG;YACtG,kCAAkC,CACrC,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,8BAA8B,CAAC,GAAG,CAAC,eAAe,EAAE,eAAe,CAAC,CAAC;IAErE,IAAI,eAAe,IAAI,eAAe,EAAE,CAAC;QACvC,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,gFAAgF,CACjF,CAAC;IACJ,CAAC;AACH,CAAC;AAED,SAAS,8BAA8B,CAAC,MAAc,EAAE,eAAwB;IAC9E,MAAM,KAAK,GAAG,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC3C,IAAI,CAAC,KAAK;QAAE,OAAO;IACnB,MAAM,YAAY,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC;IAEzC,IAAI,eAAe,IAAI,YAAY,EAAE,CAAC;QACpC,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,8FAA8F;YAC5F,oEAAoE,CACvE,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,IAAI,CAAC,eAAe,IAAI,CAAC,YAAY,EAAE,CAAC;QACtC,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,8FAA8F;YAC5F,gEAAgE,CACnE,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED,MAAM,UAAU,kBAAkB,CAChC,QAA2B,EAC3B,GAAQ;IAER,IAAI,CAAC,GAAG,CAAC,0BAA0B;QAAE,OAAO,IAAI,CAAC;IACjD,OAAO,GAAG,CAAC,0BAA0B,CAAC,KAAK,CAAC,GAAG,CAAC;SAC7C,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAuB,CAAC;SACzC,QAAQ,CAAC,QAAQ,CAAC,CAAC;AACxB,CAAC"}
@@ -0,0 +1,46 @@
1
+ declare const TRANSACTION_STATUS_FIELDS: readonly ["transactionReference", "paymentReference", "amountPaid", "totalPayable", "settledAmount", "paidOn", "paymentStatus", "currencyCode", "paymentMethod"];
2
+ declare const INITIATE_PAYMENT_FIELDS: readonly ["transactionReference", "paymentReference", "merchantName", "redirectUrl", "enabledPaymentMethod", "checkoutUrl"];
3
+ declare const RESERVE_ACCOUNT_FIELDS: readonly ["contractCode", "accountReference", "accountName", "currencyCode", "customerEmail", "customerName", "accounts", "collectionChannel", "reservationReference", "reservedAccountType", "status", "createdOn"];
4
+ declare const INVOICE_FIELDS: readonly ["amount", "invoiceReference", "invoiceStatus", "contractCode", "customerEmail", "customerName", "expiryDate", "createdOn", "checkoutUrl", "invoiceUrl", "offlinePaymentCode"];
5
+ declare const CHARGE_CARD_FIELDS: readonly ["transactionReference", "paymentReference", "authorizedAmount", "status", "message", "otpData", "secure3dData"];
6
+ declare const CHARGE_CARD_TOKEN_FIELDS: readonly ["transactionReference", "paymentReference", "amountPaid", "totalPayable", "settlementAmount", "paidOn", "paymentStatus", "currency", "paymentMethod"];
7
+ declare const AUTHORISE_CARD_OTP_FIELDS: readonly ["transactionReference", "paymentReference", "authorizedAmount", "status", "message"];
8
+ declare const AUTHORISE_CARD_3DS_FIELDS: readonly ["transactionReference", "paymentReference", "authorizedAmount", "status", "redirectUrl"];
9
+ declare const BANK_TRANSFER_PAYMENT_FIELDS: readonly ["transactionReference", "accountNumber", "accountName", "bankName", "bankCode", "expiryDate", "amount", "fee", "totalPayableFee"];
10
+ declare const REFUND_FIELDS: readonly ["transactionReference", "refundReference", "refundStatus", "refundAmount", "refundReason", "destinationAccountNumber", "destinationAccountBankCode", "createdOn"];
11
+ declare const MANDATE_FIELDS: readonly ["mandateReference", "mandateCode", "mandateStatus", "authorizationLink", "startDate", "endDate", "mandateAmount"];
12
+ declare const MANDATE_STATUS_FIELDS: readonly ["mandateReference", "mandateCode", "mandateStatus", "mandateAmount", "customerName", "customerAccountNumber", "startDate", "endDate", "authorizationLink"];
13
+ declare const DEBIT_STATUS_FIELDS: readonly ["debitReference", "mandateReference", "debitStatus", "amount", "debitDate"];
14
+ declare const CANCEL_MANDATE_FIELDS: readonly ["mandateReference", "mandateStatus"];
15
+ declare const BANK_ACCOUNT_FIELDS: readonly ["accountNumber", "accountName", "bankCode", "bankName"];
16
+ declare const BVN_FIELDS: readonly ["bvn", "nameMatch", "mobileNoMatch", "dateOfBirthMatch"];
17
+ declare const BVN_INFO_FIELDS: readonly ["bvn", "name", "dateOfBirth", "mobileNo", "bvnInformationMatch"];
18
+ declare const NIN_FIELDS: readonly ["nin", "firstName", "lastName", "dateOfBirth", "gender", "phoneNumber", "ninInformationMatch"];
19
+ declare const RESERVED_ACCOUNT_DETAILS_FIELDS: readonly ["contractCode", "accountReference", "accountName", "currencyCode", "customerEmail", "customerName", "accounts", "collectionChannel", "reservationReference", "reservedAccountType", "status", "createdOn", "restrictPaymentSource"];
20
+ declare const RESERVED_ACCOUNT_TRANSACTION_FIELDS: readonly ["transactionReference", "paymentReference", "amountPaid", "totalPayable", "paymentStatus", "paidOn", "paymentMethod", "currencyCode"];
21
+ declare const DEALLOCATE_ACCOUNT_FIELDS: readonly ["accountReference", "accountName", "status"];
22
+ declare const BANK_FIELDS: readonly ["name", "code"];
23
+ export declare function sanitiseInitiatePaymentResponse(raw: Record<string, unknown>): Record<(typeof INITIATE_PAYMENT_FIELDS)[number], unknown>;
24
+ export declare function sanitiseTransactionStatusResponse(raw: Record<string, unknown>): Record<(typeof TRANSACTION_STATUS_FIELDS)[number], unknown>;
25
+ export declare function sanitiseReserveAccountResponse(raw: Record<string, unknown>): Record<(typeof RESERVE_ACCOUNT_FIELDS)[number], unknown>;
26
+ export declare function sanitiseInvoiceResponse(raw: Record<string, unknown>): Record<(typeof INVOICE_FIELDS)[number], unknown>;
27
+ export declare function sanitiseChargeCardResponse(raw: Record<string, unknown>): Record<(typeof CHARGE_CARD_FIELDS)[number], unknown>;
28
+ export declare function sanitiseChargeCardTokenResponse(raw: Record<string, unknown>): Record<(typeof CHARGE_CARD_TOKEN_FIELDS)[number], unknown>;
29
+ export declare function sanitiseAuthoriseCardOtpResponse(raw: Record<string, unknown>): Record<(typeof AUTHORISE_CARD_OTP_FIELDS)[number], unknown>;
30
+ export declare function sanitiseAuthoriseCard3dsResponse(raw: Record<string, unknown>): Record<(typeof AUTHORISE_CARD_3DS_FIELDS)[number], unknown>;
31
+ export declare function sanitiseBankTransferPaymentResponse(raw: Record<string, unknown>): Record<(typeof BANK_TRANSFER_PAYMENT_FIELDS)[number], unknown>;
32
+ export declare function sanitiseRefundResponse(raw: Record<string, unknown>): Record<(typeof REFUND_FIELDS)[number], unknown>;
33
+ export declare function sanitiseMandateResponse(raw: Record<string, unknown>): Record<(typeof MANDATE_FIELDS)[number], unknown>;
34
+ export declare function sanitiseMandateStatusResponse(raw: Record<string, unknown>): Record<(typeof MANDATE_STATUS_FIELDS)[number], unknown>;
35
+ export declare function sanitiseDebitStatusResponse(raw: Record<string, unknown>): Record<(typeof DEBIT_STATUS_FIELDS)[number], unknown>;
36
+ export declare function sanitiseCancelMandateResponse(raw: Record<string, unknown>): Record<(typeof CANCEL_MANDATE_FIELDS)[number], unknown>;
37
+ export declare function sanitiseBankAccountResponse(raw: Record<string, unknown>): Record<(typeof BANK_ACCOUNT_FIELDS)[number], unknown>;
38
+ export declare function sanitiseBvnResponse(raw: Record<string, unknown>): Record<(typeof BVN_FIELDS)[number], unknown>;
39
+ export declare function sanitiseBvnInfoResponse(raw: Record<string, unknown>): Record<(typeof BVN_INFO_FIELDS)[number], unknown>;
40
+ export declare function sanitiseNinResponse(raw: Record<string, unknown>): Record<(typeof NIN_FIELDS)[number], unknown>;
41
+ export declare function sanitiseBankListResponse(raw: Array<Record<string, unknown>>): Array<Record<(typeof BANK_FIELDS)[number], unknown>>;
42
+ export declare function sanitiseReservedAccountDetailsResponse(raw: Record<string, unknown>): Record<(typeof RESERVED_ACCOUNT_DETAILS_FIELDS)[number], unknown>;
43
+ export declare function sanitiseReservedAccountTransactionsResponse(raw: Array<Record<string, unknown>>): Array<Record<(typeof RESERVED_ACCOUNT_TRANSACTION_FIELDS)[number], unknown>>;
44
+ export declare function sanitiseDeallocateAccountResponse(raw: Record<string, unknown>): Record<(typeof DEALLOCATE_ACCOUNT_FIELDS)[number], unknown>;
45
+ export {};
46
+ //# sourceMappingURL=sanitiser.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sanitiser.d.ts","sourceRoot":"","sources":["../../src/security/sanitiser.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,269 @@
1
+ // Collections — whitelisted response fields
2
+ const TRANSACTION_STATUS_FIELDS = [
3
+ "transactionReference",
4
+ "paymentReference",
5
+ "amountPaid",
6
+ "totalPayable",
7
+ "settledAmount",
8
+ "paidOn",
9
+ "paymentStatus",
10
+ "currencyCode",
11
+ "paymentMethod",
12
+ ];
13
+ const INITIATE_PAYMENT_FIELDS = [
14
+ "transactionReference",
15
+ "paymentReference",
16
+ "merchantName",
17
+ "redirectUrl",
18
+ "enabledPaymentMethod",
19
+ "checkoutUrl",
20
+ ];
21
+ const RESERVE_ACCOUNT_FIELDS = [
22
+ "contractCode",
23
+ "accountReference",
24
+ "accountName",
25
+ "currencyCode",
26
+ "customerEmail",
27
+ "customerName",
28
+ "accounts",
29
+ "collectionChannel",
30
+ "reservationReference",
31
+ "reservedAccountType",
32
+ "status",
33
+ "createdOn",
34
+ ];
35
+ const INVOICE_FIELDS = [
36
+ "amount",
37
+ "invoiceReference",
38
+ "invoiceStatus",
39
+ "contractCode",
40
+ "customerEmail",
41
+ "customerName",
42
+ "expiryDate",
43
+ "createdOn",
44
+ "checkoutUrl",
45
+ "invoiceUrl",
46
+ "offlinePaymentCode",
47
+ ];
48
+ const CHARGE_CARD_FIELDS = [
49
+ "transactionReference",
50
+ "paymentReference",
51
+ "authorizedAmount",
52
+ "status",
53
+ "message",
54
+ "otpData",
55
+ "secure3dData",
56
+ ];
57
+ const CHARGE_CARD_TOKEN_FIELDS = [
58
+ "transactionReference",
59
+ "paymentReference",
60
+ "amountPaid",
61
+ "totalPayable",
62
+ "settlementAmount",
63
+ "paidOn",
64
+ "paymentStatus",
65
+ "currency",
66
+ "paymentMethod",
67
+ ];
68
+ const AUTHORISE_CARD_OTP_FIELDS = [
69
+ "transactionReference",
70
+ "paymentReference",
71
+ "authorizedAmount",
72
+ "status",
73
+ "message",
74
+ ];
75
+ const AUTHORISE_CARD_3DS_FIELDS = [
76
+ "transactionReference",
77
+ "paymentReference",
78
+ "authorizedAmount",
79
+ "status",
80
+ "redirectUrl",
81
+ ];
82
+ const BANK_TRANSFER_PAYMENT_FIELDS = [
83
+ "transactionReference",
84
+ "accountNumber",
85
+ "accountName",
86
+ "bankName",
87
+ "bankCode",
88
+ "expiryDate",
89
+ "amount",
90
+ "fee",
91
+ "totalPayableFee",
92
+ ];
93
+ const REFUND_FIELDS = [
94
+ "transactionReference",
95
+ "refundReference",
96
+ "refundStatus",
97
+ "refundAmount",
98
+ "refundReason",
99
+ "destinationAccountNumber",
100
+ "destinationAccountBankCode",
101
+ "createdOn",
102
+ ];
103
+ // Direct Debit — whitelisted fields
104
+ const MANDATE_FIELDS = [
105
+ "mandateReference",
106
+ "mandateCode",
107
+ "mandateStatus",
108
+ "authorizationLink",
109
+ "startDate",
110
+ "endDate",
111
+ "mandateAmount",
112
+ ];
113
+ const MANDATE_STATUS_FIELDS = [
114
+ "mandateReference",
115
+ "mandateCode",
116
+ "mandateStatus",
117
+ "mandateAmount",
118
+ "customerName",
119
+ "customerAccountNumber",
120
+ "startDate",
121
+ "endDate",
122
+ "authorizationLink",
123
+ ];
124
+ const DEBIT_STATUS_FIELDS = [
125
+ "debitReference",
126
+ "mandateReference",
127
+ "debitStatus",
128
+ "amount",
129
+ "debitDate",
130
+ ];
131
+ const CANCEL_MANDATE_FIELDS = ["mandateReference", "mandateStatus"];
132
+ // Verification — whitelisted fields
133
+ const BANK_ACCOUNT_FIELDS = [
134
+ "accountNumber",
135
+ "accountName",
136
+ "bankCode",
137
+ "bankName",
138
+ ];
139
+ const BVN_FIELDS = [
140
+ "bvn",
141
+ "nameMatch",
142
+ "mobileNoMatch",
143
+ "dateOfBirthMatch",
144
+ ];
145
+ const BVN_INFO_FIELDS = [
146
+ "bvn",
147
+ "name",
148
+ "dateOfBirth",
149
+ "mobileNo",
150
+ "bvnInformationMatch",
151
+ ];
152
+ const NIN_FIELDS = [
153
+ "nin",
154
+ "firstName",
155
+ "lastName",
156
+ "dateOfBirth",
157
+ "gender",
158
+ "phoneNumber",
159
+ "ninInformationMatch",
160
+ ];
161
+ // Reserved account management — whitelisted fields
162
+ const RESERVED_ACCOUNT_DETAILS_FIELDS = [
163
+ "contractCode",
164
+ "accountReference",
165
+ "accountName",
166
+ "currencyCode",
167
+ "customerEmail",
168
+ "customerName",
169
+ "accounts",
170
+ "collectionChannel",
171
+ "reservationReference",
172
+ "reservedAccountType",
173
+ "status",
174
+ "createdOn",
175
+ "restrictPaymentSource",
176
+ ];
177
+ const RESERVED_ACCOUNT_TRANSACTION_FIELDS = [
178
+ "transactionReference",
179
+ "paymentReference",
180
+ "amountPaid",
181
+ "totalPayable",
182
+ "paymentStatus",
183
+ "paidOn",
184
+ "paymentMethod",
185
+ "currencyCode",
186
+ ];
187
+ const DEALLOCATE_ACCOUNT_FIELDS = [
188
+ "accountReference",
189
+ "accountName",
190
+ "status",
191
+ ];
192
+ // Bank list — whitelisted fields
193
+ const BANK_FIELDS = ["name", "code"];
194
+ function pickFields(raw, fields) {
195
+ const result = {};
196
+ for (const field of fields) {
197
+ if (field in raw && raw[field] !== undefined && raw[field] !== null) {
198
+ result[field] = raw[field];
199
+ }
200
+ }
201
+ return result;
202
+ }
203
+ export function sanitiseInitiatePaymentResponse(raw) {
204
+ return pickFields(raw, INITIATE_PAYMENT_FIELDS);
205
+ }
206
+ export function sanitiseTransactionStatusResponse(raw) {
207
+ return pickFields(raw, TRANSACTION_STATUS_FIELDS);
208
+ }
209
+ export function sanitiseReserveAccountResponse(raw) {
210
+ return pickFields(raw, RESERVE_ACCOUNT_FIELDS);
211
+ }
212
+ export function sanitiseInvoiceResponse(raw) {
213
+ return pickFields(raw, INVOICE_FIELDS);
214
+ }
215
+ export function sanitiseChargeCardResponse(raw) {
216
+ return pickFields(raw, CHARGE_CARD_FIELDS);
217
+ }
218
+ export function sanitiseChargeCardTokenResponse(raw) {
219
+ return pickFields(raw, CHARGE_CARD_TOKEN_FIELDS);
220
+ }
221
+ export function sanitiseAuthoriseCardOtpResponse(raw) {
222
+ return pickFields(raw, AUTHORISE_CARD_OTP_FIELDS);
223
+ }
224
+ export function sanitiseAuthoriseCard3dsResponse(raw) {
225
+ return pickFields(raw, AUTHORISE_CARD_3DS_FIELDS);
226
+ }
227
+ export function sanitiseBankTransferPaymentResponse(raw) {
228
+ return pickFields(raw, BANK_TRANSFER_PAYMENT_FIELDS);
229
+ }
230
+ export function sanitiseRefundResponse(raw) {
231
+ return pickFields(raw, REFUND_FIELDS);
232
+ }
233
+ export function sanitiseMandateResponse(raw) {
234
+ return pickFields(raw, MANDATE_FIELDS);
235
+ }
236
+ export function sanitiseMandateStatusResponse(raw) {
237
+ return pickFields(raw, MANDATE_STATUS_FIELDS);
238
+ }
239
+ export function sanitiseDebitStatusResponse(raw) {
240
+ return pickFields(raw, DEBIT_STATUS_FIELDS);
241
+ }
242
+ export function sanitiseCancelMandateResponse(raw) {
243
+ return pickFields(raw, CANCEL_MANDATE_FIELDS);
244
+ }
245
+ export function sanitiseBankAccountResponse(raw) {
246
+ return pickFields(raw, BANK_ACCOUNT_FIELDS);
247
+ }
248
+ export function sanitiseBvnResponse(raw) {
249
+ return pickFields(raw, BVN_FIELDS);
250
+ }
251
+ export function sanitiseBvnInfoResponse(raw) {
252
+ return pickFields(raw, BVN_INFO_FIELDS);
253
+ }
254
+ export function sanitiseNinResponse(raw) {
255
+ return pickFields(raw, NIN_FIELDS);
256
+ }
257
+ export function sanitiseBankListResponse(raw) {
258
+ return raw.map((bank) => pickFields(bank, BANK_FIELDS));
259
+ }
260
+ export function sanitiseReservedAccountDetailsResponse(raw) {
261
+ return pickFields(raw, RESERVED_ACCOUNT_DETAILS_FIELDS);
262
+ }
263
+ export function sanitiseReservedAccountTransactionsResponse(raw) {
264
+ return raw.map((tx) => pickFields(tx, RESERVED_ACCOUNT_TRANSACTION_FIELDS));
265
+ }
266
+ export function sanitiseDeallocateAccountResponse(raw) {
267
+ return pickFields(raw, DEALLOCATE_ACCOUNT_FIELDS);
268
+ }
269
+ //# sourceMappingURL=sanitiser.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sanitiser.js","sourceRoot":"","sources":["../../src/security/sanitiser.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import type { Tool } from "@modelcontextprotocol/sdk/types.js";
2
+ import type { McpToolResult } from "../../types/mcp.js";
3
+ import { AuthoriseCard3dsInputSchema } from "../../schemas/extended/collections.js";
4
+ declare const definition: Tool;
5
+ declare function handler(args: unknown): Promise<McpToolResult>;
6
+ export { definition, AuthoriseCard3dsInputSchema as inputSchema, handler };
7
+ //# sourceMappingURL=authoriseCard3ds.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"authoriseCard3ds.d.ts","sourceRoot":"","sources":["../../../src/tools/collections/authoriseCard3ds.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAG/D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAQxD,OAAO,EAAE,2BAA2B,EAAE,MAAM,uCAAuC,CAAC;AAGpF,QAAA,MAAM,UAAU,EAAE,IAcjB,CAAC;AAEF,iBAAe,OAAO,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC,aAAa,CAAC,CAmC5D;AAID,OAAO,EAAE,UAAU,EAAE,2BAA2B,IAAI,WAAW,EAAE,OAAO,EAAE,CAAC"}