@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,15 @@
1
+ import { McpToolError } from "../utils/errors.js";
2
+ const registry = new Map();
3
+ export function registerTool(entry) {
4
+ registry.set(entry.definition.name, entry);
5
+ }
6
+ export function getAllToolDefinitions() {
7
+ return [...registry.values()].map((e) => e.definition);
8
+ }
9
+ export async function dispatchTool(name, args) {
10
+ const entry = registry.get(name);
11
+ if (!entry)
12
+ throw new McpToolError(name, new Error(`Unknown tool: ${name}`));
13
+ return entry.handler(args);
14
+ }
15
+ //# sourceMappingURL=registry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/tools/registry.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAOlD,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAqB,CAAC;AAE9C,MAAM,UAAU,YAAY,CAAC,KAAgB;IAC3C,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;AAC7C,CAAC;AAED,MAAM,UAAU,qBAAqB;IACnC,OAAO,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;AACzD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,IAAY,EACZ,IAAa;IAEb,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACjC,IAAI,CAAC,KAAK;QAAE,MAAM,IAAI,YAAY,CAAC,IAAI,EAAE,IAAI,KAAK,CAAC,iBAAiB,IAAI,EAAE,CAAC,CAAC,CAAC;IAC7E,OAAO,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;AAC7B,CAAC"}
@@ -0,0 +1,8 @@
1
+ import type { Tool } from "@modelcontextprotocol/sdk/types.js";
2
+ import { z } from "zod";
3
+ import type { McpToolResult } from "../../types/mcp.js";
4
+ declare const InputSchema: z.ZodObject<{}, "strip", z.ZodTypeAny, {}, {}>;
5
+ declare const definition: Tool;
6
+ declare function handler(_args: z.infer<typeof InputSchema>): Promise<McpToolResult>;
7
+ export { definition, InputSchema as inputSchema, handler };
8
+ //# sourceMappingURL=getSupportedBanks.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getSupportedBanks.d.ts","sourceRoot":"","sources":["../../../src/tools/utilities/getSupportedBanks.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAC/D,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AASxD,QAAA,MAAM,WAAW,gDAAe,CAAC;AAEjC,QAAA,MAAM,UAAU,EAAE,IAcjB,CAAC;AAEF,iBAAe,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,GAAG,OAAO,CAAC,aAAa,CAAC,CAmBjF;AAID,OAAO,EAAE,UAAU,EAAE,WAAW,IAAI,WAAW,EAAE,OAAO,EAAE,CAAC"}
@@ -0,0 +1,47 @@
1
+ import { z } from "zod";
2
+ import { zodToJsonSchema } from "zod-to-json-schema";
3
+ import { apiGet } from "../../client/monnifyClient.js";
4
+ import { sanitiseBankListResponse } from "../../security/sanitiser.js";
5
+ import { registerTool } from "../registry.js";
6
+ import { MonnifyApiError, ValidationError } from "../../utils/errors.js";
7
+ import { errorResult } from "../../types/mcp.js";
8
+ import { formatSupportedBanks } from "../../utils/format.js";
9
+ import { getResponseFormat } from "../../utils/clientContext.js";
10
+ const InputSchema = z.object({});
11
+ const definition = {
12
+ name: "monnify_get_supported_banks",
13
+ description: `Returns all Nigerian banks supported by Monnify for payments and verification.
14
+
15
+ WHEN TO USE: Before calling monnify_verify_bank_account, monnify_create_mandate, or monnify_process_refund to look up the correct 3-digit bank code for a given bank name. Also useful to present bank choices to users.
16
+
17
+ PREREQUISITES: None.
18
+
19
+ SIDE EFFECTS: None. Read-only operation.
20
+
21
+ MFA NOTE: Not applicable.
22
+
23
+ KEY OUTPUT FIELDS: name (bank display name), code (3-digit bank code used in other API calls).`,
24
+ inputSchema: zodToJsonSchema(InputSchema),
25
+ };
26
+ async function handler(_args) {
27
+ try {
28
+ InputSchema.parse(_args);
29
+ const banks = await apiGet("/api/v1/banks");
30
+ const sanitised = sanitiseBankListResponse(Array.isArray(banks) ? banks : []);
31
+ return {
32
+ content: [{ type: "text", text: getResponseFormat() === "json" ? JSON.stringify(sanitised, null, 2) : formatSupportedBanks(sanitised) }],
33
+ };
34
+ }
35
+ catch (error) {
36
+ if (error instanceof MonnifyApiError) {
37
+ return { content: [error.toMcpContent()], isError: true };
38
+ }
39
+ if (error instanceof ValidationError) {
40
+ return { content: [error.toMcpContent()], isError: true };
41
+ }
42
+ return errorResult(`monnify_get_supported_banks failed: ${String(error)}`);
43
+ }
44
+ }
45
+ registerTool({ definition, handler: (args) => handler(args) });
46
+ export { definition, InputSchema as inputSchema, handler };
47
+ //# sourceMappingURL=getSupportedBanks.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getSupportedBanks.js","sourceRoot":"","sources":["../../../src/tools/utilities/getSupportedBanks.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD,OAAO,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAC;AACvD,OAAO,EAAE,wBAAwB,EAAE,MAAM,6BAA6B,CAAC;AACvE,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACzE,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AAEjE,MAAM,WAAW,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;AAEjC,MAAM,UAAU,GAAS;IACvB,IAAI,EAAE,6BAA6B;IACnC,WAAW,EAAE;;;;;;;;;;+FAUgF;IAC7F,WAAW,EAAE,eAAe,CAAC,WAAW,CAAwB;CACjE,CAAC;AAEF,KAAK,UAAU,OAAO,CAAC,KAAkC;IACvD,IAAI,CAAC;QACH,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACzB,MAAM,KAAK,GAAG,MAAM,MAAM,CAAiC,eAAe,CAAC,CAAC;QAC5E,MAAM,SAAS,GAAG,wBAAwB,CACxC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAClC,CAAC;QACF,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,iBAAiB,EAAE,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,oBAAoB,CAAC,SAA2C,CAAC,EAAE,CAAC;SAC3K,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,eAAe,EAAE,CAAC;YACrC,OAAO,EAAE,OAAO,EAAE,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QAC5D,CAAC;QACD,IAAI,KAAK,YAAY,eAAe,EAAE,CAAC;YACrC,OAAO,EAAE,OAAO,EAAE,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QAC5D,CAAC;QACD,OAAO,WAAW,CAAC,uCAAuC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAC7E,CAAC;AACH,CAAC;AAED,YAAY,CAAC,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,IAAmC,CAAC,EAAE,CAAC,CAAC;AAE9F,OAAO,EAAE,UAAU,EAAE,WAAW,IAAI,WAAW,EAAE,OAAO,EAAE,CAAC"}
@@ -0,0 +1,47 @@
1
+ import type { Tool } from "@modelcontextprotocol/sdk/types.js";
2
+ import { z } from "zod";
3
+ import type { McpToolResult } from "../../types/mcp.js";
4
+ declare const InputSchema: z.ZodObject<{
5
+ page: z.ZodDefault<z.ZodNumber>;
6
+ size: z.ZodDefault<z.ZodNumber>;
7
+ from: z.ZodOptional<z.ZodString>;
8
+ to: z.ZodOptional<z.ZodString>;
9
+ paymentStatus: z.ZodOptional<z.ZodEnum<["PAID", "PENDING", "CANCELLED", "FAILED"]>>;
10
+ paymentReference: z.ZodOptional<z.ZodString>;
11
+ transactionReference: z.ZodOptional<z.ZodString>;
12
+ customerName: z.ZodOptional<z.ZodString>;
13
+ customerEmail: z.ZodOptional<z.ZodString>;
14
+ amount: z.ZodOptional<z.ZodNumber>;
15
+ fromAmount: z.ZodOptional<z.ZodNumber>;
16
+ toAmount: z.ZodOptional<z.ZodNumber>;
17
+ }, "strip", z.ZodTypeAny, {
18
+ size: number;
19
+ page: number;
20
+ transactionReference?: string | undefined;
21
+ paymentReference?: string | undefined;
22
+ paymentStatus?: "PAID" | "FAILED" | "CANCELLED" | "PENDING" | undefined;
23
+ customerEmail?: string | undefined;
24
+ customerName?: string | undefined;
25
+ amount?: number | undefined;
26
+ from?: string | undefined;
27
+ to?: string | undefined;
28
+ fromAmount?: number | undefined;
29
+ toAmount?: number | undefined;
30
+ }, {
31
+ transactionReference?: string | undefined;
32
+ paymentReference?: string | undefined;
33
+ paymentStatus?: "PAID" | "FAILED" | "CANCELLED" | "PENDING" | undefined;
34
+ customerEmail?: string | undefined;
35
+ customerName?: string | undefined;
36
+ amount?: number | undefined;
37
+ size?: number | undefined;
38
+ page?: number | undefined;
39
+ from?: string | undefined;
40
+ to?: string | undefined;
41
+ fromAmount?: number | undefined;
42
+ toAmount?: number | undefined;
43
+ }>;
44
+ declare const definition: Tool;
45
+ declare function handler(args: z.infer<typeof InputSchema>): Promise<McpToolResult>;
46
+ export { definition, InputSchema as inputSchema, handler };
47
+ //# sourceMappingURL=getTransactionList.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getTransactionList.d.ts","sourceRoot":"","sources":["../../../src/tools/utilities/getTransactionList.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAC/D,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAMxD,QAAA,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA0Df,CAAC;AAEH,QAAA,MAAM,UAAU,EAAE,IAcjB,CAAC;AAEF,iBAAe,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,GAAG,OAAO,CAAC,aAAa,CAAC,CA4DhF;AAID,OAAO,EAAE,UAAU,EAAE,WAAW,IAAI,WAAW,EAAE,OAAO,EAAE,CAAC"}
@@ -0,0 +1,136 @@
1
+ import { z } from "zod";
2
+ import { zodToJsonSchema } from "zod-to-json-schema";
3
+ import { apiGet } from "../../client/monnifyClient.js";
4
+ import { registerTool } from "../registry.js";
5
+ import { MonnifyApiError, ValidationError } from "../../utils/errors.js";
6
+ import { errorResult } from "../../types/mcp.js";
7
+ const InputSchema = z.object({
8
+ page: z
9
+ .number()
10
+ .int()
11
+ .min(0)
12
+ .default(0)
13
+ .describe("Page number (zero-indexed). Default is 0."),
14
+ size: z
15
+ .number()
16
+ .int()
17
+ .min(1)
18
+ .max(100)
19
+ .default(10)
20
+ .describe("Number of transactions per page. Default is 10, max is 100."),
21
+ from: z
22
+ .string()
23
+ .optional()
24
+ .describe("Filter start date in ISO 8601 format (YYYY-MM-DDTHH:mm:ss)."),
25
+ to: z
26
+ .string()
27
+ .optional()
28
+ .describe("Filter end date in ISO 8601 format (YYYY-MM-DDTHH:mm:ss)."),
29
+ paymentStatus: z
30
+ .enum(["PAID", "PENDING", "CANCELLED", "FAILED"])
31
+ .optional()
32
+ .describe("Filter by payment status."),
33
+ paymentReference: z
34
+ .string()
35
+ .optional()
36
+ .describe("Filter by your payment reference."),
37
+ transactionReference: z
38
+ .string()
39
+ .optional()
40
+ .describe("Filter by Monnify transaction reference."),
41
+ customerName: z
42
+ .string()
43
+ .optional()
44
+ .describe("Filter by customer name."),
45
+ customerEmail: z
46
+ .string()
47
+ .email()
48
+ .optional()
49
+ .describe("Filter by customer email address."),
50
+ amount: z
51
+ .number()
52
+ .positive()
53
+ .optional()
54
+ .describe("Filter by exact transaction amount in Naira."),
55
+ fromAmount: z
56
+ .number()
57
+ .positive()
58
+ .optional()
59
+ .describe("Filter transactions with amount greater than or equal to this value in Naira."),
60
+ toAmount: z
61
+ .number()
62
+ .positive()
63
+ .optional()
64
+ .describe("Filter transactions with amount less than or equal to this value in Naira."),
65
+ });
66
+ const definition = {
67
+ name: "monnify_get_transaction_list",
68
+ description: `Search and list transactions with optional filters.
69
+
70
+ WHEN TO USE: For reporting, reconciliation, or finding a specific transaction when you have partial information (e.g. customer email or date range but not the full reference).
71
+
72
+ PREREQUISITES: None.
73
+
74
+ SIDE EFFECTS: None. Read-only operation.
75
+
76
+ MFA NOTE: Not applicable.
77
+
78
+ KEY OUTPUT FIELDS: content (array of transactions), totalElements, totalPages, size, number (current page).`,
79
+ inputSchema: zodToJsonSchema(InputSchema),
80
+ };
81
+ async function handler(args) {
82
+ try {
83
+ const parsed = InputSchema.parse(args);
84
+ const result = await apiGet("/api/v1/transactions/search", {
85
+ page: parsed.page,
86
+ size: parsed.size,
87
+ from: parsed.from,
88
+ to: parsed.to,
89
+ paymentStatus: parsed.paymentStatus,
90
+ paymentReference: parsed.paymentReference,
91
+ transactionReference: parsed.transactionReference,
92
+ customerName: parsed.customerName,
93
+ customerEmail: parsed.customerEmail,
94
+ amount: parsed.amount,
95
+ fromAmount: parsed.fromAmount,
96
+ toAmount: parsed.toAmount,
97
+ });
98
+ const content = Array.isArray(result["content"]) ? result["content"] : [];
99
+ const safeContent = content.map((tx) => ({
100
+ transactionReference: tx["transactionReference"],
101
+ paymentReference: tx["paymentReference"],
102
+ amountPaid: tx["amountPaid"],
103
+ totalPayable: tx["totalPayable"],
104
+ paymentStatus: tx["paymentStatus"],
105
+ paidOn: tx["paidOn"],
106
+ paymentMethod: tx["paymentMethod"],
107
+ currencyCode: tx["currencyCode"],
108
+ }));
109
+ return {
110
+ content: [
111
+ {
112
+ type: "text",
113
+ text: JSON.stringify({
114
+ content: safeContent,
115
+ totalElements: result["totalElements"],
116
+ totalPages: result["totalPages"],
117
+ size: result["size"],
118
+ number: result["number"],
119
+ }, null, 2),
120
+ },
121
+ ],
122
+ };
123
+ }
124
+ catch (error) {
125
+ if (error instanceof MonnifyApiError) {
126
+ return { content: [error.toMcpContent()], isError: true };
127
+ }
128
+ if (error instanceof ValidationError) {
129
+ return { content: [error.toMcpContent()], isError: true };
130
+ }
131
+ return errorResult(`monnify_get_transaction_list failed: ${String(error)}`);
132
+ }
133
+ }
134
+ registerTool({ definition, handler: (args) => handler(args) });
135
+ export { definition, InputSchema as inputSchema, handler };
136
+ //# sourceMappingURL=getTransactionList.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getTransactionList.js","sourceRoot":"","sources":["../../../src/tools/utilities/getTransactionList.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD,OAAO,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACzE,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD,MAAM,WAAW,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3B,IAAI,EAAE,CAAC;SACJ,MAAM,EAAE;SACR,GAAG,EAAE;SACL,GAAG,CAAC,CAAC,CAAC;SACN,OAAO,CAAC,CAAC,CAAC;SACV,QAAQ,CAAC,2CAA2C,CAAC;IACxD,IAAI,EAAE,CAAC;SACJ,MAAM,EAAE;SACR,GAAG,EAAE;SACL,GAAG,CAAC,CAAC,CAAC;SACN,GAAG,CAAC,GAAG,CAAC;SACR,OAAO,CAAC,EAAE,CAAC;SACX,QAAQ,CAAC,6DAA6D,CAAC;IAC1E,IAAI,EAAE,CAAC;SACJ,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,6DAA6D,CAAC;IAC1E,EAAE,EAAE,CAAC;SACF,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,2DAA2D,CAAC;IACxE,aAAa,EAAE,CAAC;SACb,IAAI,CAAC,CAAC,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC;SAChD,QAAQ,EAAE;SACV,QAAQ,CAAC,2BAA2B,CAAC;IACxC,gBAAgB,EAAE,CAAC;SAChB,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,mCAAmC,CAAC;IAChD,oBAAoB,EAAE,CAAC;SACpB,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,0CAA0C,CAAC;IACvD,YAAY,EAAE,CAAC;SACZ,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,0BAA0B,CAAC;IACvC,aAAa,EAAE,CAAC;SACb,MAAM,EAAE;SACR,KAAK,EAAE;SACP,QAAQ,EAAE;SACV,QAAQ,CAAC,mCAAmC,CAAC;IAChD,MAAM,EAAE,CAAC;SACN,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,EAAE;SACV,QAAQ,CAAC,8CAA8C,CAAC;IAC3D,UAAU,EAAE,CAAC;SACV,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,EAAE;SACV,QAAQ,CAAC,+EAA+E,CAAC;IAC5F,QAAQ,EAAE,CAAC;SACR,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,EAAE;SACV,QAAQ,CAAC,4EAA4E,CAAC;CAC1F,CAAC,CAAC;AAEH,MAAM,UAAU,GAAS;IACvB,IAAI,EAAE,8BAA8B;IACpC,WAAW,EAAE;;;;;;;;;;4GAU6F;IAC1G,WAAW,EAAE,eAAe,CAAC,WAAW,CAAwB;CACjE,CAAC;AAEF,KAAK,UAAU,OAAO,CAAC,IAAiC;IACtD,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACvC,MAAM,MAAM,GAAG,MAAM,MAAM,CACzB,6BAA6B,EAC7B;YACE,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,EAAE,EAAE,MAAM,CAAC,EAAE;YACb,aAAa,EAAE,MAAM,CAAC,aAAa;YACnC,gBAAgB,EAAE,MAAM,CAAC,gBAAgB;YACzC,oBAAoB,EAAE,MAAM,CAAC,oBAAoB;YACjD,YAAY,EAAE,MAAM,CAAC,YAAY;YACjC,aAAa,EAAE,MAAM,CAAC,aAAa;YACnC,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,QAAQ,EAAE,MAAM,CAAC,QAAQ;SAC1B,CACF,CAAC;QAEF,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1E,MAAM,WAAW,GAAI,OAA0C,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;YAC3E,oBAAoB,EAAE,EAAE,CAAC,sBAAsB,CAAC;YAChD,gBAAgB,EAAE,EAAE,CAAC,kBAAkB,CAAC;YACxC,UAAU,EAAE,EAAE,CAAC,YAAY,CAAC;YAC5B,YAAY,EAAE,EAAE,CAAC,cAAc,CAAC;YAChC,aAAa,EAAE,EAAE,CAAC,eAAe,CAAC;YAClC,MAAM,EAAE,EAAE,CAAC,QAAQ,CAAC;YACpB,aAAa,EAAE,EAAE,CAAC,eAAe,CAAC;YAClC,YAAY,EAAE,EAAE,CAAC,cAAc,CAAC;SACjC,CAAC,CAAC,CAAC;QAEJ,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAClB;wBACE,OAAO,EAAE,WAAW;wBACpB,aAAa,EAAE,MAAM,CAAC,eAAe,CAAC;wBACtC,UAAU,EAAE,MAAM,CAAC,YAAY,CAAC;wBAChC,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC;wBACpB,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC;qBACzB,EACD,IAAI,EACJ,CAAC,CACF;iBACF;aACF;SACF,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,eAAe,EAAE,CAAC;YACrC,OAAO,EAAE,OAAO,EAAE,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QAC5D,CAAC;QACD,IAAI,KAAK,YAAY,eAAe,EAAE,CAAC;YACrC,OAAO,EAAE,OAAO,EAAE,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QAC5D,CAAC;QACD,OAAO,WAAW,CAAC,wCAAwC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAC9E,CAAC;AACH,CAAC;AAED,YAAY,CAAC,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,IAAmC,CAAC,EAAE,CAAC,CAAC;AAE9F,OAAO,EAAE,UAAU,EAAE,WAAW,IAAI,WAAW,EAAE,OAAO,EAAE,CAAC"}
@@ -0,0 +1,7 @@
1
+ import type { Tool } from "@modelcontextprotocol/sdk/types.js";
2
+ import type { McpToolResult } from "../../types/mcp.js";
3
+ import { VerifyBankAccountInputSchema } from "../../schemas/extended/verification.js";
4
+ declare const definition: Tool;
5
+ declare function handler(args: unknown): Promise<McpToolResult>;
6
+ export { definition, VerifyBankAccountInputSchema as inputSchema, handler };
7
+ //# sourceMappingURL=verifyBankAccount.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"verifyBankAccount.d.ts","sourceRoot":"","sources":["../../../src/tools/verification/verifyBankAccount.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAG/D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAMxD,OAAO,EAAE,4BAA4B,EAAE,MAAM,wCAAwC,CAAC;AAItF,QAAA,MAAM,UAAU,EAAE,IAcjB,CAAC;AAEF,iBAAe,OAAO,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC,aAAa,CAAC,CA+B5D;AAID,OAAO,EAAE,UAAU,EAAE,4BAA4B,IAAI,WAAW,EAAE,OAAO,EAAE,CAAC"}
@@ -0,0 +1,58 @@
1
+ import { z } from "zod";
2
+ import { zodToJsonSchema } from "zod-to-json-schema";
3
+ import { apiGet } from "../../client/monnifyClient.js";
4
+ import { sanitiseBankAccountResponse } from "../../security/sanitiser.js";
5
+ import { registerTool } from "../registry.js";
6
+ import { MonnifyApiError } from "../../utils/errors.js";
7
+ import { errorResult } from "../../types/mcp.js";
8
+ import { VerifyBankAccountInputSchema } from "../../schemas/extended/verification.js";
9
+ import { formatBankAccountVerification } from "../../utils/format.js";
10
+ import { getResponseFormat } from "../../utils/clientContext.js";
11
+ const definition = {
12
+ name: "monnify_verify_bank_account",
13
+ description: `Verifies a Nigerian bank account number and returns the account holder name.
14
+
15
+ WHEN TO USE: Before initiating a refund, creating a direct debit mandate, or confirming account details provided by a user. Always verify account details before committing them to a mandate or refund.
16
+
17
+ PREREQUISITES: None. Call monnify_get_supported_banks first to look up the correct bankCode.
18
+
19
+ SIDE EFFECTS: None. Read-only — does not move any funds or create any records.
20
+
21
+ MFA NOTE: Not applicable.
22
+
23
+ KEY OUTPUT FIELDS: accountName (name of account holder), accountNumber, bankCode, bankName.`,
24
+ inputSchema: zodToJsonSchema(VerifyBankAccountInputSchema),
25
+ };
26
+ async function handler(args) {
27
+ try {
28
+ const parsed = VerifyBankAccountInputSchema.parse(args);
29
+ const result = await apiGet("/api/v1/disbursements/account/validate", {
30
+ accountNumber: parsed.accountNumber,
31
+ bankCode: parsed.bankCode,
32
+ });
33
+ const sanitised = sanitiseBankAccountResponse(result);
34
+ return {
35
+ content: [{ type: "text", text: getResponseFormat() === "json" ? JSON.stringify(sanitised, null, 2) : formatBankAccountVerification(sanitised) }],
36
+ };
37
+ }
38
+ catch (error) {
39
+ if (error instanceof z.ZodError) {
40
+ return {
41
+ content: [
42
+ {
43
+ type: "text",
44
+ text: `Validation failed:\n${error.issues.map((i) => ` - ${i.path.join(".")}: ${i.message}`).join("\n")}`,
45
+ },
46
+ ],
47
+ isError: true,
48
+ };
49
+ }
50
+ if (error instanceof MonnifyApiError) {
51
+ return { content: [error.toMcpContent()], isError: true };
52
+ }
53
+ return errorResult(`monnify_verify_bank_account failed: ${String(error)}`);
54
+ }
55
+ }
56
+ registerTool({ definition, handler });
57
+ export { definition, VerifyBankAccountInputSchema as inputSchema, handler };
58
+ //# sourceMappingURL=verifyBankAccount.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"verifyBankAccount.js","sourceRoot":"","sources":["../../../src/tools/verification/verifyBankAccount.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD,OAAO,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAC;AACvD,OAAO,EAAE,2BAA2B,EAAE,MAAM,6BAA6B,CAAC;AAC1E,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAmB,MAAM,uBAAuB,CAAC;AACzE,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,4BAA4B,EAAE,MAAM,wCAAwC,CAAC;AACtF,OAAO,EAAE,6BAA6B,EAAE,MAAM,uBAAuB,CAAC;AACtE,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AAEjE,MAAM,UAAU,GAAS;IACvB,IAAI,EAAE,6BAA6B;IACnC,WAAW,EAAE;;;;;;;;;;4FAU6E;IAC1F,WAAW,EAAE,eAAe,CAAC,4BAA4B,CAAwB;CAClF,CAAC;AAEF,KAAK,UAAU,OAAO,CAAC,IAAa;IAClC,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,4BAA4B,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACxD,MAAM,MAAM,GAAG,MAAM,MAAM,CACzB,wCAAwC,EACxC;YACE,aAAa,EAAE,MAAM,CAAC,aAAa;YACnC,QAAQ,EAAE,MAAM,CAAC,QAAQ;SAC1B,CACF,CAAC;QACF,MAAM,SAAS,GAAG,2BAA2B,CAAC,MAAM,CAAC,CAAC;QACtD,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,iBAAiB,EAAE,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,6BAA6B,CAAC,SAAoC,CAAC,EAAE,CAAC;SAC7K,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,CAAC,CAAC,QAAQ,EAAE,CAAC;YAChC,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,uBAAuB,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;qBAC3G;iBACF;gBACD,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;QACD,IAAI,KAAK,YAAY,eAAe,EAAE,CAAC;YACrC,OAAO,EAAE,OAAO,EAAE,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QAC5D,CAAC;QACD,OAAO,WAAW,CAAC,uCAAuC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAC7E,CAAC;AACH,CAAC;AAED,YAAY,CAAC,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC,CAAC;AAEtC,OAAO,EAAE,UAAU,EAAE,4BAA4B,IAAI,WAAW,EAAE,OAAO,EAAE,CAAC"}
@@ -0,0 +1,7 @@
1
+ import type { Tool } from "@modelcontextprotocol/sdk/types.js";
2
+ import type { McpToolResult } from "../../types/mcp.js";
3
+ import { VerifyBvnInputSchema } from "../../schemas/extended/verification.js";
4
+ declare const definition: Tool;
5
+ declare function handler(args: unknown): Promise<McpToolResult>;
6
+ export { definition, VerifyBvnInputSchema as inputSchema, handler };
7
+ //# sourceMappingURL=verifyBvn.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"verifyBvn.d.ts","sourceRoot":"","sources":["../../../src/tools/verification/verifyBvn.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAG/D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAMxD,OAAO,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAC;AAI9E,QAAA,MAAM,UAAU,EAAE,IAcjB,CAAC;AAEF,iBAAe,OAAO,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC,aAAa,CAAC,CA4B5D;AAID,OAAO,EAAE,UAAU,EAAE,oBAAoB,IAAI,WAAW,EAAE,OAAO,EAAE,CAAC"}
@@ -0,0 +1,55 @@
1
+ import { z } from "zod";
2
+ import { zodToJsonSchema } from "zod-to-json-schema";
3
+ import { apiPost } from "../../client/monnifyClient.js";
4
+ import { sanitiseBvnResponse } from "../../security/sanitiser.js";
5
+ import { registerTool } from "../registry.js";
6
+ import { MonnifyApiError } from "../../utils/errors.js";
7
+ import { errorResult } from "../../types/mcp.js";
8
+ import { VerifyBvnInputSchema } from "../../schemas/extended/verification.js";
9
+ import { formatBvnVerification } from "../../utils/format.js";
10
+ import { getResponseFormat } from "../../utils/clientContext.js";
11
+ const definition = {
12
+ name: "monnify_verify_bvn",
13
+ description: `Verifies that a customer's BVN details match the provided name, date of birth, and phone number.
14
+
15
+ WHEN TO USE: For KYC (Know Your Customer) verification flows, onboarding with identity checks, or before creating a direct debit mandate where BVN validation is required.
16
+
17
+ PREREQUISITES: None. Requires Monnify Identity Verification API access to be enabled on your account.
18
+
19
+ SIDE EFFECTS: None. Read-only — does not store any data.
20
+
21
+ MFA NOTE: Not applicable.
22
+
23
+ KEY OUTPUT FIELDS: bvn, nameMatch (boolean), mobileNoMatch (boolean), dateOfBirthMatch (boolean). A result of true means the provided value matches the BVN record.`,
24
+ inputSchema: zodToJsonSchema(VerifyBvnInputSchema),
25
+ };
26
+ async function handler(args) {
27
+ try {
28
+ const parsed = VerifyBvnInputSchema.parse(args);
29
+ const result = await apiPost("/api/v1/vas/bvn-details-match", parsed);
30
+ const sanitised = sanitiseBvnResponse(result);
31
+ return {
32
+ content: [{ type: "text", text: getResponseFormat() === "json" ? JSON.stringify(sanitised, null, 2) : formatBvnVerification(sanitised) }],
33
+ };
34
+ }
35
+ catch (error) {
36
+ if (error instanceof z.ZodError) {
37
+ return {
38
+ content: [
39
+ {
40
+ type: "text",
41
+ text: `Validation failed:\n${error.issues.map((i) => ` - ${i.path.join(".")}: ${i.message}`).join("\n")}`,
42
+ },
43
+ ],
44
+ isError: true,
45
+ };
46
+ }
47
+ if (error instanceof MonnifyApiError) {
48
+ return { content: [error.toMcpContent()], isError: true };
49
+ }
50
+ return errorResult(`monnify_verify_bvn failed: ${String(error)}`);
51
+ }
52
+ }
53
+ registerTool({ definition, handler });
54
+ export { definition, VerifyBvnInputSchema as inputSchema, handler };
55
+ //# sourceMappingURL=verifyBvn.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"verifyBvn.js","sourceRoot":"","sources":["../../../src/tools/verification/verifyBvn.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD,OAAO,EAAE,OAAO,EAAE,MAAM,+BAA+B,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAC;AAC9E,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AAEjE,MAAM,UAAU,GAAS;IACvB,IAAI,EAAE,oBAAoB;IAC1B,WAAW,EAAE;;;;;;;;;;oKAUqJ;IAClK,WAAW,EAAE,eAAe,CAAC,oBAAoB,CAAwB;CAC1E,CAAC;AAEF,KAAK,UAAU,OAAO,CAAC,IAAa;IAClC,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,oBAAoB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAChD,MAAM,MAAM,GAAG,MAAM,OAAO,CAC1B,+BAA+B,EAC/B,MAAM,CACP,CAAC;QACF,MAAM,SAAS,GAAG,mBAAmB,CAAC,MAAM,CAAC,CAAC;QAC9C,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,iBAAiB,EAAE,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,qBAAqB,CAAC,SAAoC,CAAC,EAAE,CAAC;SACrK,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,CAAC,CAAC,QAAQ,EAAE,CAAC;YAChC,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,uBAAuB,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;qBAC3G;iBACF;gBACD,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;QACD,IAAI,KAAK,YAAY,eAAe,EAAE,CAAC;YACrC,OAAO,EAAE,OAAO,EAAE,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QAC5D,CAAC;QACD,OAAO,WAAW,CAAC,8BAA8B,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IACpE,CAAC;AACH,CAAC;AAED,YAAY,CAAC,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC,CAAC;AAEtC,OAAO,EAAE,UAAU,EAAE,oBAAoB,IAAI,WAAW,EAAE,OAAO,EAAE,CAAC"}
@@ -0,0 +1,7 @@
1
+ import type { Tool } from "@modelcontextprotocol/sdk/types.js";
2
+ import type { McpToolResult } from "../../types/mcp.js";
3
+ import { VerifyBvnInfoInputSchema } from "../../schemas/extended/verification.js";
4
+ declare const definition: Tool;
5
+ declare function handler(args: unknown): Promise<McpToolResult>;
6
+ export { definition, VerifyBvnInfoInputSchema as inputSchema, handler };
7
+ //# sourceMappingURL=verifyBvnInfo.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"verifyBvnInfo.d.ts","sourceRoot":"","sources":["../../../src/tools/verification/verifyBvnInfo.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAG/D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAMxD,OAAO,EAAE,wBAAwB,EAAE,MAAM,wCAAwC,CAAC;AAIlF,QAAA,MAAM,UAAU,EAAE,IAcjB,CAAC;AAEF,iBAAe,OAAO,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC,aAAa,CAAC,CA4B5D;AAID,OAAO,EAAE,UAAU,EAAE,wBAAwB,IAAI,WAAW,EAAE,OAAO,EAAE,CAAC"}
@@ -0,0 +1,55 @@
1
+ import { z } from "zod";
2
+ import { zodToJsonSchema } from "zod-to-json-schema";
3
+ import { apiPost } from "../../client/monnifyClient.js";
4
+ import { sanitiseBvnInfoResponse } from "../../security/sanitiser.js";
5
+ import { registerTool } from "../registry.js";
6
+ import { MonnifyApiError } from "../../utils/errors.js";
7
+ import { errorResult } from "../../types/mcp.js";
8
+ import { VerifyBvnInfoInputSchema } from "../../schemas/extended/verification.js";
9
+ import { formatBvnInfo } from "../../utils/format.js";
10
+ import { getResponseFormat } from "../../utils/clientContext.js";
11
+ const definition = {
12
+ name: "monnify_verify_bvn_info",
13
+ description: `Verifies whether the provided name, date of birth, and mobile number match the BVN record, returning a single boolean result.
14
+
15
+ WHEN TO USE: When you need a holistic match check against a BVN — all supplied details must match for bvnInformationMatch to be true. Useful for onboarding flows, KYC, and direct debit mandate validation.
16
+
17
+ PREREQUISITES: None. Requires Monnify Identity Verification API access enabled on your account. Live environment only — costs ₦10 per successful request.
18
+
19
+ SIDE EFFECTS: None. Read-only — does not store any data.
20
+
21
+ MFA NOTE: Not applicable.
22
+
23
+ KEY OUTPUT FIELDS: bvn, name, dateOfBirth, mobileNo, bvnInformationMatch (boolean — true if all provided details match the BVN record).`,
24
+ inputSchema: zodToJsonSchema(VerifyBvnInfoInputSchema),
25
+ };
26
+ async function handler(args) {
27
+ try {
28
+ const parsed = VerifyBvnInfoInputSchema.parse(args);
29
+ const result = await apiPost("/api/v1/vas/bvn-details-match", parsed);
30
+ const sanitised = sanitiseBvnInfoResponse(result);
31
+ return {
32
+ content: [{ type: "text", text: getResponseFormat() === "json" ? JSON.stringify(sanitised, null, 2) : formatBvnInfo(sanitised) }],
33
+ };
34
+ }
35
+ catch (error) {
36
+ if (error instanceof z.ZodError) {
37
+ return {
38
+ content: [
39
+ {
40
+ type: "text",
41
+ text: `Validation failed:\n${error.issues.map((i) => ` - ${i.path.join(".")}: ${i.message}`).join("\n")}`,
42
+ },
43
+ ],
44
+ isError: true,
45
+ };
46
+ }
47
+ if (error instanceof MonnifyApiError) {
48
+ return { content: [error.toMcpContent()], isError: true };
49
+ }
50
+ return errorResult(`monnify_verify_bvn_info failed: ${String(error)}`);
51
+ }
52
+ }
53
+ registerTool({ definition, handler });
54
+ export { definition, VerifyBvnInfoInputSchema as inputSchema, handler };
55
+ //# sourceMappingURL=verifyBvnInfo.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"verifyBvnInfo.js","sourceRoot":"","sources":["../../../src/tools/verification/verifyBvnInfo.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD,OAAO,EAAE,OAAO,EAAE,MAAM,+BAA+B,CAAC;AACxD,OAAO,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AACtE,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,wBAAwB,EAAE,MAAM,wCAAwC,CAAC;AAClF,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AAEjE,MAAM,UAAU,GAAS;IACvB,IAAI,EAAE,yBAAyB;IAC/B,WAAW,EAAE;;;;;;;;;;wIAUyH;IACtI,WAAW,EAAE,eAAe,CAAC,wBAAwB,CAAwB;CAC9E,CAAC;AAEF,KAAK,UAAU,OAAO,CAAC,IAAa;IAClC,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,wBAAwB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACpD,MAAM,MAAM,GAAG,MAAM,OAAO,CAC1B,+BAA+B,EAC/B,MAAM,CACP,CAAC;QACF,MAAM,SAAS,GAAG,uBAAuB,CAAC,MAAM,CAAC,CAAC;QAClD,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,iBAAiB,EAAE,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,SAAoC,CAAC,EAAE,CAAC;SAC7J,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,CAAC,CAAC,QAAQ,EAAE,CAAC;YAChC,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,uBAAuB,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;qBAC3G;iBACF;gBACD,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;QACD,IAAI,KAAK,YAAY,eAAe,EAAE,CAAC;YACrC,OAAO,EAAE,OAAO,EAAE,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QAC5D,CAAC;QACD,OAAO,WAAW,CAAC,mCAAmC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IACzE,CAAC;AACH,CAAC;AAED,YAAY,CAAC,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC,CAAC;AAEtC,OAAO,EAAE,UAAU,EAAE,wBAAwB,IAAI,WAAW,EAAE,OAAO,EAAE,CAAC"}
@@ -0,0 +1,7 @@
1
+ import type { Tool } from "@modelcontextprotocol/sdk/types.js";
2
+ import type { McpToolResult } from "../../types/mcp.js";
3
+ import { VerifyNinInputSchema } from "../../schemas/extended/verification.js";
4
+ declare const definition: Tool;
5
+ declare function handler(args: unknown): Promise<McpToolResult>;
6
+ export { definition, VerifyNinInputSchema as inputSchema, handler };
7
+ //# sourceMappingURL=verifyNin.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"verifyNin.d.ts","sourceRoot":"","sources":["../../../src/tools/verification/verifyNin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAG/D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAMxD,OAAO,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAC;AAI9E,QAAA,MAAM,UAAU,EAAE,IAcjB,CAAC;AAEF,iBAAe,OAAO,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC,aAAa,CAAC,CA4B5D;AAID,OAAO,EAAE,UAAU,EAAE,oBAAoB,IAAI,WAAW,EAAE,OAAO,EAAE,CAAC"}
@@ -0,0 +1,55 @@
1
+ import { z } from "zod";
2
+ import { zodToJsonSchema } from "zod-to-json-schema";
3
+ import { apiPost } from "../../client/monnifyClient.js";
4
+ import { sanitiseNinResponse } from "../../security/sanitiser.js";
5
+ import { registerTool } from "../registry.js";
6
+ import { MonnifyApiError } from "../../utils/errors.js";
7
+ import { errorResult } from "../../types/mcp.js";
8
+ import { VerifyNinInputSchema } from "../../schemas/extended/verification.js";
9
+ import { formatNinVerification } from "../../utils/format.js";
10
+ import { getResponseFormat } from "../../utils/clientContext.js";
11
+ const definition = {
12
+ name: "monnify_verify_nin",
13
+ description: `Verifies a customer's National Identification Number (NIN) by matching it against the provided name and date of birth.
14
+
15
+ WHEN TO USE: For strong identity verification flows where NIN is required, such as high-value onboarding, compliance checks, or regulatory KYC requirements that mandate NIN validation.
16
+
17
+ PREREQUISITES: None. Requires Monnify Identity Verification API access enabled on your account. Live environment only — costs ₦60 per successful request.
18
+
19
+ SIDE EFFECTS: None. Read-only — does not store any data.
20
+
21
+ MFA NOTE: Not applicable.
22
+
23
+ KEY OUTPUT FIELDS: nin, firstName, lastName, dateOfBirth, gender, phoneNumber, ninInformationMatch (boolean — true if the provided name and date of birth match the NIN record).`,
24
+ inputSchema: zodToJsonSchema(VerifyNinInputSchema),
25
+ };
26
+ async function handler(args) {
27
+ try {
28
+ const parsed = VerifyNinInputSchema.parse(args);
29
+ const result = await apiPost("/api/v1/vas/nin-details", parsed);
30
+ const sanitised = sanitiseNinResponse(result);
31
+ return {
32
+ content: [{ type: "text", text: getResponseFormat() === "json" ? JSON.stringify(sanitised, null, 2) : formatNinVerification(sanitised) }],
33
+ };
34
+ }
35
+ catch (error) {
36
+ if (error instanceof z.ZodError) {
37
+ return {
38
+ content: [
39
+ {
40
+ type: "text",
41
+ text: `Validation failed:\n${error.issues.map((i) => ` - ${i.path.join(".")}: ${i.message}`).join("\n")}`,
42
+ },
43
+ ],
44
+ isError: true,
45
+ };
46
+ }
47
+ if (error instanceof MonnifyApiError) {
48
+ return { content: [error.toMcpContent()], isError: true };
49
+ }
50
+ return errorResult(`monnify_verify_nin failed: ${String(error)}`);
51
+ }
52
+ }
53
+ registerTool({ definition, handler });
54
+ export { definition, VerifyNinInputSchema as inputSchema, handler };
55
+ //# sourceMappingURL=verifyNin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"verifyNin.js","sourceRoot":"","sources":["../../../src/tools/verification/verifyNin.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD,OAAO,EAAE,OAAO,EAAE,MAAM,+BAA+B,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAC;AAC9E,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AAEjE,MAAM,UAAU,GAAS;IACvB,IAAI,EAAE,oBAAoB;IAC1B,WAAW,EAAE;;;;;;;;;;iLAUkK;IAC/K,WAAW,EAAE,eAAe,CAAC,oBAAoB,CAAwB;CAC1E,CAAC;AAEF,KAAK,UAAU,OAAO,CAAC,IAAa;IAClC,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,oBAAoB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAChD,MAAM,MAAM,GAAG,MAAM,OAAO,CAC1B,yBAAyB,EACzB,MAAM,CACP,CAAC;QACF,MAAM,SAAS,GAAG,mBAAmB,CAAC,MAAM,CAAC,CAAC;QAC9C,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,iBAAiB,EAAE,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,qBAAqB,CAAC,SAAoC,CAAC,EAAE,CAAC;SACrK,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,CAAC,CAAC,QAAQ,EAAE,CAAC;YAChC,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,uBAAuB,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;qBAC3G;iBACF;gBACD,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;QACD,IAAI,KAAK,YAAY,eAAe,EAAE,CAAC;YACrC,OAAO,EAAE,OAAO,EAAE,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QAC5D,CAAC;QACD,OAAO,WAAW,CAAC,8BAA8B,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IACpE,CAAC;AACH,CAAC;AAED,YAAY,CAAC,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC,CAAC;AAEtC,OAAO,EAAE,UAAU,EAAE,oBAAoB,IAAI,WAAW,EAAE,OAAO,EAAE,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { Server } from "@modelcontextprotocol/sdk/server/index.js";
2
+ export declare function startHttpTransport(server: Server): Promise<void>;
3
+ //# sourceMappingURL=http.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../src/transport/http.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AAuCxE,wBAAsB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAyCtE"}