archgen-skill 0.1.1 → 0.1.2

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 (1067) hide show
  1. package/lib/node_modules/archgen-mcp/README.md +131 -0
  2. package/lib/node_modules/archgen-mcp/assets/briefs/investigate.md +21 -0
  3. package/lib/node_modules/archgen-mcp/assets/briefs/review.md +47 -0
  4. package/lib/node_modules/archgen-mcp/assets/briefs/survey.md +19 -0
  5. package/lib/node_modules/archgen-mcp/assets/briefs/verifier.md +56 -0
  6. package/lib/node_modules/archgen-mcp/assets/depth-ladder.json +90 -0
  7. package/lib/node_modules/archgen-mcp/assets/harness-mcp.json +398 -0
  8. package/lib/node_modules/archgen-mcp/assets/mcp-template.json +45 -0
  9. package/lib/node_modules/archgen-mcp/assets/platform-capabilities.json +579 -0
  10. package/lib/node_modules/archgen-mcp/assets/references/artifact-templates.md +120 -0
  11. package/lib/node_modules/archgen-mcp/assets/references/interview.md +161 -0
  12. package/lib/node_modules/archgen-mcp/assets/references/mcp-and-skills.md +62 -0
  13. package/lib/node_modules/archgen-mcp/assets/references/orchestration.md +149 -0
  14. package/lib/node_modules/archgen-mcp/assets/references/platforms.md +81 -0
  15. package/lib/node_modules/archgen-mcp/assets/skill-registry.json +128 -0
  16. package/lib/node_modules/archgen-mcp/assets/templates/adr.md +8 -0
  17. package/lib/node_modules/archgen-mcp/assets/templates/architecture.yaml +61 -0
  18. package/lib/node_modules/archgen-mcp/assets/templates/edge-matrix.md +8 -0
  19. package/lib/node_modules/archgen-mcp/assets/templates/mermaid.md +40 -0
  20. package/lib/node_modules/archgen-mcp/assets/templates/prd.md +31 -0
  21. package/lib/node_modules/archgen-mcp/assets/templates/tasks.yaml +47 -0
  22. package/lib/node_modules/archgen-mcp/bin/archgen-mcp.mjs +35 -0
  23. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/core/LICENSE +216 -0
  24. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/core/README.md +40 -0
  25. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/core/dist/auth-B7cIpDZF.d.mts +293 -0
  26. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/core/dist/auth-B7cIpDZF.d.mts.map +1 -0
  27. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/core/dist/auth-CV4m0LEJ.cjs +294 -0
  28. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/core/dist/auth-CV4m0LEJ.cjs.map +1 -0
  29. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/core/dist/auth-CmOFayUJ.d.cts +293 -0
  30. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/core/dist/auth-CmOFayUJ.d.cts.map +1 -0
  31. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/core/dist/auth-UMQCo-ad.mjs +209 -0
  32. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/core/dist/auth-UMQCo-ad.mjs.map +1 -0
  33. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/core/dist/ext/skills/index.cjs +116 -0
  34. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/core/dist/ext/skills/index.cjs.map +1 -0
  35. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/core/dist/ext/skills/index.d.cts +316 -0
  36. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/core/dist/ext/skills/index.d.cts.map +1 -0
  37. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/core/dist/ext/skills/index.d.mts +316 -0
  38. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/core/dist/ext/skills/index.d.mts.map +1 -0
  39. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/core/dist/ext/skills/index.mjs +94 -0
  40. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/core/dist/ext/skills/index.mjs.map +1 -0
  41. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/core/dist/index.cjs +176 -0
  42. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/core/dist/index.d.cts +3 -0
  43. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/core/dist/index.d.mts +3 -0
  44. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/core/dist/index.mjs +4 -0
  45. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/core/dist/internal.cjs +202 -0
  46. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/core/dist/internal.d.cts +100 -0
  47. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/core/dist/internal.d.cts.map +1 -0
  48. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/core/dist/internal.d.mts +100 -0
  49. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/core/dist/internal.d.mts.map +1 -0
  50. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/core/dist/internal.mjs +4 -0
  51. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/core/dist/schemas-CzwpZ9-S.d.cts +8219 -0
  52. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/core/dist/schemas-CzwpZ9-S.d.cts.map +1 -0
  53. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/core/dist/schemas-DBHuY3cl.d.mts +8219 -0
  54. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/core/dist/schemas-DBHuY3cl.d.mts.map +1 -0
  55. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/core/dist/schemas-DscsoNZN.mjs +1476 -0
  56. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/core/dist/schemas-DscsoNZN.mjs.map +1 -0
  57. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/core/dist/schemas-lGLjBX8n.cjs +2619 -0
  58. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/core/dist/schemas-lGLjBX8n.cjs.map +1 -0
  59. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/core/package.json +98 -0
  60. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/LICENSE +216 -0
  61. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/README.md +24 -0
  62. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/ajvProvider-B7XXxEF7.d.mts +1071 -0
  63. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/ajvProvider-B7XXxEF7.d.mts.map +1 -0
  64. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/ajvProvider-D4aTKfX2.d.cts +1071 -0
  65. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/ajvProvider-D4aTKfX2.d.cts.map +1 -0
  66. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/ajvProvider-DPYcD0gV.cjs +8027 -0
  67. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/ajvProvider-DPYcD0gV.cjs.map +1 -0
  68. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/ajvProvider-DyjnscPj.mjs +8010 -0
  69. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/ajvProvider-DyjnscPj.mjs.map +1 -0
  70. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/cfWorkerProvider-B9jJP0v5.d.cts +74 -0
  71. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/cfWorkerProvider-B9jJP0v5.d.cts.map +1 -0
  72. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/cfWorkerProvider-Bxo2L8Ch.d.mts +74 -0
  73. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/cfWorkerProvider-Bxo2L8Ch.d.mts.map +1 -0
  74. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/cfWorkerProvider-QxAbCgU1.cjs +986 -0
  75. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/cfWorkerProvider-QxAbCgU1.cjs.map +1 -0
  76. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/cfWorkerProvider-hgYAfIZf.mjs +981 -0
  77. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/cfWorkerProvider-hgYAfIZf.mjs.map +1 -0
  78. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/chunk-Bnu9O96Y.cjs +60 -0
  79. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/chunk-vYduTEsO.mjs +42 -0
  80. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/createMcpHandler-CadSHsnp.d.cts +498 -0
  81. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/createMcpHandler-CadSHsnp.d.cts.map +1 -0
  82. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/createMcpHandler-DzlXH0KL.d.mts +498 -0
  83. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/createMcpHandler-DzlXH0KL.d.mts.map +1 -0
  84. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/dialects-CDpMbily.mjs +34 -0
  85. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/dialects-CDpMbily.mjs.map +1 -0
  86. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/dialects-D8eXzoGv.cjs +46 -0
  87. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/dialects-D8eXzoGv.cjs.map +1 -0
  88. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/ext/skills/index.cjs +70 -0
  89. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/ext/skills/index.cjs.map +1 -0
  90. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/ext/skills/index.d.cts +42 -0
  91. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/ext/skills/index.d.cts.map +1 -0
  92. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/ext/skills/index.d.mts +42 -0
  93. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/ext/skills/index.d.mts.map +1 -0
  94. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/ext/skills/index.mjs +29 -0
  95. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/ext/skills/index.mjs.map +1 -0
  96. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/ext/skills/node.cjs +78 -0
  97. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/ext/skills/node.cjs.map +1 -0
  98. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/ext/skills/node.d.cts +30 -0
  99. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/ext/skills/node.d.cts.map +1 -0
  100. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/ext/skills/node.d.mts +30 -0
  101. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/ext/skills/node.d.mts.map +1 -0
  102. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/ext/skills/node.mjs +75 -0
  103. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/ext/skills/node.mjs.map +1 -0
  104. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/extension-B1GvIBnG.d.mts +143 -0
  105. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/extension-B1GvIBnG.d.mts.map +1 -0
  106. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/extension-B6_E7IiR.d.cts +143 -0
  107. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/extension-B6_E7IiR.d.cts.map +1 -0
  108. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/extension-Co9uP6Ds.cjs +1576 -0
  109. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/extension-Co9uP6Ds.cjs.map +1 -0
  110. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/extension-Pm4HwRE6.mjs +1528 -0
  111. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/extension-Pm4HwRE6.mjs.map +1 -0
  112. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/index.cjs +1766 -0
  113. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/index.cjs.map +1 -0
  114. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/index.d.cts +811 -0
  115. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/index.d.cts.map +1 -0
  116. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/index.d.mts +811 -0
  117. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/index.d.mts.map +1 -0
  118. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/index.mjs +1578 -0
  119. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/index.mjs.map +1 -0
  120. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/listenRouter-Bartj63y.mjs +426 -0
  121. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/listenRouter-Bartj63y.mjs.map +1 -0
  122. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/listenRouter-Dcw_aIh6.cjs +457 -0
  123. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/listenRouter-Dcw_aIh6.cjs.map +1 -0
  124. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/mcp-BCJHyo7l.d.mts +3682 -0
  125. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/mcp-BCJHyo7l.d.mts.map +1 -0
  126. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/mcp-DbUPMDd5.d.cts +3684 -0
  127. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/mcp-DbUPMDd5.d.cts.map +1 -0
  128. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/mcp-oHn3ureC.mjs +2166 -0
  129. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/mcp-oHn3ureC.mjs.map +1 -0
  130. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/mcp-uPg2RfP3.cjs +2293 -0
  131. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/mcp-uPg2RfP3.cjs.map +1 -0
  132. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/shimsBrowser.cjs +23 -0
  133. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/shimsBrowser.cjs.map +1 -0
  134. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/shimsBrowser.d.cts +11 -0
  135. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/shimsBrowser.d.cts.map +1 -0
  136. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/shimsBrowser.d.mts +11 -0
  137. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/shimsBrowser.d.mts.map +1 -0
  138. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/shimsBrowser.mjs +22 -0
  139. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/shimsBrowser.mjs.map +1 -0
  140. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/shimsNode.cjs +12 -0
  141. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/shimsNode.d.cts +3 -0
  142. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/shimsNode.d.mts +3 -0
  143. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/shimsNode.mjs +4 -0
  144. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/shimsWorkerd.cjs +30 -0
  145. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/shimsWorkerd.cjs.map +1 -0
  146. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/shimsWorkerd.d.cts +10 -0
  147. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/shimsWorkerd.d.cts.map +1 -0
  148. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/shimsWorkerd.d.mts +10 -0
  149. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/shimsWorkerd.d.mts.map +1 -0
  150. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/shimsWorkerd.mjs +29 -0
  151. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/shimsWorkerd.mjs.map +1 -0
  152. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/src-BvE2tDzk.cjs +8223 -0
  153. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/src-BvE2tDzk.cjs.map +1 -0
  154. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/src-DdvbAHrR.mjs +7713 -0
  155. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/src-DdvbAHrR.mjs.map +1 -0
  156. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/stdio.cjs +592 -0
  157. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/stdio.cjs.map +1 -0
  158. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/stdio.d.cts +116 -0
  159. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/stdio.d.cts.map +1 -0
  160. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/stdio.d.mts +116 -0
  161. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/stdio.d.mts.map +1 -0
  162. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/stdio.mjs +590 -0
  163. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/stdio.mjs.map +1 -0
  164. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/types-DDiDRBhz.d.mts +1099 -0
  165. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/types-DDiDRBhz.d.mts.map +1 -0
  166. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/types-DqbrgVmG.d.cts +1099 -0
  167. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/types-DqbrgVmG.d.cts.map +1 -0
  168. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/validators/ajv.cjs +5 -0
  169. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/validators/ajv.d.cts +2 -0
  170. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/validators/ajv.d.mts +2 -0
  171. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/validators/ajv.mjs +3 -0
  172. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/validators/cfWorker.cjs +3 -0
  173. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/validators/cfWorker.d.cts +2 -0
  174. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/validators/cfWorker.d.mts +2 -0
  175. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/dist/validators/cfWorker.mjs +3 -0
  176. package/lib/node_modules/archgen-mcp/node_modules/@modelcontextprotocol/server/package.json +186 -0
  177. package/lib/node_modules/archgen-mcp/node_modules/zod/LICENSE +21 -0
  178. package/lib/node_modules/archgen-mcp/node_modules/zod/README.md +218 -0
  179. package/lib/node_modules/archgen-mcp/node_modules/zod/compile.cjs +96 -0
  180. package/lib/node_modules/archgen-mcp/node_modules/zod/compile.d.cts +1 -0
  181. package/lib/node_modules/archgen-mcp/node_modules/zod/compile.d.ts +1 -0
  182. package/lib/node_modules/archgen-mcp/node_modules/zod/compile.js +52 -0
  183. package/lib/node_modules/archgen-mcp/node_modules/zod/index.cjs +52 -0
  184. package/lib/node_modules/archgen-mcp/node_modules/zod/index.d.cts +3 -0
  185. package/lib/node_modules/archgen-mcp/node_modules/zod/index.d.ts +3 -0
  186. package/lib/node_modules/archgen-mcp/node_modules/zod/index.js +7 -0
  187. package/lib/node_modules/archgen-mcp/node_modules/zod/locales/index.cjs +36 -0
  188. package/lib/node_modules/archgen-mcp/node_modules/zod/locales/index.d.cts +1 -0
  189. package/lib/node_modules/archgen-mcp/node_modules/zod/locales/index.d.ts +1 -0
  190. package/lib/node_modules/archgen-mcp/node_modules/zod/locales/index.js +1 -0
  191. package/lib/node_modules/archgen-mcp/node_modules/zod/locales/package.json +7 -0
  192. package/lib/node_modules/archgen-mcp/node_modules/zod/mini/index.cjs +51 -0
  193. package/lib/node_modules/archgen-mcp/node_modules/zod/mini/index.d.cts +3 -0
  194. package/lib/node_modules/archgen-mcp/node_modules/zod/mini/index.d.ts +3 -0
  195. package/lib/node_modules/archgen-mcp/node_modules/zod/mini/index.js +3 -0
  196. package/lib/node_modules/archgen-mcp/node_modules/zod/mini/package.json +7 -0
  197. package/lib/node_modules/archgen-mcp/node_modules/zod/package.json +147 -0
  198. package/lib/node_modules/archgen-mcp/node_modules/zod/src/compile.ts +56 -0
  199. package/lib/node_modules/archgen-mcp/node_modules/zod/src/index.ts +7 -0
  200. package/lib/node_modules/archgen-mcp/node_modules/zod/src/locales/index.ts +1 -0
  201. package/lib/node_modules/archgen-mcp/node_modules/zod/src/mini/index.ts +3 -0
  202. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/ZodError.ts +340 -0
  203. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/benchmarks/datetime.ts +58 -0
  204. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/benchmarks/discriminatedUnion.ts +80 -0
  205. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/benchmarks/index.ts +59 -0
  206. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/benchmarks/ipv4.ts +57 -0
  207. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/benchmarks/object.ts +69 -0
  208. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/benchmarks/primitives.ts +162 -0
  209. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/benchmarks/realworld.ts +63 -0
  210. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/benchmarks/string.ts +55 -0
  211. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/benchmarks/union.ts +80 -0
  212. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/errors.ts +13 -0
  213. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/external.ts +6 -0
  214. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/helpers/enumUtil.ts +17 -0
  215. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/helpers/errorUtil.ts +8 -0
  216. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/helpers/parseUtil.ts +176 -0
  217. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/helpers/partialUtil.ts +34 -0
  218. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/helpers/typeAliases.ts +2 -0
  219. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/helpers/util.ts +224 -0
  220. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/index.ts +4 -0
  221. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/locales/en.ts +124 -0
  222. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/standard-schema.ts +113 -0
  223. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/tests/Mocker.ts +54 -0
  224. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/tests/all-errors.test.ts +157 -0
  225. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/tests/anyunknown.test.ts +28 -0
  226. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/tests/array.test.ts +71 -0
  227. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/tests/async-parsing.test.ts +388 -0
  228. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/tests/async-refinements.test.ts +46 -0
  229. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/tests/base.test.ts +29 -0
  230. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/tests/bigint.test.ts +55 -0
  231. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/tests/branded.test.ts +53 -0
  232. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/tests/catch.test.ts +220 -0
  233. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/tests/coerce.test.ts +133 -0
  234. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/tests/complex.test.ts +70 -0
  235. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/tests/custom.test.ts +31 -0
  236. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/tests/date.test.ts +32 -0
  237. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/tests/deepmasking.test.ts +186 -0
  238. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/tests/default.test.ts +112 -0
  239. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/tests/description.test.ts +33 -0
  240. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/tests/discriminated-unions.test.ts +315 -0
  241. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/tests/enum.test.ts +80 -0
  242. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/tests/error.test.ts +586 -0
  243. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/tests/firstparty.test.ts +87 -0
  244. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/tests/firstpartyschematypes.test.ts +21 -0
  245. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/tests/function.test.ts +261 -0
  246. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/tests/generics.test.ts +48 -0
  247. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/tests/instanceof.test.ts +37 -0
  248. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/tests/intersection.test.ts +128 -0
  249. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/tests/language-server.source.ts +76 -0
  250. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/tests/language-server.test.ts +206 -0
  251. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/tests/literal.test.ts +36 -0
  252. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/tests/map.test.ts +110 -0
  253. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/tests/masking.test.ts +4 -0
  254. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/tests/mocker.test.ts +19 -0
  255. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/tests/nan.test.ts +24 -0
  256. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/tests/nativeEnum.test.ts +87 -0
  257. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/tests/nullable.test.ts +42 -0
  258. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/tests/number.test.ts +176 -0
  259. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/tests/object-augmentation.test.ts +29 -0
  260. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/tests/object-in-es5-env.test.ts +29 -0
  261. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/tests/object.test.ts +431 -0
  262. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/tests/optional.test.ts +42 -0
  263. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/tests/parseUtil.test.ts +23 -0
  264. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/tests/parser.test.ts +41 -0
  265. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/tests/partials.test.ts +243 -0
  266. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/tests/pickomit.test.ts +111 -0
  267. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/tests/pipeline.test.ts +29 -0
  268. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/tests/preprocess.test.ts +186 -0
  269. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/tests/primitive.test.ts +440 -0
  270. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/tests/promise.test.ts +90 -0
  271. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/tests/readonly.test.ts +114 -0
  272. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/tests/record.test.ts +171 -0
  273. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/tests/recursive.test.ts +197 -0
  274. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/tests/refine.test.ts +313 -0
  275. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/tests/safeparse.test.ts +27 -0
  276. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/tests/set.test.ts +142 -0
  277. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/tests/standard-schema.test.ts +83 -0
  278. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/tests/string.test.ts +922 -0
  279. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/tests/transformer.test.ts +233 -0
  280. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/tests/tuple.test.ts +90 -0
  281. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/tests/unions.test.ts +57 -0
  282. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/tests/validations.test.ts +133 -0
  283. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/tests/void.test.ts +15 -0
  284. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v3/types.ts +5138 -0
  285. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/checks.ts +33 -0
  286. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/coerce.ts +27 -0
  287. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/compat.ts +78 -0
  288. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/deep-partial.ts +76 -0
  289. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/errors.ts +97 -0
  290. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/external.ts +57 -0
  291. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/from-json-schema.ts +944 -0
  292. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/in-out.ts +45 -0
  293. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/index.ts +5 -0
  294. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/iso.ts +20 -0
  295. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/parse.ts +88 -0
  296. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/schemas.ts +2937 -0
  297. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/anyunknown.test.ts +26 -0
  298. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/apply.test.ts +86 -0
  299. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/array.test.ts +291 -0
  300. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/assignability.test.ts +402 -0
  301. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/async-parsing.test.ts +381 -0
  302. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/async-refinements.test.ts +68 -0
  303. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/base.test.ts +7 -0
  304. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/bigint.test.ts +89 -0
  305. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/brand.test.ts +106 -0
  306. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/catch.test.ts +604 -0
  307. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/coalesce.test.ts +20 -0
  308. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/codec-examples.test.ts +572 -0
  309. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/codec.test.ts +704 -0
  310. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/coerce.test.ts +160 -0
  311. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/continuability.test.ts +374 -0
  312. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/credit-card.test.ts +76 -0
  313. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/custom.test.ts +40 -0
  314. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/cyclic-data.test.ts +985 -0
  315. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/date.test.ts +92 -0
  316. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/datetime.test.ts +316 -0
  317. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/deep-partial.test.ts +380 -0
  318. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/default-locale.test.ts +32 -0
  319. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/default.test.ts +455 -0
  320. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/describe-meta-checks.test.ts +27 -0
  321. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/description.test.ts +32 -0
  322. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/detached-methods.test.ts +221 -0
  323. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/discriminated-unions.test.ts +942 -0
  324. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/enum.test.ts +305 -0
  325. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/error-utils.test.ts +917 -0
  326. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/error.test.ts +1108 -0
  327. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/file.test.ts +96 -0
  328. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/firstparty.test.ts +179 -0
  329. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/fix-json-issue.test.ts +26 -0
  330. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/from-json-schema.test.ts +1467 -0
  331. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/function.test.ts +391 -0
  332. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/generics.test.ts +72 -0
  333. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/global-config.test.ts +32 -0
  334. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/hash.test.ts +67 -0
  335. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/iban.test.ts +81 -0
  336. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/in-out.test.ts +159 -0
  337. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/index.test.ts +958 -0
  338. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/instance-footprint.test.ts +319 -0
  339. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/instanceof.test.ts +127 -0
  340. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/intersection.test.ts +334 -0
  341. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/issue-schema.test.ts +215 -0
  342. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/jitless-allows-eval.test.ts +39 -0
  343. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/json.test.ts +109 -0
  344. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/lazy.test.ts +262 -0
  345. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/literal.test.ts +128 -0
  346. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/locales_ka.test.ts +29 -0
  347. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/locales_ro.test.ts +24 -0
  348. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/map.test.ts +349 -0
  349. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/nan.test.ts +21 -0
  350. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/nested-refine.test.ts +168 -0
  351. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/nonoptional.test.ts +101 -0
  352. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/nullable.test.ts +22 -0
  353. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/number.test.ts +401 -0
  354. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/object.test.ts +1006 -0
  355. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/optin-ladder.test.ts +235 -0
  356. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/optional.test.ts +366 -0
  357. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/partial.test.ts +497 -0
  358. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/pickomit.test.ts +211 -0
  359. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/pipe.test.ts +101 -0
  360. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/prefault.test.ts +144 -0
  361. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/preprocess-types.test.ts +44 -0
  362. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/preprocess.test.ts +351 -0
  363. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/primitive.test.ts +175 -0
  364. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/promise.test.ts +81 -0
  365. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/properties.test.ts +141 -0
  366. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/prototypes.test.ts +23 -0
  367. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/readonly.test.ts +184 -0
  368. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/record.test.ts +885 -0
  369. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/recursive-types.test.ts +707 -0
  370. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/redos.test.ts +68 -0
  371. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/refine.test.ts +693 -0
  372. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/registries.test.ts +243 -0
  373. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/set.test.ts +196 -0
  374. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/standard-schema.test.ts +153 -0
  375. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/string-formats.test.ts +125 -0
  376. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/string.test.ts +1440 -0
  377. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/stringbool.test.ts +124 -0
  378. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/template-literal.test.ts +812 -0
  379. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/to-json-schema-methods.test.ts +438 -0
  380. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/to-json-schema.test.ts +4733 -0
  381. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/transform.test.ts +378 -0
  382. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/tuple.test.ts +511 -0
  383. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/union.test.ts +310 -0
  384. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/url.test.ts +13 -0
  385. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/validate.test.ts +645 -0
  386. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/validations.test.ts +283 -0
  387. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/classic/tests/void.test.ts +12 -0
  388. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/core/api.ts +1875 -0
  389. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/core/checks.ts +1266 -0
  390. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/core/compile.ts +2322 -0
  391. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/core/core.ts +230 -0
  392. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/core/doc.ts +52 -0
  393. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/core/errors.ts +543 -0
  394. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/core/index.ts +19 -0
  395. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/core/json-schema-generator.ts +131 -0
  396. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/core/json-schema-processors.ts +934 -0
  397. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/core/json-schema.ts +148 -0
  398. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/core/memoizer.ts +331 -0
  399. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/core/parse.ts +309 -0
  400. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/core/regexes.ts +217 -0
  401. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/core/registries.ts +105 -0
  402. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/core/schemas.ts +5226 -0
  403. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/core/standard-schema.ts +159 -0
  404. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/core/tests/cached.test.ts +54 -0
  405. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/core/tests/compile-differential.test.ts +1004 -0
  406. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/core/tests/compile-generative.test.ts +445 -0
  407. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/core/tests/compile-global.test.ts +89 -0
  408. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/core/tests/compile-off-by-default.test.ts +26 -0
  409. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/core/tests/compile-stats.test.ts +34 -0
  410. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/core/tests/compile.test.ts +2036 -0
  411. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/core/tests/email-regex.test.ts +140 -0
  412. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/core/tests/extend.test.ts +59 -0
  413. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/core/tests/index.test.ts +46 -0
  414. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/core/tests/locales/be.test.ts +124 -0
  415. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/core/tests/locales/el.test.ts +214 -0
  416. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/core/tests/locales/en.test.ts +22 -0
  417. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/core/tests/locales/es.test.ts +180 -0
  418. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/core/tests/locales/fr.test.ts +72 -0
  419. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/core/tests/locales/he.test.ts +379 -0
  420. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/core/tests/locales/hr.test.ts +163 -0
  421. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/core/tests/locales/nl.test.ts +46 -0
  422. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/core/tests/locales/parity.test.ts +42 -0
  423. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/core/tests/locales/ru.test.ts +128 -0
  424. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/core/tests/locales/tg.test.ts +85 -0
  425. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/core/tests/locales/tk.test.ts +69 -0
  426. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/core/tests/locales/tr.test.ts +69 -0
  427. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/core/tests/locales/uz.test.ts +105 -0
  428. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/core/tests/polyfill-collision.test.ts +46 -0
  429. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/core/tests/record-constructor.test.ts +125 -0
  430. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/core/tests/recursive-tuples.test.ts +45 -0
  431. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/core/tests/treeshake.test.ts +51 -0
  432. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/core/tests/url-no-canparse.test.ts +133 -0
  433. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/core/to-json-schema.ts +857 -0
  434. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/core/util.ts +1293 -0
  435. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/core/versions.ts +5 -0
  436. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/core/visit.ts +193 -0
  437. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/core/zsf.ts +323 -0
  438. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/index.ts +4 -0
  439. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/locales/ar.ts +120 -0
  440. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/locales/az.ts +116 -0
  441. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/locales/be.ts +188 -0
  442. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/locales/bg.ts +133 -0
  443. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/locales/bn.ts +123 -0
  444. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/locales/ca.ts +121 -0
  445. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/locales/ckb.ts +140 -0
  446. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/locales/cs.ts +123 -0
  447. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/locales/da.ts +128 -0
  448. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/locales/de.ts +121 -0
  449. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/locales/el.ts +124 -0
  450. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/locales/en.ts +136 -0
  451. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/locales/eo.ts +123 -0
  452. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/locales/es.ts +145 -0
  453. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/locales/fa.ts +131 -0
  454. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/locales/fi.ts +126 -0
  455. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/locales/fr-CA.ts +121 -0
  456. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/locales/fr.ts +139 -0
  457. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/locales/gu.ts +123 -0
  458. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/locales/he.ts +253 -0
  459. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/locales/hi.ts +126 -0
  460. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/locales/hr.ts +135 -0
  461. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/locales/hu.ts +122 -0
  462. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/locales/hy.ts +175 -0
  463. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/locales/id.ts +120 -0
  464. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/locales/index.ts +63 -0
  465. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/locales/is.ts +124 -0
  466. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/locales/it.ts +121 -0
  467. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/locales/ja.ts +119 -0
  468. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/locales/ka.ts +128 -0
  469. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/locales/kh.ts +7 -0
  470. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/locales/km.ts +124 -0
  471. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/locales/kn.ts +126 -0
  472. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/locales/ko.ts +126 -0
  473. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/locales/lt.ts +243 -0
  474. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/locales/mk.ts +123 -0
  475. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/locales/ms.ts +120 -0
  476. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/locales/ne.ts +128 -0
  477. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/locales/nl.ts +126 -0
  478. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/locales/nn.ts +121 -0
  479. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/locales/no.ts +121 -0
  480. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/locales/ota.ts +122 -0
  481. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/locales/pl.ts +123 -0
  482. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/locales/ps.ts +131 -0
  483. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/locales/pt-BR.ts +161 -0
  484. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/locales/pt.ts +159 -0
  485. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/locales/ro.ts +132 -0
  486. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/locales/ru.ts +188 -0
  487. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/locales/sk.ts +123 -0
  488. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/locales/sl.ts +123 -0
  489. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/locales/sv.ts +124 -0
  490. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/locales/ta.ts +123 -0
  491. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/locales/tg.ts +135 -0
  492. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/locales/th.ts +124 -0
  493. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/locales/tk.ts +113 -0
  494. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/locales/tr.ts +116 -0
  495. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/locales/ua.ts +7 -0
  496. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/locales/uk.ts +122 -0
  497. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/locales/ur.ts +124 -0
  498. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/locales/uz.ts +120 -0
  499. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/locales/vi.ts +122 -0
  500. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/locales/yo.ts +129 -0
  501. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/locales/zh-CN.ts +121 -0
  502. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/locales/zh-TW.ts +120 -0
  503. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/mini/checks.ts +33 -0
  504. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/mini/coerce.ts +27 -0
  505. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/mini/deep-partial.ts +73 -0
  506. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/mini/external.ts +52 -0
  507. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/mini/in-out.ts +45 -0
  508. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/mini/index.ts +3 -0
  509. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/mini/iso.ts +66 -0
  510. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/mini/parse.ts +16 -0
  511. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/mini/schemas.ts +2051 -0
  512. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/mini/tests/apply.test.ts +57 -0
  513. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/mini/tests/assignability.test.ts +190 -0
  514. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/mini/tests/brand.test.ts +94 -0
  515. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/mini/tests/checks.test.ts +158 -0
  516. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/mini/tests/codec.test.ts +582 -0
  517. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/mini/tests/computed.test.ts +30 -0
  518. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/mini/tests/cyclic-data.test.ts +84 -0
  519. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/mini/tests/deep-partial.test.ts +54 -0
  520. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/mini/tests/error.test.ts +41 -0
  521. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/mini/tests/functions.test.ts +14 -0
  522. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/mini/tests/index.test.ts +1146 -0
  523. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/mini/tests/number.test.ts +109 -0
  524. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/mini/tests/object.test.ts +292 -0
  525. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/mini/tests/prototypes.test.ts +43 -0
  526. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/mini/tests/recursive-types.test.ts +341 -0
  527. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/mini/tests/standard-schema.test.ts +50 -0
  528. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4/mini/tests/string.test.ts +396 -0
  529. package/lib/node_modules/archgen-mcp/node_modules/zod/src/v4-mini/index.ts +3 -0
  530. package/lib/node_modules/archgen-mcp/node_modules/zod/v3/ZodError.cjs +167 -0
  531. package/lib/node_modules/archgen-mcp/node_modules/zod/v3/ZodError.d.cts +164 -0
  532. package/lib/node_modules/archgen-mcp/node_modules/zod/v3/ZodError.d.ts +164 -0
  533. package/lib/node_modules/archgen-mcp/node_modules/zod/v3/ZodError.js +143 -0
  534. package/lib/node_modules/archgen-mcp/node_modules/zod/v3/errors.cjs +36 -0
  535. package/lib/node_modules/archgen-mcp/node_modules/zod/v3/errors.d.cts +5 -0
  536. package/lib/node_modules/archgen-mcp/node_modules/zod/v3/errors.d.ts +5 -0
  537. package/lib/node_modules/archgen-mcp/node_modules/zod/v3/errors.js +9 -0
  538. package/lib/node_modules/archgen-mcp/node_modules/zod/v3/external.cjs +41 -0
  539. package/lib/node_modules/archgen-mcp/node_modules/zod/v3/external.d.cts +6 -0
  540. package/lib/node_modules/archgen-mcp/node_modules/zod/v3/external.d.ts +6 -0
  541. package/lib/node_modules/archgen-mcp/node_modules/zod/v3/external.js +6 -0
  542. package/lib/node_modules/archgen-mcp/node_modules/zod/v3/helpers/enumUtil.cjs +21 -0
  543. package/lib/node_modules/archgen-mcp/node_modules/zod/v3/helpers/enumUtil.d.cts +8 -0
  544. package/lib/node_modules/archgen-mcp/node_modules/zod/v3/helpers/enumUtil.d.ts +8 -0
  545. package/lib/node_modules/archgen-mcp/node_modules/zod/v3/helpers/enumUtil.js +1 -0
  546. package/lib/node_modules/archgen-mcp/node_modules/zod/v3/helpers/errorUtil.cjs +28 -0
  547. package/lib/node_modules/archgen-mcp/node_modules/zod/v3/helpers/errorUtil.d.cts +9 -0
  548. package/lib/node_modules/archgen-mcp/node_modules/zod/v3/helpers/errorUtil.d.ts +9 -0
  549. package/lib/node_modules/archgen-mcp/node_modules/zod/v3/helpers/errorUtil.js +6 -0
  550. package/lib/node_modules/archgen-mcp/node_modules/zod/v3/helpers/parseUtil.cjs +143 -0
  551. package/lib/node_modules/archgen-mcp/node_modules/zod/v3/helpers/parseUtil.d.cts +78 -0
  552. package/lib/node_modules/archgen-mcp/node_modules/zod/v3/helpers/parseUtil.d.ts +78 -0
  553. package/lib/node_modules/archgen-mcp/node_modules/zod/v3/helpers/parseUtil.js +109 -0
  554. package/lib/node_modules/archgen-mcp/node_modules/zod/v3/helpers/partialUtil.cjs +21 -0
  555. package/lib/node_modules/archgen-mcp/node_modules/zod/v3/helpers/partialUtil.d.cts +8 -0
  556. package/lib/node_modules/archgen-mcp/node_modules/zod/v3/helpers/partialUtil.d.ts +8 -0
  557. package/lib/node_modules/archgen-mcp/node_modules/zod/v3/helpers/partialUtil.js +1 -0
  558. package/lib/node_modules/archgen-mcp/node_modules/zod/v3/helpers/typeAliases.cjs +21 -0
  559. package/lib/node_modules/archgen-mcp/node_modules/zod/v3/helpers/typeAliases.d.cts +2 -0
  560. package/lib/node_modules/archgen-mcp/node_modules/zod/v3/helpers/typeAliases.d.ts +2 -0
  561. package/lib/node_modules/archgen-mcp/node_modules/zod/v3/helpers/typeAliases.js +1 -0
  562. package/lib/node_modules/archgen-mcp/node_modules/zod/v3/helpers/util.cjs +156 -0
  563. package/lib/node_modules/archgen-mcp/node_modules/zod/v3/helpers/util.d.cts +85 -0
  564. package/lib/node_modules/archgen-mcp/node_modules/zod/v3/helpers/util.d.ts +85 -0
  565. package/lib/node_modules/archgen-mcp/node_modules/zod/v3/helpers/util.js +133 -0
  566. package/lib/node_modules/archgen-mcp/node_modules/zod/v3/index.cjs +52 -0
  567. package/lib/node_modules/archgen-mcp/node_modules/zod/v3/index.d.cts +4 -0
  568. package/lib/node_modules/archgen-mcp/node_modules/zod/v3/index.d.ts +4 -0
  569. package/lib/node_modules/archgen-mcp/node_modules/zod/v3/index.js +4 -0
  570. package/lib/node_modules/archgen-mcp/node_modules/zod/v3/locales/en.cjs +112 -0
  571. package/lib/node_modules/archgen-mcp/node_modules/zod/v3/locales/en.d.cts +3 -0
  572. package/lib/node_modules/archgen-mcp/node_modules/zod/v3/locales/en.d.ts +3 -0
  573. package/lib/node_modules/archgen-mcp/node_modules/zod/v3/locales/en.js +109 -0
  574. package/lib/node_modules/archgen-mcp/node_modules/zod/v3/package.json +7 -0
  575. package/lib/node_modules/archgen-mcp/node_modules/zod/v3/standard-schema.cjs +21 -0
  576. package/lib/node_modules/archgen-mcp/node_modules/zod/v3/standard-schema.d.cts +102 -0
  577. package/lib/node_modules/archgen-mcp/node_modules/zod/v3/standard-schema.d.ts +102 -0
  578. package/lib/node_modules/archgen-mcp/node_modules/zod/v3/standard-schema.js +1 -0
  579. package/lib/node_modules/archgen-mcp/node_modules/zod/v3/types.cjs +3798 -0
  580. package/lib/node_modules/archgen-mcp/node_modules/zod/v3/types.d.cts +1034 -0
  581. package/lib/node_modules/archgen-mcp/node_modules/zod/v3/types.d.ts +1034 -0
  582. package/lib/node_modules/archgen-mcp/node_modules/zod/v3/types.js +3697 -0
  583. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/classic/checks.cjs +53 -0
  584. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/classic/checks.d.cts +1 -0
  585. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/classic/checks.d.ts +1 -0
  586. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/classic/checks.js +1 -0
  587. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/classic/coerce.cjs +66 -0
  588. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/classic/coerce.d.cts +17 -0
  589. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/classic/coerce.d.ts +17 -0
  590. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/classic/coerce.js +17 -0
  591. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/classic/compat.cjs +80 -0
  592. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/classic/compat.d.cts +48 -0
  593. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/classic/compat.d.ts +48 -0
  594. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/classic/compat.js +31 -0
  595. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/classic/deep-partial.cjs +58 -0
  596. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/classic/deep-partial.d.cts +14 -0
  597. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/classic/deep-partial.d.ts +14 -0
  598. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/classic/deep-partial.js +13 -0
  599. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/classic/errors.cjs +102 -0
  600. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/classic/errors.d.cts +29 -0
  601. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/classic/errors.d.ts +29 -0
  602. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/classic/errors.js +57 -0
  603. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/classic/external.cjs +97 -0
  604. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/classic/external.d.cts +19 -0
  605. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/classic/external.d.ts +19 -0
  606. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/classic/external.js +17 -0
  607. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/classic/from-json-schema.cjs +926 -0
  608. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/classic/from-json-schema.d.cts +12 -0
  609. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/classic/from-json-schema.d.ts +12 -0
  610. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/classic/from-json-schema.js +881 -0
  611. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/classic/in-out.cjs +82 -0
  612. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/classic/in-out.d.cts +8 -0
  613. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/classic/in-out.d.ts +8 -0
  614. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/classic/in-out.js +36 -0
  615. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/classic/index.cjs +52 -0
  616. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/classic/index.d.cts +3 -0
  617. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/classic/index.d.ts +3 -0
  618. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/classic/index.js +4 -0
  619. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/classic/iso.cjs +68 -0
  620. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/classic/iso.d.cts +7 -0
  621. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/classic/iso.d.ts +7 -0
  622. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/classic/iso.js +15 -0
  623. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/classic/package.json +7 -0
  624. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/classic/parse.cjs +63 -0
  625. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/classic/parse.d.cts +44 -0
  626. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/classic/parse.d.ts +44 -0
  627. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/classic/parse.js +16 -0
  628. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/classic/schemas.cjs +1676 -0
  629. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/classic/schemas.d.cts +816 -0
  630. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/classic/schemas.d.ts +816 -0
  631. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/classic/schemas.js +1535 -0
  632. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/api.cjs +1269 -0
  633. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/api.d.cts +335 -0
  634. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/api.d.ts +335 -0
  635. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/api.js +1107 -0
  636. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/checks.cjs +561 -0
  637. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/checks.d.cts +294 -0
  638. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/checks.d.ts +294 -0
  639. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/checks.js +516 -0
  640. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/compile.cjs +1916 -0
  641. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/compile.d.cts +65 -0
  642. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/compile.d.ts +65 -0
  643. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/compile.js +1866 -0
  644. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/core.cjs +167 -0
  645. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/core.d.cts +82 -0
  646. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/core.d.ts +82 -0
  647. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/core.js +141 -0
  648. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/doc.cjs +61 -0
  649. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/doc.d.cts +16 -0
  650. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/doc.d.ts +16 -0
  651. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/doc.js +38 -0
  652. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/errors.cjs +317 -0
  653. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/errors.d.cts +225 -0
  654. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/errors.d.ts +225 -0
  655. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/errors.js +267 -0
  656. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/index.cjs +70 -0
  657. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/index.d.cts +19 -0
  658. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/index.d.ts +19 -0
  659. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/index.js +19 -0
  660. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/json-schema-generator.cjs +122 -0
  661. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/json-schema-generator.d.cts +65 -0
  662. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/json-schema-generator.d.ts +65 -0
  663. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/json-schema-generator.js +99 -0
  664. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/json-schema-processors.cjs +929 -0
  665. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/json-schema-processors.d.cts +65 -0
  666. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/json-schema-processors.d.ts +65 -0
  667. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/json-schema-processors.js +843 -0
  668. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/json-schema.cjs +21 -0
  669. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/json-schema.d.cts +89 -0
  670. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/json-schema.d.ts +89 -0
  671. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/json-schema.js +1 -0
  672. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/memoizer.cjs +360 -0
  673. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/memoizer.d.cts +15 -0
  674. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/memoizer.d.ts +15 -0
  675. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/memoizer.js +311 -0
  676. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/package.json +7 -0
  677. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/parse.cjs +233 -0
  678. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/parse.d.cts +52 -0
  679. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/parse.d.ts +52 -0
  680. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/parse.js +175 -0
  681. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/regexes.cjs +209 -0
  682. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/regexes.d.cts +90 -0
  683. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/regexes.d.ts +90 -0
  684. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/regexes.js +156 -0
  685. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/registries.cjs +75 -0
  686. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/registries.d.cts +35 -0
  687. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/registries.d.ts +35 -0
  688. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/registries.js +51 -0
  689. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/schemas.cjs +2699 -0
  690. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/schemas.d.cts +1275 -0
  691. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/schemas.d.ts +1275 -0
  692. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/schemas.js +2636 -0
  693. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/standard-schema.cjs +21 -0
  694. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/standard-schema.d.cts +126 -0
  695. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/standard-schema.d.ts +126 -0
  696. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/standard-schema.js +1 -0
  697. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/to-json-schema.cjs +681 -0
  698. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/to-json-schema.d.cts +154 -0
  699. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/to-json-schema.d.ts +154 -0
  700. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/to-json-schema.js +651 -0
  701. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/util.cjs +964 -0
  702. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/util.d.cts +280 -0
  703. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/util.d.ts +280 -0
  704. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/util.js +873 -0
  705. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/versions.cjs +27 -0
  706. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/versions.d.cts +5 -0
  707. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/versions.d.ts +5 -0
  708. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/versions.js +5 -0
  709. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/visit.cjs +214 -0
  710. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/visit.d.cts +30 -0
  711. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/visit.d.ts +30 -0
  712. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/core/visit.js +169 -0
  713. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/index.cjs +51 -0
  714. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/index.d.cts +3 -0
  715. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/index.d.ts +3 -0
  716. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/index.js +4 -0
  717. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/ar.cjs +138 -0
  718. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/ar.d.cts +5 -0
  719. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/ar.d.ts +4 -0
  720. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/ar.js +111 -0
  721. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/az.cjs +137 -0
  722. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/az.d.cts +5 -0
  723. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/az.d.ts +4 -0
  724. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/az.js +110 -0
  725. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/be.cjs +195 -0
  726. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/be.d.cts +5 -0
  727. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/be.d.ts +4 -0
  728. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/be.js +168 -0
  729. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/bg.cjs +152 -0
  730. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/bg.d.cts +5 -0
  731. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/bg.d.ts +4 -0
  732. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/bg.js +125 -0
  733. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/bn.cjs +140 -0
  734. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/bn.d.cts +5 -0
  735. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/bn.d.ts +4 -0
  736. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/bn.js +113 -0
  737. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/ca.cjs +139 -0
  738. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/ca.d.cts +5 -0
  739. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/ca.d.ts +4 -0
  740. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/ca.js +112 -0
  741. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/ckb.cjs +160 -0
  742. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/ckb.d.cts +5 -0
  743. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/ckb.d.ts +4 -0
  744. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/ckb.js +133 -0
  745. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/cs.cjs +143 -0
  746. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/cs.d.cts +5 -0
  747. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/cs.d.ts +4 -0
  748. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/cs.js +116 -0
  749. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/da.cjs +147 -0
  750. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/da.d.cts +5 -0
  751. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/da.d.ts +4 -0
  752. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/da.js +120 -0
  753. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/de.cjs +140 -0
  754. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/de.d.cts +5 -0
  755. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/de.d.ts +4 -0
  756. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/de.js +113 -0
  757. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/el.cjs +139 -0
  758. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/el.d.cts +5 -0
  759. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/el.d.ts +4 -0
  760. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/el.js +112 -0
  761. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/en.cjs +152 -0
  762. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/en.d.cts +5 -0
  763. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/en.d.ts +4 -0
  764. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/en.js +125 -0
  765. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/eo.cjs +141 -0
  766. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/eo.d.cts +5 -0
  767. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/eo.d.ts +4 -0
  768. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/eo.js +114 -0
  769. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/es.cjs +163 -0
  770. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/es.d.cts +5 -0
  771. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/es.d.ts +4 -0
  772. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/es.js +136 -0
  773. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/fa.cjs +146 -0
  774. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/fa.d.cts +5 -0
  775. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/fa.d.ts +4 -0
  776. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/fa.js +119 -0
  777. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/fi.cjs +144 -0
  778. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/fi.d.cts +5 -0
  779. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/fi.d.ts +4 -0
  780. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/fi.js +117 -0
  781. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/fr-CA.cjs +139 -0
  782. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/fr-CA.d.cts +5 -0
  783. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/fr-CA.d.ts +4 -0
  784. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/fr-CA.js +112 -0
  785. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/fr.cjs +156 -0
  786. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/fr.d.cts +5 -0
  787. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/fr.d.ts +4 -0
  788. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/fr.js +129 -0
  789. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/gu.cjs +140 -0
  790. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/gu.d.cts +5 -0
  791. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/gu.d.ts +4 -0
  792. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/gu.js +113 -0
  793. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/he.cjs +248 -0
  794. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/he.d.cts +5 -0
  795. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/he.d.ts +4 -0
  796. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/he.js +221 -0
  797. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/hi.cjs +138 -0
  798. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/hi.d.cts +5 -0
  799. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/hi.d.ts +4 -0
  800. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/hi.js +111 -0
  801. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/hr.cjs +153 -0
  802. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/hr.d.cts +5 -0
  803. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/hr.d.ts +4 -0
  804. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/hr.js +126 -0
  805. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/hu.cjs +140 -0
  806. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/hu.d.cts +5 -0
  807. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/hu.d.ts +4 -0
  808. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/hu.js +113 -0
  809. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/hy.cjs +185 -0
  810. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/hy.d.cts +5 -0
  811. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/hy.d.ts +4 -0
  812. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/hy.js +158 -0
  813. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/id.cjs +138 -0
  814. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/id.d.cts +5 -0
  815. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/id.d.ts +4 -0
  816. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/id.js +111 -0
  817. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/index.cjs +152 -0
  818. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/index.d.cts +63 -0
  819. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/index.d.ts +63 -0
  820. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/index.js +63 -0
  821. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/is.cjs +141 -0
  822. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/is.d.cts +5 -0
  823. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/is.d.ts +4 -0
  824. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/is.js +114 -0
  825. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/it.cjs +140 -0
  826. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/it.d.cts +5 -0
  827. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/it.d.ts +4 -0
  828. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/it.js +113 -0
  829. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/ja.cjs +139 -0
  830. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/ja.d.cts +5 -0
  831. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/ja.d.ts +4 -0
  832. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/ja.js +112 -0
  833. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/ka.cjs +144 -0
  834. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/ka.d.cts +5 -0
  835. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/ka.d.ts +4 -0
  836. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/ka.js +117 -0
  837. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/kh.cjs +12 -0
  838. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/kh.d.cts +5 -0
  839. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/kh.d.ts +5 -0
  840. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/kh.js +5 -0
  841. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/km.cjs +142 -0
  842. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/km.d.cts +5 -0
  843. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/km.d.ts +4 -0
  844. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/km.js +115 -0
  845. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/kn.cjs +143 -0
  846. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/kn.d.cts +5 -0
  847. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/kn.d.ts +4 -0
  848. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/kn.js +116 -0
  849. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/ko.cjs +143 -0
  850. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/ko.d.cts +5 -0
  851. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/ko.d.ts +4 -0
  852. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/ko.js +116 -0
  853. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/lt.cjs +234 -0
  854. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/lt.d.cts +5 -0
  855. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/lt.d.ts +4 -0
  856. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/lt.js +207 -0
  857. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/mk.cjs +141 -0
  858. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/mk.d.cts +5 -0
  859. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/mk.d.ts +4 -0
  860. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/mk.js +114 -0
  861. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/ms.cjs +139 -0
  862. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/ms.d.cts +5 -0
  863. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/ms.d.ts +4 -0
  864. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/ms.js +112 -0
  865. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/ne.cjs +138 -0
  866. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/ne.d.cts +5 -0
  867. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/ne.d.ts +4 -0
  868. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/ne.js +111 -0
  869. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/nl.cjs +142 -0
  870. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/nl.d.cts +5 -0
  871. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/nl.d.ts +4 -0
  872. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/nl.js +115 -0
  873. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/nn.cjs +140 -0
  874. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/nn.d.cts +5 -0
  875. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/nn.d.ts +4 -0
  876. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/nn.js +113 -0
  877. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/no.cjs +140 -0
  878. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/no.d.cts +5 -0
  879. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/no.d.ts +4 -0
  880. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/no.js +113 -0
  881. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/ota.cjs +141 -0
  882. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/ota.d.cts +5 -0
  883. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/ota.d.ts +4 -0
  884. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/ota.js +114 -0
  885. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/package.json +7 -0
  886. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/pl.cjs +141 -0
  887. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/pl.d.cts +5 -0
  888. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/pl.d.ts +4 -0
  889. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/pl.js +114 -0
  890. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/ps.cjs +146 -0
  891. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/ps.d.cts +5 -0
  892. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/ps.d.ts +4 -0
  893. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/ps.js +119 -0
  894. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/pt-BR.cjs +170 -0
  895. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/pt-BR.d.cts +5 -0
  896. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/pt-BR.d.ts +4 -0
  897. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/pt-BR.js +143 -0
  898. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/pt.cjs +169 -0
  899. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/pt.d.cts +5 -0
  900. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/pt.d.ts +4 -0
  901. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/pt.js +142 -0
  902. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/ro.cjs +149 -0
  903. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/ro.d.cts +5 -0
  904. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/ro.d.ts +4 -0
  905. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/ro.js +122 -0
  906. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/ru.cjs +195 -0
  907. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/ru.d.cts +5 -0
  908. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/ru.d.ts +4 -0
  909. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/ru.js +168 -0
  910. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/sk.cjs +143 -0
  911. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/sk.d.cts +5 -0
  912. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/sk.d.ts +4 -0
  913. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/sk.js +116 -0
  914. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/sl.cjs +141 -0
  915. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/sl.d.cts +5 -0
  916. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/sl.d.ts +4 -0
  917. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/sl.js +114 -0
  918. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/sv.cjs +142 -0
  919. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/sv.d.cts +5 -0
  920. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/sv.d.ts +4 -0
  921. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/sv.js +115 -0
  922. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/ta.cjs +142 -0
  923. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/ta.d.cts +5 -0
  924. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/ta.d.ts +4 -0
  925. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/ta.js +115 -0
  926. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/tg.cjs +144 -0
  927. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/tg.d.cts +5 -0
  928. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/tg.d.ts +4 -0
  929. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/tg.js +117 -0
  930. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/th.cjs +142 -0
  931. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/th.d.cts +5 -0
  932. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/th.d.ts +4 -0
  933. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/th.js +115 -0
  934. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/tk.cjs +134 -0
  935. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/tk.d.cts +5 -0
  936. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/tk.d.ts +4 -0
  937. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/tk.js +107 -0
  938. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/tr.cjs +137 -0
  939. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/tr.d.cts +5 -0
  940. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/tr.d.ts +4 -0
  941. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/tr.js +110 -0
  942. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/ua.cjs +12 -0
  943. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/ua.d.cts +5 -0
  944. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/ua.d.ts +5 -0
  945. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/ua.js +5 -0
  946. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/uk.cjs +140 -0
  947. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/uk.d.cts +5 -0
  948. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/uk.d.ts +4 -0
  949. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/uk.js +113 -0
  950. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/ur.cjs +142 -0
  951. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/ur.d.cts +5 -0
  952. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/ur.d.ts +4 -0
  953. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/ur.js +115 -0
  954. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/uz.cjs +140 -0
  955. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/uz.d.cts +5 -0
  956. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/uz.d.ts +4 -0
  957. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/uz.js +113 -0
  958. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/vi.cjs +140 -0
  959. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/vi.d.cts +5 -0
  960. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/vi.d.ts +4 -0
  961. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/vi.js +113 -0
  962. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/yo.cjs +139 -0
  963. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/yo.d.cts +5 -0
  964. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/yo.d.ts +4 -0
  965. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/yo.js +112 -0
  966. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/zh-CN.cjs +141 -0
  967. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/zh-CN.d.cts +5 -0
  968. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/zh-CN.d.ts +4 -0
  969. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/zh-CN.js +114 -0
  970. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/zh-TW.cjs +139 -0
  971. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/zh-TW.d.cts +5 -0
  972. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/zh-TW.d.ts +4 -0
  973. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/locales/zh-TW.js +112 -0
  974. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/mini/checks.cjs +54 -0
  975. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/mini/checks.d.cts +1 -0
  976. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/mini/checks.d.ts +1 -0
  977. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/mini/checks.js +1 -0
  978. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/mini/coerce.cjs +71 -0
  979. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/mini/coerce.d.cts +7 -0
  980. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/mini/coerce.d.ts +7 -0
  981. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/mini/coerce.js +22 -0
  982. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/mini/deep-partial.cjs +58 -0
  983. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/mini/deep-partial.d.cts +14 -0
  984. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/mini/deep-partial.d.ts +14 -0
  985. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/mini/deep-partial.js +13 -0
  986. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/mini/external.cjs +95 -0
  987. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/mini/external.d.cts +16 -0
  988. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/mini/external.d.ts +16 -0
  989. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/mini/external.js +16 -0
  990. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/mini/in-out.cjs +82 -0
  991. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/mini/in-out.d.cts +8 -0
  992. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/mini/in-out.d.ts +8 -0
  993. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/mini/in-out.js +36 -0
  994. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/mini/index.cjs +51 -0
  995. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/mini/index.d.cts +3 -0
  996. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/mini/index.d.ts +3 -0
  997. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/mini/index.js +3 -0
  998. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/mini/iso.cjs +83 -0
  999. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/mini/iso.d.cts +22 -0
  1000. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/mini/iso.d.ts +22 -0
  1001. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/mini/iso.js +34 -0
  1002. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/mini/package.json +7 -0
  1003. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/mini/parse.cjs +37 -0
  1004. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/mini/parse.d.cts +1 -0
  1005. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/mini/parse.d.ts +1 -0
  1006. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/mini/parse.js +1 -0
  1007. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/mini/schemas.cjs +1147 -0
  1008. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/mini/schemas.d.cts +480 -0
  1009. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/mini/schemas.d.ts +480 -0
  1010. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/mini/schemas.js +1002 -0
  1011. package/lib/node_modules/archgen-mcp/node_modules/zod/v4/package.json +7 -0
  1012. package/lib/node_modules/archgen-mcp/node_modules/zod/v4-mini/index.cjs +51 -0
  1013. package/lib/node_modules/archgen-mcp/node_modules/zod/v4-mini/index.d.cts +3 -0
  1014. package/lib/node_modules/archgen-mcp/node_modules/zod/v4-mini/index.d.ts +3 -0
  1015. package/lib/node_modules/archgen-mcp/node_modules/zod/v4-mini/index.js +3 -0
  1016. package/lib/node_modules/archgen-mcp/node_modules/zod/v4-mini/package.json +7 -0
  1017. package/lib/node_modules/archgen-mcp/package.json +49 -0
  1018. package/lib/node_modules/archgen-mcp/src/cli.mjs +244 -0
  1019. package/lib/node_modules/archgen-mcp/src/context.mjs +198 -0
  1020. package/lib/node_modules/archgen-mcp/src/core/brief-context.mjs +106 -0
  1021. package/lib/node_modules/archgen-mcp/src/core/brief-scope.mjs +218 -0
  1022. package/lib/node_modules/archgen-mcp/src/core/briefs.mjs +168 -0
  1023. package/lib/node_modules/archgen-mcp/src/core/codegraph-manager.mjs +512 -0
  1024. package/lib/node_modules/archgen-mcp/src/core/compat.mjs +187 -0
  1025. package/lib/node_modules/archgen-mcp/src/core/doc-navigator.mjs +620 -0
  1026. package/lib/node_modules/archgen-mcp/src/core/docs.mjs +178 -0
  1027. package/lib/node_modules/archgen-mcp/src/core/errors.mjs +65 -0
  1028. package/lib/node_modules/archgen-mcp/src/core/fs-safety.mjs +247 -0
  1029. package/lib/node_modules/archgen-mcp/src/core/graph.mjs +227 -0
  1030. package/lib/node_modules/archgen-mcp/src/core/guidance.mjs +142 -0
  1031. package/lib/node_modules/archgen-mcp/src/core/harness-wiring.mjs +604 -0
  1032. package/lib/node_modules/archgen-mcp/src/core/impact-analyzer.mjs +89 -0
  1033. package/lib/node_modules/archgen-mcp/src/core/jsonc-config.mjs +706 -0
  1034. package/lib/node_modules/archgen-mcp/src/core/mcp-server-manager.mjs +143 -0
  1035. package/lib/node_modules/archgen-mcp/src/core/plan-coverage.mjs +69 -0
  1036. package/lib/node_modules/archgen-mcp/src/core/plan-grapher.mjs +347 -0
  1037. package/lib/node_modules/archgen-mcp/src/core/platform-caps.mjs +95 -0
  1038. package/lib/node_modules/archgen-mcp/src/core/refs.mjs +184 -0
  1039. package/lib/node_modules/archgen-mcp/src/core/registry-updater.mjs +232 -0
  1040. package/lib/node_modules/archgen-mcp/src/core/resume-snapshot.mjs +120 -0
  1041. package/lib/node_modules/archgen-mcp/src/core/scaffold.mjs +199 -0
  1042. package/lib/node_modules/archgen-mcp/src/core/scope.mjs +99 -0
  1043. package/lib/node_modules/archgen-mcp/src/core/skill-manager.mjs +479 -0
  1044. package/lib/node_modules/archgen-mcp/src/core/skill-roots.mjs +92 -0
  1045. package/lib/node_modules/archgen-mcp/src/core/status-mutator.mjs +121 -0
  1046. package/lib/node_modules/archgen-mcp/src/core/tokens.mjs +78 -0
  1047. package/lib/node_modules/archgen-mcp/src/core/validator.mjs +121 -0
  1048. package/lib/node_modules/archgen-mcp/src/core/verifier.mjs +99 -0
  1049. package/lib/node_modules/archgen-mcp/src/core/wave-resolver.mjs +116 -0
  1050. package/lib/node_modules/archgen-mcp/src/core/worker-contract.mjs +298 -0
  1051. package/lib/node_modules/archgen-mcp/src/core/yaml.mjs +517 -0
  1052. package/lib/node_modules/archgen-mcp/src/envelope.mjs +65 -0
  1053. package/lib/node_modules/archgen-mcp/src/server.mjs +58 -0
  1054. package/lib/node_modules/archgen-mcp/src/tools/_register.mjs +120 -0
  1055. package/lib/node_modules/archgen-mcp/src/tools/codegraph.mjs +53 -0
  1056. package/lib/node_modules/archgen-mcp/src/tools/docs.mjs +113 -0
  1057. package/lib/node_modules/archgen-mcp/src/tools/help.mjs +284 -0
  1058. package/lib/node_modules/archgen-mcp/src/tools/plan.mjs +176 -0
  1059. package/lib/node_modules/archgen-mcp/src/tools/refs.mjs +62 -0
  1060. package/lib/node_modules/archgen-mcp/src/tools/registry.mjs +35 -0
  1061. package/lib/node_modules/archgen-mcp/src/tools/setup.mjs +179 -0
  1062. package/lib/node_modules/archgen-mcp/src/tools/skills.mjs +207 -0
  1063. package/lib/node_modules/archgen-mcp/src/tools/tasks.mjs +206 -0
  1064. package/package.json +1 -1
  1065. package/vendor/skills/archgen/SKILL.md +11 -9
  1066. package/vendor/skills/archgen/archgen.config.json +1 -1
  1067. package/vendor/skills/archgen/references/code-standards.md +24 -8
@@ -0,0 +1,1578 @@
1
+ import { _ as PerRequestHTTPServerTransport, a as seedClientIdentityFromEnvelope, b as completable, c as findScopeChallenge, d as buildOAuthProtectedResourceMetadata, f as getOAuthProtectedResourceMetadataUrl, g as verifyBearerToken, h as requireBearerAuth, i as installModernOnlyHandlers, l as requireScopes, m as bearerAuthChallengeResponse, n as ResourceTemplate, o as serverIdentityOf, p as oauthMetadataResponse, r as Server, s as createScopeChallengeResponse, t as McpServer, u as scopeChallengeResourceMetadataUrl, v as DEFAULT_SSE_KEEP_ALIVE_MS, x as isCompletable, y as armSseKeepAlive } from "./mcp-oHn3ureC.mjs";
2
+ import { $ as isTaskAugmentedRequestParams, At as LATEST_PROTOCOL_VERSION, B as scanXMcpHeaderDeclarations, Bt as TRACESTATE_META_KEY, Ct as CLIENT_CAPABILITIES_META_KEY, D as acceptedContent, Dt as INVALID_PARAMS, Et as INTERNAL_ERROR, Ft as RELATED_TASK_META_KEY, G as isInitializeRequest, Gt as resourceUrlFromServerUrl, H as assertCompleteRequestPrompt, I as classifyInboundRequest, It as SERVER_INFO_META_KEY, J as isJSONRPCErrorResponse, Jt as SdkHttpError, K as isInitializedNotification, Kt as SdkError, L as httpStatusForErrorCode, Lt as SUBSCRIPTION_ID_META_KEY, Mt as METHOD_NOT_FOUND, Nt as PARSE_ERROR, O as inputRequired, Ot as INVALID_REQUEST, Pt as PROTOCOL_VERSION_META_KEY, Q as isJSONRPCResultResponse, R as modernOnlyStrictRejection, Rt as SUPPORTED_PROTOCOL_VERSIONS, S as specTypeSchemas, St as BAGGAGE_META_KEY, Tt as DEFAULT_NEGOTIATED_PROTOCOL_VERSION, U as assertCompleteRequestResourceTemplate, Ut as requiredClientCapabilitiesForRequest, V as validateMcpParamHeaders, Vt as missingClientCapabilities, W as isCallToolResult, Wt as checkResourceAllowed, X as isJSONRPCRequest, Xt as OAuthErrorCode, Y as isJSONRPCNotification, Yt as OAuthError, Z as isJSONRPCResponse, _ as mergeCapabilities, a as UriTemplate, at as requestMetaOf, c as ReadBuffer, d as serializeMessage, dt as ResourceNotFoundError, et as parseJSONRPCMessage, f as getDisplayName, ft as UnsupportedProtocolVersionError, g as Protocol, h as DEFAULT_REQUEST_TIMEOUT_MSEC, i as InMemoryTransport, jt as LOG_LEVEL_META_KEY, k as inputResponse, kt as JSONRPC_VERSION, l as STDIO_DEFAULT_MAX_BUFFER_SIZE, lt as MissingRequiredClientCapabilityError, m as mediaTypeEssence, mt as ProtocolErrorCode, n as preloadSchemas, o as createFetchWithInit, p as isJsonContentType, pt as UrlElicitationRequiredError, q as isInputRequiredResult, qt as SdkErrorCode, t as fromJsonSchema$1, tt as JSONRPCMessageSchema, u as deserializeMessage, ut as ProtocolError, vt as SUPPORTED_MODERN_PROTOCOL_VERSIONS, wt as CLIENT_INFO_META_KEY, x as isSpecType, y as setNegotiatedProtocolVersion, z as validateStandardRequestHeaders, zt as TRACEPARENT_META_KEY } from "./src-DdvbAHrR.mjs";
3
+ import { a as createServerNotifier, i as InMemoryServerEventBus, r as createListenRouter, t as DEFAULT_MAX_SUBSCRIPTIONS } from "./listenRouter-Bartj63y.mjs";
4
+ import { DefaultJsonSchemaValidator } from "@modelcontextprotocol/server/_shims";
5
+
6
+ //#region src/server/invoke.ts
7
+ /**
8
+ * Serves one classified inbound message on the given server instance and
9
+ * returns the HTTP response for the exchange.
10
+ *
11
+ * The instance is connected to a fresh single-exchange transport, the message
12
+ * is injected through the normal transport message path, and whatever the
13
+ * dispatch layer produces (the handler result, a protocol-level rejection, or
14
+ * streamed related messages followed by the result) is captured as the
15
+ * returned `Response`. For request exchanges, teardown rides the transport's
16
+ * close chain once the terminal response has been delivered; notification
17
+ * exchanges resolve with the 202 response immediately and do NOT run the
18
+ * close chain — the transport stays connected until the caller closes it or
19
+ * drops the per-request instance, which is the caller's choice either way.
20
+ */
21
+ async function invoke(server, message, ctx) {
22
+ const transport = new PerRequestHTTPServerTransport({
23
+ classification: ctx.classification,
24
+ ...ctx.responseMode !== void 0 && { responseMode: ctx.responseMode },
25
+ ...ctx.keepAliveMs !== void 0 && { keepAliveMs: ctx.keepAliveMs }
26
+ });
27
+ await server.connect(transport);
28
+ return transport.handleMessage(message, {
29
+ ...ctx.request !== void 0 && { request: ctx.request },
30
+ ...ctx.authInfo !== void 0 && { authInfo: ctx.authInfo }
31
+ });
32
+ }
33
+
34
+ //#endregion
35
+ //#region src/server/requestBody.ts
36
+ /** Default upper bound, in bytes, on a request body read by the HTTP entry points (4 MiB). */
37
+ const DEFAULT_MAX_REQUEST_BODY_SIZE = 4 * 1024 * 1024;
38
+ /** Upper bound on the number of messages accepted in one JSON-RPC batch array. */
39
+ const MAX_BATCH_SIZE = 100;
40
+ /** The message answered with 413 for a request body over `maxBytes`. */
41
+ function requestBodyTooLargeMessage(maxBytes) {
42
+ return `Payload Too Large: Request body must not exceed ${maxBytes} bytes`;
43
+ }
44
+ /**
45
+ * Resolves a `maxRequestBodySize` option to the bound to apply: the default when
46
+ * omitted, otherwise the value itself, which must be a positive finite number of
47
+ * bytes (a `RangeError` is thrown at configuration time for anything else).
48
+ */
49
+ function resolveMaxRequestBodySize(value) {
50
+ if (value === void 0) return DEFAULT_MAX_REQUEST_BODY_SIZE;
51
+ if (typeof value !== "number" || !Number.isFinite(value) || value <= 0) throw new RangeError(`maxRequestBodySize must be a positive number of bytes, got ${String(value)}`);
52
+ return value;
53
+ }
54
+ /**
55
+ * Reads a request body as text, up to `maxBytes` (default
56
+ * {@linkcode DEFAULT_MAX_REQUEST_BODY_SIZE}). A declared `Content-Length` over the
57
+ * limit is refused without reading anything; otherwise the read stops as soon as
58
+ * more than the limit has arrived. Stream failures propagate.
59
+ */
60
+ async function readRequestBody(request, maxBytes = DEFAULT_MAX_REQUEST_BODY_SIZE) {
61
+ if (Number(request.headers.get("content-length")) > maxBytes) return { tooLarge: true };
62
+ if (request.body === null) return {
63
+ tooLarge: false,
64
+ text: ""
65
+ };
66
+ const reader = request.body.getReader();
67
+ const decoder = new TextDecoder();
68
+ let received = 0;
69
+ let text = "";
70
+ try {
71
+ for (;;) {
72
+ const { done, value } = await reader.read();
73
+ if (done) break;
74
+ received += value.byteLength;
75
+ if (received > maxBytes) return { tooLarge: true };
76
+ text += decoder.decode(value, { stream: true });
77
+ }
78
+ } finally {
79
+ reader.releaseLock();
80
+ }
81
+ return {
82
+ tooLarge: false,
83
+ text: text + decoder.decode()
84
+ };
85
+ }
86
+
87
+ //#endregion
88
+ //#region src/server/streamableHttp.ts
89
+ /**
90
+ * Server transport for Web Standards Streamable HTTP: this implements the MCP Streamable HTTP transport specification
91
+ * using Web Standard APIs (`Request`, `Response`, `ReadableStream`).
92
+ *
93
+ * This transport works on any runtime that supports Web Standards: Node.js 18+, Cloudflare Workers, Deno, Bun, etc.
94
+ *
95
+ * In stateful mode:
96
+ * - Session ID is generated and included in response headers
97
+ * - Session ID is always included in initialization responses
98
+ * - Requests with invalid session IDs are rejected with `404 Not Found`
99
+ * - Non-initialization requests without a session ID are rejected with `400 Bad Request`
100
+ * - State is maintained in-memory (connections, message history)
101
+ *
102
+ * In stateless mode:
103
+ * - No Session ID is included in any responses
104
+ * - No session validation is performed
105
+ *
106
+ * @example Stateful setup
107
+ * ```ts source="./streamableHttp.examples.ts#WebStandardStreamableHTTPServerTransport_stateful"
108
+ * const server = new McpServer({ name: 'my-server', version: '1.0.0' });
109
+ *
110
+ * const transport = new WebStandardStreamableHTTPServerTransport({
111
+ * sessionIdGenerator: () => crypto.randomUUID()
112
+ * });
113
+ *
114
+ * await server.connect(transport);
115
+ * ```
116
+ *
117
+ * @example Stateless setup
118
+ * ```ts source="./streamableHttp.examples.ts#WebStandardStreamableHTTPServerTransport_stateless"
119
+ * const transport = new WebStandardStreamableHTTPServerTransport({
120
+ * sessionIdGenerator: undefined
121
+ * });
122
+ * ```
123
+ *
124
+ * @example Hono.js
125
+ * ```ts source="./streamableHttp.examples.ts#WebStandardStreamableHTTPServerTransport_hono"
126
+ * app.all('/mcp', async c => {
127
+ * // Stateless example: create a server and a transport per request.
128
+ * const server = new McpServer({ name: 'my-server', version: '1.0.0' });
129
+ * const transport = new WebStandardStreamableHTTPServerTransport({ sessionIdGenerator: undefined });
130
+ * await server.connect(transport);
131
+ * return transport.handleRequest(c.req.raw);
132
+ * });
133
+ * ```
134
+ *
135
+ * @example Cloudflare Workers
136
+ * ```ts source="./streamableHttp.examples.ts#WebStandardStreamableHTTPServerTransport_workers"
137
+ * const worker = {
138
+ * async fetch(request: Request): Promise<Response> {
139
+ * // Stateless example: create a server and a transport per request.
140
+ * const server = new McpServer({ name: 'my-server', version: '1.0.0' });
141
+ * const transport = new WebStandardStreamableHTTPServerTransport({ sessionIdGenerator: undefined });
142
+ * await server.connect(transport);
143
+ * return transport.handleRequest(request);
144
+ * }
145
+ * };
146
+ * ```
147
+ */
148
+ var WebStandardStreamableHTTPServerTransport = class {
149
+ sessionIdGenerator;
150
+ _started = false;
151
+ _hasHandledRequest = false;
152
+ _closed = false;
153
+ _streamMapping = /* @__PURE__ */ new Map();
154
+ _requestToStreamMapping = /* @__PURE__ */ new Map();
155
+ _requestResponseMap = /* @__PURE__ */ new Map();
156
+ _initialized = false;
157
+ _enableJsonResponse = false;
158
+ _standaloneSseStreamId = "_GET_stream";
159
+ _eventStore;
160
+ _onsessioninitialized;
161
+ _onsessionclosed;
162
+ _allowedHosts;
163
+ _allowedOrigins;
164
+ _enableDnsRebindingProtection;
165
+ _retryInterval;
166
+ _supportedProtocolVersions;
167
+ _keepAliveMs;
168
+ _maxRequestBodySize;
169
+ _scopeChallengeResolver;
170
+ sessionId;
171
+ onclose;
172
+ onerror;
173
+ onmessage;
174
+ constructor(options = {}) {
175
+ this.sessionIdGenerator = options.sessionIdGenerator;
176
+ this._enableJsonResponse = options.enableJsonResponse ?? false;
177
+ this._eventStore = options.eventStore;
178
+ this._onsessioninitialized = options.onsessioninitialized;
179
+ this._onsessionclosed = options.onsessionclosed;
180
+ this._allowedHosts = options.allowedHosts;
181
+ this._allowedOrigins = options.allowedOrigins;
182
+ this._enableDnsRebindingProtection = options.enableDnsRebindingProtection ?? false;
183
+ this._retryInterval = options.retryInterval;
184
+ this._supportedProtocolVersions = options.supportedProtocolVersions ?? SUPPORTED_PROTOCOL_VERSIONS;
185
+ this._keepAliveMs = options.keepAliveMs ?? DEFAULT_SSE_KEEP_ALIVE_MS;
186
+ this._maxRequestBodySize = resolveMaxRequestBodySize(options.maxRequestBodySize);
187
+ }
188
+ startKeepAlive(controller, encoder) {
189
+ if (this._closed) return void 0;
190
+ const timer = armSseKeepAlive(this._keepAliveMs, () => {
191
+ try {
192
+ controller.enqueue(encoder.encode(": keepalive\n\n"));
193
+ } catch {
194
+ if (timer !== void 0) clearInterval(timer);
195
+ }
196
+ });
197
+ return timer;
198
+ }
199
+ /** Sets the scope challenge resolver for parsed JSON-RPC requests. */
200
+ setScopeChallengeResolver(resolver) {
201
+ this._scopeChallengeResolver = resolver;
202
+ }
203
+ /**
204
+ * Starts the transport. This is required by the {@linkcode Transport} interface but is a no-op
205
+ * for the Streamable HTTP transport as connections are managed per-request.
206
+ */
207
+ async start() {
208
+ if (this._started) throw new Error("Transport already started");
209
+ this._started = true;
210
+ }
211
+ /**
212
+ * Sets the supported protocol versions for header validation.
213
+ * Called by the server during {@linkcode server/server.Server.connect | connect()} to pass its supported versions.
214
+ */
215
+ setSupportedProtocolVersions(versions) {
216
+ this._supportedProtocolVersions = versions;
217
+ }
218
+ /**
219
+ * Helper to create a JSON error response
220
+ */
221
+ createJsonErrorResponse(status, code, message, options) {
222
+ const error = {
223
+ code,
224
+ message
225
+ };
226
+ if (options?.data !== void 0) error.data = options.data;
227
+ return Response.json({
228
+ jsonrpc: "2.0",
229
+ error,
230
+ id: null
231
+ }, {
232
+ status,
233
+ headers: {
234
+ "Content-Type": "application/json",
235
+ ...options?.headers
236
+ }
237
+ });
238
+ }
239
+ async _checkScopeChallenge(messages, authInfo) {
240
+ if (!this._scopeChallengeResolver) return;
241
+ const challenge = await findScopeChallenge(messages.filter((message) => isJSONRPCRequest(message)), authInfo, this._scopeChallengeResolver);
242
+ return challenge === void 0 ? void 0 : createScopeChallengeResponse(challenge, scopeChallengeResourceMetadataUrl(authInfo));
243
+ }
244
+ /**
245
+ * Validates request headers for DNS rebinding protection.
246
+ * @returns Error response if validation fails, `undefined` if validation passes.
247
+ */
248
+ validateRequestHeaders(req) {
249
+ if (!this._enableDnsRebindingProtection) return;
250
+ if (this._allowedHosts && this._allowedHosts.length > 0) {
251
+ const hostHeader = req.headers.get("host");
252
+ if (!hostHeader || !this._allowedHosts.includes(hostHeader)) {
253
+ const error = `Invalid Host header: ${hostHeader}`;
254
+ this.onerror?.(new Error(error));
255
+ return this.createJsonErrorResponse(403, -32e3, error);
256
+ }
257
+ }
258
+ if (this._allowedOrigins && this._allowedOrigins.length > 0) {
259
+ const originHeader = req.headers.get("origin");
260
+ if (originHeader && !this._allowedOrigins.includes(originHeader)) {
261
+ const error = `Invalid Origin header: ${originHeader}`;
262
+ this.onerror?.(new Error(error));
263
+ return this.createJsonErrorResponse(403, -32e3, error);
264
+ }
265
+ }
266
+ }
267
+ /**
268
+ * Handles an incoming HTTP request, whether `GET`, `POST`, or `DELETE`
269
+ * Returns a `Response` object (Web Standard)
270
+ */
271
+ async handleRequest(req, options) {
272
+ if (this._closed) return this.createJsonErrorResponse(404, -32001, "Session not found");
273
+ if (!this.sessionIdGenerator && this._hasHandledRequest) throw new Error("Stateless transport cannot be reused across requests. Create a new transport per request.");
274
+ this._hasHandledRequest = true;
275
+ const validationError = this.validateRequestHeaders(req);
276
+ if (validationError) return validationError;
277
+ switch (req.method) {
278
+ case "POST": return this.handlePostRequest(req, options);
279
+ case "GET": return this.handleGetRequest(req);
280
+ case "DELETE": return this.handleDeleteRequest(req);
281
+ default: return this.handleUnsupportedRequest();
282
+ }
283
+ }
284
+ /**
285
+ * Returns true if the client's protocol version supports empty SSE data in
286
+ * priming events (the fix shipped with protocol version `2025-11-25`).
287
+ *
288
+ * The version is checked for membership in this transport instance's
289
+ * supported protocol versions rather than with an open-ended
290
+ * `>= '2025-11-25'` comparison: the value may come from an `initialize`
291
+ * request body, which (unlike the `MCP-Protocol-Version` header) is not
292
+ * validated against `supportedProtocolVersions` before reaching this
293
+ * check. An unknown future version string must not silently enable
294
+ * behavior reserved for versions this transport actually supports.
295
+ */
296
+ supportsEmptySSEData(protocolVersion) {
297
+ return this._supportedProtocolVersions.includes(protocolVersion) && protocolVersion >= "2025-11-25";
298
+ }
299
+ /**
300
+ * Writes a priming event to establish resumption capability.
301
+ * Only sends if `eventStore` is configured (opt-in for resumability) and
302
+ * the client's protocol version supports empty SSE data (a supported
303
+ * version that is >= `2025-11-25`).
304
+ */
305
+ async writePrimingEvent(controller, encoder, streamId, protocolVersion) {
306
+ if (!this._eventStore) return;
307
+ if (!this.supportsEmptySSEData(protocolVersion)) return;
308
+ const primingEventId = await this._eventStore.storeEvent(streamId, {});
309
+ let primingEvent = `id: ${primingEventId}\ndata: \n\n`;
310
+ if (this._retryInterval !== void 0) primingEvent = `id: ${primingEventId}\nretry: ${this._retryInterval}\ndata: \n\n`;
311
+ controller.enqueue(encoder.encode(primingEvent));
312
+ }
313
+ /**
314
+ * Handles `GET` requests for SSE stream
315
+ */
316
+ async handleGetRequest(req) {
317
+ if (!req.headers.get("accept")?.includes("text/event-stream")) {
318
+ this.onerror?.(/* @__PURE__ */ new Error("Not Acceptable: Client must accept text/event-stream"));
319
+ return this.createJsonErrorResponse(406, -32e3, "Not Acceptable: Client must accept text/event-stream");
320
+ }
321
+ const sessionError = this.validateSession(req);
322
+ if (sessionError) return sessionError;
323
+ const protocolError = this.validateProtocolVersion(req);
324
+ if (protocolError) return protocolError;
325
+ if (this._eventStore) {
326
+ const lastEventId = req.headers.get("last-event-id");
327
+ if (lastEventId) return this.replayEvents(lastEventId);
328
+ }
329
+ if (this._streamMapping.get(this._standaloneSseStreamId) !== void 0) {
330
+ this.onerror?.(/* @__PURE__ */ new Error("Conflict: Only one SSE stream is allowed per session"));
331
+ return this.createJsonErrorResponse(409, -32e3, "Conflict: Only one SSE stream is allowed per session");
332
+ }
333
+ const encoder = new TextEncoder();
334
+ let streamController;
335
+ let keepAliveTimer;
336
+ const readable = new ReadableStream({
337
+ start: (controller) => {
338
+ streamController = controller;
339
+ },
340
+ cancel: () => {
341
+ if (keepAliveTimer !== void 0) clearInterval(keepAliveTimer);
342
+ if (this._streamMapping.get(this._standaloneSseStreamId)?.controller === streamController) this._streamMapping.delete(this._standaloneSseStreamId);
343
+ }
344
+ });
345
+ const headers = {
346
+ "Content-Type": "text/event-stream",
347
+ "Cache-Control": "no-cache, no-transform",
348
+ Connection: "keep-alive",
349
+ "X-Accel-Buffering": "no"
350
+ };
351
+ if (this.sessionId !== void 0) headers["mcp-session-id"] = this.sessionId;
352
+ this._streamMapping.set(this._standaloneSseStreamId, {
353
+ controller: streamController,
354
+ encoder,
355
+ cleanup: () => {
356
+ if (keepAliveTimer !== void 0) clearInterval(keepAliveTimer);
357
+ this._streamMapping.delete(this._standaloneSseStreamId);
358
+ try {
359
+ streamController.close();
360
+ } catch {}
361
+ }
362
+ });
363
+ keepAliveTimer = this.startKeepAlive(streamController, encoder);
364
+ return new Response(readable, { headers });
365
+ }
366
+ /**
367
+ * Replays events that would have been sent after the specified event ID
368
+ * Only used when resumability is enabled
369
+ */
370
+ async replayEvents(lastEventId) {
371
+ if (!this._eventStore) {
372
+ this.onerror?.(/* @__PURE__ */ new Error("Event store not configured"));
373
+ return this.createJsonErrorResponse(400, -32e3, "Event store not configured");
374
+ }
375
+ try {
376
+ let streamId;
377
+ if (this._eventStore.getStreamIdForEventId) {
378
+ streamId = await this._eventStore.getStreamIdForEventId(lastEventId);
379
+ if (!streamId) {
380
+ this.onerror?.(/* @__PURE__ */ new Error("Invalid event ID format"));
381
+ return this.createJsonErrorResponse(400, -32e3, "Invalid event ID format");
382
+ }
383
+ if (this._streamMapping.get(streamId) !== void 0) {
384
+ this.onerror?.(/* @__PURE__ */ new Error("Conflict: Stream already has an active connection"));
385
+ return this.createJsonErrorResponse(409, -32e3, "Conflict: Stream already has an active connection");
386
+ }
387
+ }
388
+ const headers = {
389
+ "Content-Type": "text/event-stream",
390
+ "Cache-Control": "no-cache, no-transform",
391
+ Connection: "keep-alive",
392
+ "X-Accel-Buffering": "no"
393
+ };
394
+ if (this.sessionId !== void 0) headers["mcp-session-id"] = this.sessionId;
395
+ const encoder = new TextEncoder();
396
+ let streamController;
397
+ let keepAliveTimer;
398
+ let cancelled = false;
399
+ let replayedStreamId;
400
+ const readable = new ReadableStream({
401
+ start: (controller) => {
402
+ streamController = controller;
403
+ },
404
+ cancel: () => {
405
+ cancelled = true;
406
+ if (keepAliveTimer !== void 0) clearInterval(keepAliveTimer);
407
+ if (replayedStreamId !== void 0 && this._streamMapping.get(replayedStreamId)?.controller === streamController) this._streamMapping.delete(replayedStreamId);
408
+ }
409
+ });
410
+ const replayedEventIds = /* @__PURE__ */ new Set();
411
+ replayedStreamId = await this._eventStore.replayEventsAfter(lastEventId, { send: async (eventId, message) => {
412
+ replayedEventIds.add(eventId);
413
+ if (!this.writeSSEEvent(streamController, encoder, message, eventId)) try {
414
+ streamController.close();
415
+ } catch {}
416
+ } });
417
+ if (this._closed || cancelled) {
418
+ try {
419
+ streamController.close();
420
+ } catch {}
421
+ return this.createJsonErrorResponse(404, -32001, "Session not found");
422
+ }
423
+ this._streamMapping.get(replayedStreamId)?.cleanup();
424
+ this._streamMapping.set(replayedStreamId, {
425
+ controller: streamController,
426
+ encoder,
427
+ replayedEventIds,
428
+ cleanup: () => {
429
+ if (keepAliveTimer !== void 0) clearInterval(keepAliveTimer);
430
+ this._streamMapping.delete(replayedStreamId);
431
+ try {
432
+ streamController.close();
433
+ } catch {}
434
+ }
435
+ });
436
+ if (replayedStreamId !== this._standaloneSseStreamId) {
437
+ if (![...this._requestToStreamMapping.values()].includes(replayedStreamId)) {
438
+ this._streamMapping.delete(replayedStreamId);
439
+ try {
440
+ streamController.close();
441
+ } catch {}
442
+ }
443
+ }
444
+ if (this._streamMapping.get(replayedStreamId)?.controller === streamController) keepAliveTimer = this.startKeepAlive(streamController, encoder);
445
+ return new Response(readable, { headers });
446
+ } catch (error) {
447
+ this.onerror?.(error);
448
+ return this.createJsonErrorResponse(500, -32e3, "Error replaying events");
449
+ }
450
+ }
451
+ /**
452
+ * Writes an event to an SSE stream via controller with proper formatting
453
+ */
454
+ writeSSEEvent(controller, encoder, message, eventId) {
455
+ try {
456
+ let eventData = `event: message\n`;
457
+ if (eventId) eventData += `id: ${eventId}\n`;
458
+ eventData += `data: ${JSON.stringify(message)}\n\n`;
459
+ controller.enqueue(encoder.encode(eventData));
460
+ return true;
461
+ } catch (error) {
462
+ this.onerror?.(error);
463
+ return false;
464
+ }
465
+ }
466
+ /**
467
+ * Handles unsupported requests (`PUT`, `PATCH`, etc.)
468
+ */
469
+ handleUnsupportedRequest() {
470
+ this.onerror?.(/* @__PURE__ */ new Error("Method not allowed."));
471
+ return Response.json({
472
+ jsonrpc: "2.0",
473
+ error: {
474
+ code: -32e3,
475
+ message: "Method not allowed."
476
+ },
477
+ id: null
478
+ }, {
479
+ status: 405,
480
+ headers: {
481
+ Allow: "GET, POST, DELETE",
482
+ "Content-Type": "application/json"
483
+ }
484
+ });
485
+ }
486
+ /**
487
+ * Handles `POST` requests containing JSON-RPC messages
488
+ */
489
+ async handlePostRequest(req, options) {
490
+ try {
491
+ const acceptHeader = req.headers.get("accept");
492
+ if (!acceptHeader?.includes("application/json") || !acceptHeader.includes("text/event-stream")) {
493
+ this.onerror?.(/* @__PURE__ */ new Error("Not Acceptable: Client must accept both application/json and text/event-stream"));
494
+ return this.createJsonErrorResponse(406, -32e3, "Not Acceptable: Client must accept both application/json and text/event-stream");
495
+ }
496
+ if (!isJsonContentType(req.headers.get("content-type"))) {
497
+ this.onerror?.(/* @__PURE__ */ new Error("Unsupported Media Type: Content-Type must be application/json"));
498
+ return this.createJsonErrorResponse(415, -32e3, "Unsupported Media Type: Content-Type must be application/json");
499
+ }
500
+ const request = req;
501
+ let rawMessage;
502
+ if (options?.parsedBody === void 0) try {
503
+ const body = await readRequestBody(req, this._maxRequestBodySize);
504
+ if (body.tooLarge) {
505
+ const message = requestBodyTooLargeMessage(this._maxRequestBodySize);
506
+ this.onerror?.(new Error(message));
507
+ return this.createJsonErrorResponse(413, -32e3, message);
508
+ }
509
+ rawMessage = JSON.parse(body.text);
510
+ } catch (error) {
511
+ this.onerror?.(error);
512
+ return this.createJsonErrorResponse(400, -32700, "Parse error: Invalid JSON");
513
+ }
514
+ else rawMessage = options.parsedBody;
515
+ if (Array.isArray(rawMessage) && rawMessage.length > MAX_BATCH_SIZE) {
516
+ this.onerror?.(/* @__PURE__ */ new Error(`Invalid Request: Batch must not exceed ${MAX_BATCH_SIZE} messages`));
517
+ return this.createJsonErrorResponse(400, -32600, `Invalid Request: Batch must not exceed ${MAX_BATCH_SIZE} messages`);
518
+ }
519
+ let messages;
520
+ try {
521
+ messages = Array.isArray(rawMessage) ? rawMessage.map((msg) => JSONRPCMessageSchema.parse(msg)) : [JSONRPCMessageSchema.parse(rawMessage)];
522
+ } catch (error) {
523
+ this.onerror?.(error);
524
+ return this.createJsonErrorResponse(400, -32700, "Parse error: Invalid JSON-RPC message");
525
+ }
526
+ if (this._closed) return this.createJsonErrorResponse(404, -32001, "Session not found");
527
+ const isInitializationRequest = messages.some((element) => isInitializeRequest(element));
528
+ if (isInitializationRequest) {
529
+ if (this._initialized && this.sessionId !== void 0) {
530
+ this.onerror?.(/* @__PURE__ */ new Error("Invalid Request: Server already initialized"));
531
+ return this.createJsonErrorResponse(400, -32600, "Invalid Request: Server already initialized");
532
+ }
533
+ if (messages.length > 1) {
534
+ this.onerror?.(/* @__PURE__ */ new Error("Invalid Request: Only one initialization request is allowed"));
535
+ return this.createJsonErrorResponse(400, -32600, "Invalid Request: Only one initialization request is allowed");
536
+ }
537
+ this.sessionId = this.sessionIdGenerator?.();
538
+ this._initialized = true;
539
+ if (this.sessionId && this._onsessioninitialized) await Promise.resolve(this._onsessioninitialized(this.sessionId));
540
+ }
541
+ if (!isInitializationRequest) {
542
+ const sessionError = this.validateSession(req);
543
+ if (sessionError) return sessionError;
544
+ const protocolError = this.validateProtocolVersion(req);
545
+ if (protocolError) return protocolError;
546
+ }
547
+ if (this._closed) return this.createJsonErrorResponse(404, -32001, "Session not found");
548
+ let scopeChallengeResponse;
549
+ try {
550
+ scopeChallengeResponse = await this._checkScopeChallenge(messages, options?.authInfo);
551
+ } catch (error) {
552
+ this.onerror?.(error);
553
+ return this.createJsonErrorResponse(500, -32603, "Internal server error");
554
+ }
555
+ if (scopeChallengeResponse) return scopeChallengeResponse;
556
+ if (!messages.some((element) => isJSONRPCRequest(element))) {
557
+ for (const message of messages) this.onmessage?.(message, {
558
+ authInfo: options?.authInfo,
559
+ request
560
+ });
561
+ return new Response(null, { status: 202 });
562
+ }
563
+ const streamId = crypto.randomUUID();
564
+ const initRequest = messages.find((m) => isInitializeRequest(m));
565
+ const clientProtocolVersion = initRequest ? initRequest.params.protocolVersion : req.headers.get("mcp-protocol-version") ?? DEFAULT_NEGOTIATED_PROTOCOL_VERSION;
566
+ if (this._enableJsonResponse) return new Promise((resolve) => {
567
+ this._streamMapping.set(streamId, {
568
+ resolveJson: resolve,
569
+ cleanup: () => {
570
+ this._streamMapping.delete(streamId);
571
+ }
572
+ });
573
+ for (const message of messages) if (isJSONRPCRequest(message)) this._requestToStreamMapping.set(message.id, streamId);
574
+ for (const message of messages) this.onmessage?.(message, {
575
+ authInfo: options?.authInfo,
576
+ request
577
+ });
578
+ });
579
+ const encoder = new TextEncoder();
580
+ let streamController;
581
+ let keepAliveTimer;
582
+ const readable = new ReadableStream({
583
+ start: (controller) => {
584
+ streamController = controller;
585
+ },
586
+ cancel: () => {
587
+ if (keepAliveTimer !== void 0) clearInterval(keepAliveTimer);
588
+ if (this._streamMapping.get(streamId)?.controller === streamController) this._streamMapping.delete(streamId);
589
+ }
590
+ });
591
+ const headers = {
592
+ "Content-Type": "text/event-stream",
593
+ "Cache-Control": "no-cache, no-transform",
594
+ Connection: "keep-alive",
595
+ "X-Accel-Buffering": "no"
596
+ };
597
+ if (this.sessionId !== void 0) headers["mcp-session-id"] = this.sessionId;
598
+ for (const message of messages) if (isJSONRPCRequest(message)) {
599
+ this._streamMapping.set(streamId, {
600
+ controller: streamController,
601
+ encoder,
602
+ cleanup: () => {
603
+ if (keepAliveTimer !== void 0) clearInterval(keepAliveTimer);
604
+ this._streamMapping.delete(streamId);
605
+ try {
606
+ streamController.close();
607
+ } catch {}
608
+ }
609
+ });
610
+ this._requestToStreamMapping.set(message.id, streamId);
611
+ }
612
+ await this.writePrimingEvent(streamController, encoder, streamId, clientProtocolVersion);
613
+ for (const message of messages) {
614
+ let closeSSEStream;
615
+ let closeStandaloneSSEStream;
616
+ if (isJSONRPCRequest(message) && this._eventStore && this.supportsEmptySSEData(clientProtocolVersion)) {
617
+ closeSSEStream = () => {
618
+ this.closeSSEStream(message.id);
619
+ };
620
+ closeStandaloneSSEStream = () => {
621
+ this.closeStandaloneSSEStream();
622
+ };
623
+ }
624
+ this.onmessage?.(message, {
625
+ authInfo: options?.authInfo,
626
+ request,
627
+ closeSSEStream,
628
+ closeStandaloneSSEStream
629
+ });
630
+ }
631
+ if (this._streamMapping.get(streamId)?.controller === streamController) keepAliveTimer = this.startKeepAlive(streamController, encoder);
632
+ return new Response(readable, {
633
+ status: 200,
634
+ headers
635
+ });
636
+ } catch (error) {
637
+ this.onerror?.(error);
638
+ return this.createJsonErrorResponse(400, -32700, "Parse error", { data: String(error) });
639
+ }
640
+ }
641
+ /**
642
+ * Handles `DELETE` requests to terminate sessions
643
+ */
644
+ async handleDeleteRequest(req) {
645
+ const sessionError = this.validateSession(req);
646
+ if (sessionError) return sessionError;
647
+ const protocolError = this.validateProtocolVersion(req);
648
+ if (protocolError) return protocolError;
649
+ try {
650
+ await Promise.resolve(this._onsessionclosed?.(this.sessionId));
651
+ return new Response(null, { status: 200 });
652
+ } finally {
653
+ await this.close();
654
+ }
655
+ }
656
+ /**
657
+ * Validates session ID for non-initialization requests.
658
+ * Returns `Response` error if invalid, `undefined` otherwise
659
+ */
660
+ validateSession(req) {
661
+ if (this.sessionIdGenerator === void 0) return;
662
+ if (!this._initialized) {
663
+ this.onerror?.(/* @__PURE__ */ new Error("Bad Request: Server not initialized"));
664
+ return this.createJsonErrorResponse(400, -32e3, "Bad Request: Server not initialized");
665
+ }
666
+ const sessionId = req.headers.get("mcp-session-id");
667
+ if (!sessionId) {
668
+ this.onerror?.(/* @__PURE__ */ new Error("Bad Request: Mcp-Session-Id header is required"));
669
+ return this.createJsonErrorResponse(400, -32e3, "Bad Request: Mcp-Session-Id header is required");
670
+ }
671
+ if (sessionId !== this.sessionId) {
672
+ this.onerror?.(/* @__PURE__ */ new Error("Session not found"));
673
+ return this.createJsonErrorResponse(404, -32001, "Session not found");
674
+ }
675
+ }
676
+ /**
677
+ * Validates the `MCP-Protocol-Version` header on incoming requests.
678
+ *
679
+ * For initialization: Version negotiation handles unknown versions gracefully
680
+ * (server responds with its supported version).
681
+ *
682
+ * For subsequent requests with `MCP-Protocol-Version` header:
683
+ * - Accept if in supported list
684
+ * - 400 if unsupported
685
+ *
686
+ * For HTTP requests without the `MCP-Protocol-Version` header:
687
+ * - Accept and default to the version negotiated at initialization
688
+ */
689
+ validateProtocolVersion(req) {
690
+ const protocolVersion = req.headers.get("mcp-protocol-version");
691
+ if (protocolVersion !== null && !this._supportedProtocolVersions.includes(protocolVersion)) {
692
+ const error = `Bad Request: Unsupported protocol version: ${protocolVersion} (supported versions: ${this._supportedProtocolVersions.join(", ")})`;
693
+ this.onerror?.(new Error(error));
694
+ return this.createJsonErrorResponse(400, -32e3, error);
695
+ }
696
+ }
697
+ async close() {
698
+ if (this._closed) return;
699
+ this._closed = true;
700
+ for (const { cleanup } of this._streamMapping.values()) cleanup();
701
+ this._streamMapping.clear();
702
+ this._requestResponseMap.clear();
703
+ this.onclose?.();
704
+ }
705
+ /**
706
+ * Close an SSE stream for a specific request, triggering client reconnection.
707
+ * Use this to implement polling behavior during long-running operations -
708
+ * client will reconnect after the retry interval specified in the priming event.
709
+ */
710
+ closeSSEStream(requestId) {
711
+ const streamId = this._requestToStreamMapping.get(requestId);
712
+ if (!streamId) return;
713
+ const stream = this._streamMapping.get(streamId);
714
+ if (stream) stream.cleanup();
715
+ }
716
+ /**
717
+ * Close the standalone `GET` SSE stream, triggering client reconnection.
718
+ * Use this to implement polling behavior for server-initiated notifications.
719
+ */
720
+ closeStandaloneSSEStream() {
721
+ const stream = this._streamMapping.get(this._standaloneSseStreamId);
722
+ if (stream) stream.cleanup();
723
+ }
724
+ async send(message, options) {
725
+ let requestId = options?.relatedRequestId;
726
+ if (isJSONRPCResultResponse(message) || isJSONRPCErrorResponse(message)) requestId = message.id;
727
+ if (requestId === void 0) {
728
+ if (isJSONRPCResultResponse(message) || isJSONRPCErrorResponse(message)) throw new Error("Cannot send a response on a standalone SSE stream unless resuming a previous client request");
729
+ let eventId;
730
+ if (this._eventStore) eventId = await this._eventStore.storeEvent(this._standaloneSseStreamId, message);
731
+ const standaloneSse = this._streamMapping.get(this._standaloneSseStreamId);
732
+ if (standaloneSse === void 0) return;
733
+ if (standaloneSse.controller && standaloneSse.encoder && (eventId === void 0 || !standaloneSse.replayedEventIds?.has(eventId))) this.writeSSEEvent(standaloneSse.controller, standaloneSse.encoder, message, eventId);
734
+ return;
735
+ }
736
+ const streamId = this._requestToStreamMapping.get(requestId);
737
+ if (!streamId) throw new Error(`No connection established for request ID: ${String(requestId)}`);
738
+ let stream = this._streamMapping.get(streamId);
739
+ if (!this._enableJsonResponse) {
740
+ let eventId;
741
+ if (this._eventStore) {
742
+ eventId = await this._eventStore.storeEvent(streamId, message);
743
+ stream = this._streamMapping.get(streamId);
744
+ }
745
+ if (stream?.controller && stream?.encoder && (eventId === void 0 || !stream.replayedEventIds?.has(eventId))) this.writeSSEEvent(stream.controller, stream.encoder, message, eventId);
746
+ }
747
+ if (isJSONRPCResultResponse(message) || isJSONRPCErrorResponse(message)) {
748
+ this._requestResponseMap.set(requestId, message);
749
+ const relatedIds = [...this._requestToStreamMapping.entries()].filter(([_, sid]) => sid === streamId).map(([id]) => id);
750
+ if (relatedIds.every((id) => this._requestResponseMap.has(id))) {
751
+ if (!stream) {
752
+ if (this._enableJsonResponse) throw new Error(`No connection established for request ID: ${String(requestId)}`);
753
+ if (!this._eventStore) {
754
+ this.onerror?.(/* @__PURE__ */ new Error(`Response for request ID ${String(requestId)} is undeliverable: per-request stream is disconnected and no eventStore is configured`));
755
+ for (const id of relatedIds) {
756
+ this._requestResponseMap.delete(id);
757
+ this._requestToStreamMapping.delete(id);
758
+ }
759
+ return;
760
+ }
761
+ for (const id of relatedIds) {
762
+ this._requestResponseMap.delete(id);
763
+ this._requestToStreamMapping.delete(id);
764
+ }
765
+ return;
766
+ }
767
+ if (this._enableJsonResponse && stream.resolveJson) {
768
+ const headers = { "Content-Type": "application/json" };
769
+ if (this.sessionId !== void 0) headers["mcp-session-id"] = this.sessionId;
770
+ const responses = relatedIds.map((id) => this._requestResponseMap.get(id));
771
+ if (responses.length === 1) stream.resolveJson(Response.json(responses[0], {
772
+ status: 200,
773
+ headers
774
+ }));
775
+ else stream.resolveJson(Response.json(responses, {
776
+ status: 200,
777
+ headers
778
+ }));
779
+ stream.cleanup();
780
+ } else stream.cleanup();
781
+ for (const id of relatedIds) {
782
+ this._requestResponseMap.delete(id);
783
+ this._requestToStreamMapping.delete(id);
784
+ }
785
+ }
786
+ }
787
+ }
788
+ };
789
+
790
+ //#endregion
791
+ //#region src/server/createMcpHandler.ts
792
+ /**
793
+ * The JSON-RPC id to echo on an entry-built error response: the body's `id`
794
+ * when the body is a single JSON-RPC request whose id is a string or number,
795
+ * `null` otherwise. Error responses must carry the id of the request they
796
+ * correspond to whenever it could be read; `null` is reserved for the cases
797
+ * where no single request id is determinable — unparseable bodies, body-less
798
+ * methods, notifications, posted responses and batch arrays.
799
+ */
800
+ function echoableRequestId(body) {
801
+ if (body === null || typeof body !== "object" || Array.isArray(body)) return null;
802
+ const { method, id } = body;
803
+ if (typeof method !== "string") return null;
804
+ return typeof id === "string" || typeof id === "number" ? id : null;
805
+ }
806
+ function jsonRpcErrorResponse(httpStatus, code, message, data, id = null) {
807
+ return Response.json({
808
+ jsonrpc: "2.0",
809
+ error: {
810
+ code,
811
+ message,
812
+ ...data !== void 0 && { data }
813
+ },
814
+ id
815
+ }, {
816
+ status: httpStatus,
817
+ ...httpStatus === 405 && { headers: { Allow: "POST" } }
818
+ });
819
+ }
820
+ function rejectionResponse(rejection, id = null) {
821
+ return jsonRpcErrorResponse(rejection.httpStatus, rejection.code, rejection.message, rejection.data, id);
822
+ }
823
+ function toError(value) {
824
+ return value instanceof Error ? value : new Error(String(value));
825
+ }
826
+ function internalServerErrorResponse(id = null) {
827
+ return jsonRpcErrorResponse(500, -32603, "Internal server error", void 0, id);
828
+ }
829
+ /** Throws when the factory returned an instance that is still connected to another exchange. */
830
+ function assertNotServing(server) {
831
+ if (server.transport !== void 0) throw new Error("The factory returned an instance that is still serving another request. Return a new instance for each request.");
832
+ }
833
+ /**
834
+ * The entry's default legacy serving (`legacy: 'stateless'`): per-request
835
+ * stateless serving of 2025-era traffic using the same factory as the modern
836
+ * path. Exported as a standalone building block for hand-wired compositions
837
+ * (for example mounting legacy stateless serving on its own route next to a
838
+ * strict modern endpoint).
839
+ *
840
+ * Each POST is served by a fresh instance from the factory connected to a
841
+ * fresh streamable HTTP transport constructed with only
842
+ * `sessionIdGenerator: undefined` — the established stateless idiom, unchanged.
843
+ * Because serving is per-request and stateless, GET and DELETE (2025 session
844
+ * operations) are answered with `405` / `Method not allowed.`, exactly like the
845
+ * canonical stateless example.
846
+ *
847
+ * The optional `onerror` callback receives factory and serving failures on
848
+ * this leg (reporting only — the response stays the 500 internal-error body).
849
+ * The entry passes its own `onerror` here when expanding the default, so
850
+ * legacy-leg failures are never silently swallowed.
851
+ */
852
+ function createLegacyStatelessFallback(factory, onerror, keepAliveMs, maxRequestBodySize) {
853
+ return async (request, options) => {
854
+ if (request.method.toUpperCase() !== "POST") return jsonRpcErrorResponse(405, -32e3, "Method not allowed.");
855
+ try {
856
+ const product = await factory({
857
+ era: "legacy",
858
+ ...options?.authInfo !== void 0 && { authInfo: options.authInfo },
859
+ requestInfo: request
860
+ });
861
+ const transport = new WebStandardStreamableHTTPServerTransport({
862
+ sessionIdGenerator: void 0,
863
+ ...keepAliveMs !== void 0 && { keepAliveMs },
864
+ ...maxRequestBodySize !== void 0 && { maxRequestBodySize }
865
+ });
866
+ await product.connect(transport);
867
+ const teardown = () => {
868
+ transport.close().catch(() => {});
869
+ product.close().catch(() => {});
870
+ };
871
+ request.signal?.addEventListener("abort", teardown, { once: true });
872
+ const response = await transport.handleRequest(request, {
873
+ ...options?.authInfo !== void 0 && { authInfo: options.authInfo },
874
+ ...options?.parsedBody !== void 0 && { parsedBody: options.parsedBody }
875
+ });
876
+ if (response.body === null || mediaTypeEssence(response.headers.get("content-type")) !== "text/event-stream") {
877
+ teardown();
878
+ return response;
879
+ }
880
+ const reader = response.body.getReader();
881
+ let toreDown = false;
882
+ const completeExchange = () => {
883
+ if (!toreDown) {
884
+ toreDown = true;
885
+ teardown();
886
+ }
887
+ };
888
+ const monitoredBody = new ReadableStream({
889
+ pull: async (controller) => {
890
+ try {
891
+ const { done, value } = await reader.read();
892
+ if (done) {
893
+ completeExchange();
894
+ controller.close();
895
+ return;
896
+ }
897
+ if (value !== void 0) controller.enqueue(value);
898
+ } catch (error) {
899
+ completeExchange();
900
+ controller.error(error);
901
+ }
902
+ },
903
+ cancel: (reason) => {
904
+ completeExchange();
905
+ return reader.cancel(reason).catch(() => {});
906
+ }
907
+ });
908
+ return new Response(monitoredBody, {
909
+ status: response.status,
910
+ statusText: response.statusText,
911
+ headers: response.headers
912
+ });
913
+ } catch (error) {
914
+ try {
915
+ onerror?.(toError(error));
916
+ } catch {}
917
+ return internalServerErrorResponse(echoableRequestId(options?.parsedBody));
918
+ }
919
+ };
920
+ }
921
+ function legacyStatelessFallback(factory, onerror, options) {
922
+ return createLegacyStatelessFallback(factory, onerror, void 0, resolveMaxRequestBodySize(options?.maxRequestBodySize));
923
+ }
924
+ /**
925
+ * Read the SEP-2243 standard request headers off the inbound request.
926
+ *
927
+ * Both halves of the standard-header story need them — the body-primary
928
+ * classifier for its cross-check cells, and
929
+ * {@linkcode validateStandardRequestHeaders} for the presence half — and a
930
+ * header read at one site but not the other is precisely how a required header
931
+ * goes unenforced: that divergence is what let a modern POST omitting
932
+ * `MCP-Protocol-Version` be served. Read them here once so a header added to
933
+ * {@linkcode InboundHttpRequest} reaches both sites together.
934
+ */
935
+ function standardHeadersOf(request) {
936
+ return {
937
+ protocolVersionHeader: request.headers.get("mcp-protocol-version") ?? void 0,
938
+ mcpMethodHeader: request.headers.get("mcp-method") ?? void 0,
939
+ mcpNameHeader: request.headers.get("mcp-name") ?? void 0
940
+ };
941
+ }
942
+ /**
943
+ * The entry's classification step: read the request body exactly once (unless
944
+ * a pre-parsed body is supplied) and classify the request with
945
+ * {@linkcode classifyInboundRequest}. This is the single code path behind both
946
+ * {@linkcode createMcpHandler}'s routing and the exported
947
+ * {@linkcode isLegacyRequest} predicate, so the two can never disagree.
948
+ *
949
+ * Pass `needsForward: false` when the caller never reads `forwardRequest` —
950
+ * the body-preserving clone is then skipped and `forwardRequest` is the
951
+ * (consumed) input request.
952
+ */
953
+ async function classifyEntryRequest(request, providedParsedBody, needsForward = true, maxRequestBodySize = DEFAULT_MAX_REQUEST_BODY_SIZE) {
954
+ const httpMethod = request.method.toUpperCase();
955
+ let body;
956
+ let parsedBody = providedParsedBody;
957
+ let forwardRequest = request;
958
+ let unparseable = false;
959
+ if (httpMethod === "POST") {
960
+ if (parsedBody === void 0) {
961
+ if (needsForward) forwardRequest = request.clone();
962
+ let bodyText;
963
+ try {
964
+ const read = await readRequestBody(request, maxRequestBodySize);
965
+ if (read.tooLarge) return { step: "body-too-large" };
966
+ bodyText = read.text;
967
+ } catch {
968
+ return { step: "unreadable-body" };
969
+ }
970
+ try {
971
+ body = bodyText.length === 0 ? void 0 : JSON.parse(bodyText);
972
+ } catch {
973
+ unparseable = true;
974
+ }
975
+ if (!unparseable && body !== void 0) parsedBody = body;
976
+ } else body = parsedBody;
977
+ if (unparseable || body === void 0) return {
978
+ step: "no-json-body",
979
+ forwardRequest
980
+ };
981
+ }
982
+ return {
983
+ step: "classified",
984
+ outcome: classifyInboundRequest({
985
+ httpMethod,
986
+ ...standardHeadersOf(request),
987
+ ...body !== void 0 && { body }
988
+ }),
989
+ body,
990
+ parsedBody,
991
+ forwardRequest
992
+ };
993
+ }
994
+ /**
995
+ * Whether {@linkcode createMcpHandler} would route this request to its legacy
996
+ * (2025-era) serving rather than the modern (2026-07-28) path.
997
+ *
998
+ * Call it with just the request: `await isLegacyRequest(request)`. For a
999
+ * `POST` the body is read from an internal clone, so the request you pass
1000
+ * stays fully readable for whichever handler you route it to — no second
1001
+ * argument is needed. (In a Node `(req, res)` handler, build that `Request`
1002
+ * with `toWebRequest(req)` from `@modelcontextprotocol/node`; behind a body
1003
+ * parser, which has already drained the Node stream, build it as
1004
+ * `toWebRequest(req, req.body)` so the bytes come from the parsed body —
1005
+ * either way the predicate still takes just the request.) The optional
1006
+ * `parsedBody` is a perf escape hatch for a body you already hold parsed:
1007
+ * pass it and the predicate classifies from the value directly, reading and
1008
+ * cloning nothing. It is needed, not just faster, when the request's own
1009
+ * body was already read — the internal clone is then impossible (cloning a
1010
+ * used body throws a `TypeError`), so such a single-argument call rejects
1011
+ * instead of guessing.
1012
+ *
1013
+ * This is the entry's own classification step exported as a predicate — it
1014
+ * runs exactly the code `createMcpHandler` runs to make the routing decision,
1015
+ * not a re-implementation — so a hand-wired composition that branches on it
1016
+ * can never disagree with the entry. It is classification only: hand-wired
1017
+ * compositions must validate Content-Type themselves (415 for POSTs whose
1018
+ * media type is not `application/json`, via {@linkcode isJsonContentType})
1019
+ * before dispatching either leg — routing the legacy leg into the SDK
1020
+ * transports gets their built-in check, but a custom modern leg has none. Use it to keep an existing legacy
1021
+ * deployment (for example a sessionful streamable HTTP wiring) serving 2025
1022
+ * traffic next to a strict modern endpoint, now that the entry has no
1023
+ * handler-valued `legacy` option:
1024
+ *
1025
+ * ```ts
1026
+ * import { createMcpHandler, isLegacyRequest } from '@modelcontextprotocol/server';
1027
+ *
1028
+ * const modern = createMcpHandler(factory, { legacy: 'reject' });
1029
+ *
1030
+ * export default {
1031
+ * async fetch(request: Request): Promise<Response> {
1032
+ * if (await isLegacyRequest(request)) {
1033
+ * // e.g. an existing sessionful WebStandardStreamableHTTPServerTransport wiring
1034
+ * return myExistingLegacyHandler(request);
1035
+ * }
1036
+ * return modern.fetch(request);
1037
+ * }
1038
+ * };
1039
+ * ```
1040
+ *
1041
+ * Semantics (identical to the entry's routing):
1042
+ *
1043
+ * - Returns `true` only for requests with no per-request `_meta` envelope
1044
+ * claim: claim-less POSTs (including the `initialize` handshake and 2025-era
1045
+ * notification POSTs without a modern protocol-version header), body-less
1046
+ * GET/DELETE session operations, all-legacy JSON-RPC batch arrays, posted
1047
+ * JSON-RPC responses, and POSTs whose body is empty or not valid JSON.
1048
+ * - Returns `false` for everything the modern path answers, including its
1049
+ * validation-ladder rejections: a request carrying the envelope claim (even
1050
+ * one naming a revision the endpoint does not serve — the modern path
1051
+ * answers it with the unsupported-protocol-version error), a malformed
1052
+ * envelope behind a present claim (answered `-32602`), a request whose
1053
+ * `MCP-Protocol-Version` header names a modern revision but that lacks the
1054
+ * envelope (`-32602`), header/body mismatches (`-32020`), and a POST body
1055
+ * over the size limit (413). Consumers
1056
+ * routing on the predicate must send `false` traffic to the modern handler,
1057
+ * never to a legacy handler — the modern path owns those error answers.
1058
+ * - `server/discover` probes sent by negotiating clients always carry the
1059
+ * envelope claim, so they are never legacy; a hand-built claim-less POST to
1060
+ * a method named `server/discover` has no claim and classifies legacy,
1061
+ * exactly as the entry itself routes it.
1062
+ */
1063
+ async function isLegacyRequest(request, parsedBody, options) {
1064
+ const maxRequestBodySize = resolveMaxRequestBodySize(options?.maxRequestBodySize);
1065
+ const classified = await classifyEntryRequest(parsedBody === void 0 && request.method.toUpperCase() === "POST" ? request.clone() : request, parsedBody, false, maxRequestBodySize);
1066
+ return classified.step === "no-json-body" || classified.step === "classified" && classified.outcome.kind === "legacy";
1067
+ }
1068
+ /**
1069
+ * Creates an HTTP handler that serves the 2026-07-28 protocol revision from a
1070
+ * per-request server factory and, by default, falls back to old-school
1071
+ * stateless serving for 2025-era traffic. Pass `legacy: 'reject'` for a
1072
+ * modern-only strict endpoint.
1073
+ *
1074
+ * Mounting: `handler.fetch` is the web-standard face (Cloudflare Workers,
1075
+ * Deno, Bun, Hono's `c.req.raw`); for Express/Fastify/plain `node:http`, wrap
1076
+ * the handler once with `toNodeHandler(handler)` from
1077
+ * `@modelcontextprotocol/node`. When mounting bare on a fetch-native runtime,
1078
+ * put Origin/Host validation in front of the handler — the entry itself is
1079
+ * deliberately validation-free:
1080
+ *
1081
+ * ```ts
1082
+ * import { hostHeaderValidationResponse, originValidationResponse, localhostAllowedHostnames, localhostAllowedOrigins } from '@modelcontextprotocol/server';
1083
+ *
1084
+ * export default {
1085
+ * async fetch(request: Request): Promise<Response> {
1086
+ * const rejected =
1087
+ * hostHeaderValidationResponse(request, localhostAllowedHostnames()) ??
1088
+ * originValidationResponse(request, localhostAllowedOrigins());
1089
+ * return rejected ?? handler.fetch(request);
1090
+ * }
1091
+ * };
1092
+ * ```
1093
+ *
1094
+ * Use ONE factory for both legs: the same tools/resources/prompts definition
1095
+ * backs the modern path and the stateless legacy fallback, so the two eras can
1096
+ * never drift apart. To keep an existing legacy deployment (for example a
1097
+ * sessionful streamable HTTP wiring) serving 2025 traffic instead of the
1098
+ * stateless fallback, route in user land with {@linkcode isLegacyRequest} in
1099
+ * front of a strict handler — see that predicate's documentation for the
1100
+ * pattern. Power users composing transport-neutral routing can also use the
1101
+ * exported building blocks directly: {@linkcode classifyInboundRequest} for
1102
+ * the era decision and `PerRequestHTTPServerTransport` for single-exchange
1103
+ * serving — such compositions must reject POSTs whose Content-Type media type
1104
+ * is not `application/json` (415) before parsing the body, using
1105
+ * {@linkcode isJsonContentType}; neither building block performs this
1106
+ * validation itself.
1107
+ *
1108
+ * The entry performs no token verification: `authInfo` given to `fetch` is
1109
+ * passed through to handlers and the factory as-is and is never derived from
1110
+ * request headers.
1111
+ */
1112
+ function createMcpHandler(factory, options = {}) {
1113
+ const { legacy, onerror, responseMode } = options;
1114
+ const maxRequestBodySize = resolveMaxRequestBodySize(options.maxRequestBodySize);
1115
+ if (typeof legacy === "function") throw new TypeError("The 'legacy' option only accepts 'stateless' or 'reject', not a handler function. To serve 2025-era traffic with your own handler, route in user land with the exported isLegacyRequest(request) predicate in front of a strict (legacy: 'reject') handler.");
1116
+ /** Modern per-request instances with an exchange still in flight (close() tears these down). */
1117
+ const inflight = /* @__PURE__ */ new Set();
1118
+ let closed = false;
1119
+ const reportError = (error) => {
1120
+ try {
1121
+ onerror?.(error);
1122
+ } catch {}
1123
+ };
1124
+ const bus = options.bus ?? new InMemoryServerEventBus(reportError);
1125
+ const notify = createServerNotifier(bus);
1126
+ const listenRouter = createListenRouter({
1127
+ bus,
1128
+ maxSubscriptions: options.maxSubscriptions ?? DEFAULT_MAX_SUBSCRIPTIONS,
1129
+ keepAliveMs: options.keepAliveMs ?? DEFAULT_SSE_KEEP_ALIVE_MS,
1130
+ onerror: reportError
1131
+ });
1132
+ if (responseMode === "json") console.warn("responseMode: 'json' drops mid-call notifications. subscriptions/listen streams are always served over SSE regardless; other notifications emitted before a result are dropped.");
1133
+ const legacyHandler = legacy === "reject" ? void 0 : createLegacyStatelessFallback(factory, reportError, options.keepAliveMs, maxRequestBodySize);
1134
+ async function serveModern(route, request, authInfo) {
1135
+ const claimedRevision = route.classification.revision;
1136
+ if (claimedRevision === void 0 || !SUPPORTED_MODERN_PROTOCOL_VERSIONS.includes(claimedRevision)) {
1137
+ const error = new UnsupportedProtocolVersionError({
1138
+ supported: [...SUPPORTED_MODERN_PROTOCOL_VERSIONS],
1139
+ requested: claimedRevision ?? "unknown"
1140
+ });
1141
+ reportError(error);
1142
+ return jsonRpcErrorResponse(400, error.code, error.message, error.data, echoableRequestId(route.message));
1143
+ }
1144
+ const stdHeaderRejection = validateStandardRequestHeaders({
1145
+ httpMethod: request.method,
1146
+ ...standardHeadersOf(request)
1147
+ }, route);
1148
+ if (stdHeaderRejection !== void 0) {
1149
+ reportError(/* @__PURE__ */ new Error(`Rejected inbound request (${stdHeaderRejection.cell}): ${stdHeaderRejection.message}`));
1150
+ return rejectionResponse(stdHeaderRejection, echoableRequestId(route.message));
1151
+ }
1152
+ const meta = route.messageKind === "request" ? requestMetaOf(route.message.params) : void 0;
1153
+ const declaredClientCapabilities = meta?.[CLIENT_CAPABILITIES_META_KEY];
1154
+ if (route.messageKind === "request") {
1155
+ const required = requiredClientCapabilitiesForRequest(route.message.method);
1156
+ if (required !== void 0) {
1157
+ const missing = missingClientCapabilities(required, declaredClientCapabilities);
1158
+ if (missing !== void 0) {
1159
+ const error = new MissingRequiredClientCapabilityError({ requiredCapabilities: missing });
1160
+ reportError(error);
1161
+ return jsonRpcErrorResponse(httpStatusForErrorCode(error.code, "ladder"), error.code, error.message, error.data, route.message.id);
1162
+ }
1163
+ }
1164
+ }
1165
+ const product = await factory({
1166
+ era: "modern",
1167
+ ...authInfo !== void 0 && { authInfo },
1168
+ requestInfo: request
1169
+ });
1170
+ const server = product instanceof McpServer ? product.server : product;
1171
+ assertNotServing(server);
1172
+ if (route.messageKind === "request" && route.message.method === "subscriptions/listen") {
1173
+ const capabilities = server.getCapabilities();
1174
+ const serverInfo = serverIdentityOf(server);
1175
+ product.close().catch(reportError);
1176
+ return listenRouter.serve(route.message, request.signal, capabilities, serverInfo);
1177
+ }
1178
+ if (route.messageKind === "request" && route.message.method === "tools/call" && product instanceof McpServer) {
1179
+ const callParams = route.message.params;
1180
+ const toolName = typeof callParams?.name === "string" ? callParams.name : void 0;
1181
+ const inputSchema = toolName === void 0 ? void 0 : product.toolInputSchemaJson(toolName);
1182
+ if (inputSchema !== void 0) {
1183
+ const scan = scanXMcpHeaderDeclarations(inputSchema);
1184
+ if (scan.declarations !== void 0 && scan.declarations.length > 0) {
1185
+ const rejection = validateMcpParamHeaders(scan.declarations, callParams?.arguments, request.headers);
1186
+ if (rejection !== void 0) {
1187
+ product.close().catch(reportError);
1188
+ reportError(/* @__PURE__ */ new Error(`Rejected inbound request (${rejection.cell}): ${rejection.message}`));
1189
+ return rejectionResponse(rejection, route.message.id);
1190
+ }
1191
+ }
1192
+ }
1193
+ }
1194
+ if (route.messageKind === "request" && product instanceof McpServer) try {
1195
+ const challenge = await findScopeChallenge([route.message], authInfo, (context) => product.resolveScopeChallenge(context));
1196
+ if (challenge !== void 0) {
1197
+ product.close().catch(reportError);
1198
+ return createScopeChallengeResponse(challenge, scopeChallengeResourceMetadataUrl(authInfo));
1199
+ }
1200
+ } catch (error) {
1201
+ product.close().catch(reportError);
1202
+ reportError(toError(error));
1203
+ return internalServerErrorResponse(route.message.id);
1204
+ }
1205
+ assertNotServing(server);
1206
+ setNegotiatedProtocolVersion(server, claimedRevision);
1207
+ installModernOnlyHandlers(server, SUPPORTED_MODERN_PROTOCOL_VERSIONS);
1208
+ if (meta !== void 0) seedClientIdentityFromEnvelope(server, {
1209
+ clientInfo: meta[CLIENT_INFO_META_KEY],
1210
+ clientCapabilities: declaredClientCapabilities
1211
+ });
1212
+ const previousOnClose = server.onclose;
1213
+ inflight.add(server);
1214
+ const onExchangeClose = () => {
1215
+ inflight.delete(server);
1216
+ if (server.onclose === onExchangeClose) server.onclose = previousOnClose;
1217
+ previousOnClose?.();
1218
+ };
1219
+ server.onclose = onExchangeClose;
1220
+ try {
1221
+ const response = await invoke(product, route.message, {
1222
+ classification: route.classification,
1223
+ request,
1224
+ ...authInfo !== void 0 && { authInfo },
1225
+ ...responseMode !== void 0 && { responseMode },
1226
+ ...options.keepAliveMs !== void 0 && { keepAliveMs: options.keepAliveMs }
1227
+ });
1228
+ if (route.messageKind === "notification") queueMicrotask(() => void server.close().catch(() => {}));
1229
+ return response;
1230
+ } catch (error) {
1231
+ if (error instanceof SdkError && error.code === SdkErrorCode.ConnectionClosed) return new Response(null, { status: 499 });
1232
+ await server.close().catch(() => {});
1233
+ inflight.delete(server);
1234
+ reportError(toError(error));
1235
+ return internalServerErrorResponse(echoableRequestId(route.message));
1236
+ }
1237
+ }
1238
+ async function serveLegacyRoute(route, forwardRequest, authInfo, parsedBody) {
1239
+ if (legacyHandler !== void 0) return legacyHandler(forwardRequest, {
1240
+ ...authInfo !== void 0 && { authInfo },
1241
+ ...parsedBody !== void 0 && { parsedBody }
1242
+ });
1243
+ const strict = modernOnlyStrictRejection(route, SUPPORTED_MODERN_PROTOCOL_VERSIONS);
1244
+ if (strict === void 0) return new Response(null, { status: 202 });
1245
+ reportError(/* @__PURE__ */ new Error(`Rejected 2025-era request on a modern-only endpoint (${strict.cell}): ${strict.message}`));
1246
+ return rejectionResponse(strict, echoableRequestId(parsedBody));
1247
+ }
1248
+ async function handle(request, requestOptions) {
1249
+ const authInfo = requestOptions?.authInfo;
1250
+ if (request.method.toUpperCase() === "POST" && !isJsonContentType(request.headers.get("content-type"))) {
1251
+ reportError(/* @__PURE__ */ new Error("Unsupported Media Type: Content-Type must be application/json"));
1252
+ return jsonRpcErrorResponse(415, -32e3, "Unsupported Media Type: Content-Type must be application/json");
1253
+ }
1254
+ const classified = await classifyEntryRequest(request, requestOptions?.parsedBody, true, maxRequestBodySize);
1255
+ if (classified.step === "unreadable-body") return jsonRpcErrorResponse(400, -32700, "Parse error: the request body could not be read");
1256
+ if (classified.step === "body-too-large") return jsonRpcErrorResponse(413, -32e3, requestBodyTooLargeMessage(maxRequestBodySize));
1257
+ if (classified.step === "no-json-body") {
1258
+ if (legacyHandler !== void 0) return legacyHandler(classified.forwardRequest, { ...authInfo !== void 0 && { authInfo } });
1259
+ return jsonRpcErrorResponse(400, -32700, "Parse error: the request body is not valid JSON");
1260
+ }
1261
+ const { outcome, body, parsedBody, forwardRequest } = classified;
1262
+ try {
1263
+ switch (outcome.kind) {
1264
+ case "reject":
1265
+ reportError(/* @__PURE__ */ new Error(`Rejected inbound request (${outcome.cell}): ${outcome.message}`));
1266
+ return rejectionResponse(outcome, echoableRequestId(body));
1267
+ case "modern": return await serveModern(outcome, request, authInfo);
1268
+ case "legacy": return await serveLegacyRoute(outcome, forwardRequest, authInfo, parsedBody);
1269
+ }
1270
+ } catch (error) {
1271
+ reportError(toError(error));
1272
+ return internalServerErrorResponse(echoableRequestId(body));
1273
+ }
1274
+ }
1275
+ const fetchFace = async (request, requestOptions) => {
1276
+ if (closed) throw new Error("This MCP handler has been closed");
1277
+ try {
1278
+ return await handle(request, requestOptions);
1279
+ } catch (error) {
1280
+ reportError(toError(error));
1281
+ return internalServerErrorResponse(echoableRequestId(requestOptions?.parsedBody));
1282
+ }
1283
+ };
1284
+ return {
1285
+ fetch: fetchFace,
1286
+ notify,
1287
+ bus,
1288
+ close: async () => {
1289
+ closed = true;
1290
+ listenRouter.closeAll();
1291
+ const closing = [...inflight].map((server) => server.close().catch(() => {}));
1292
+ inflight.clear();
1293
+ await Promise.all(closing);
1294
+ }
1295
+ };
1296
+ }
1297
+
1298
+ //#endregion
1299
+ //#region src/server/middleware/hostHeaderValidation.ts
1300
+ /**
1301
+ * Parse and validate a `Host` header against an allowlist of hostnames (port-agnostic).
1302
+ *
1303
+ * - Input host header may include a port (e.g. `localhost:3000`) or IPv6 brackets (e.g. `[::1]:3000`).
1304
+ * - Allowlist items should be hostnames only (no ports). For IPv6, include brackets (e.g. `[::1]`).
1305
+ */
1306
+ function validateHostHeader(hostHeader, allowedHostnames) {
1307
+ if (!hostHeader) return {
1308
+ ok: false,
1309
+ errorCode: "missing_host",
1310
+ message: "Missing Host header"
1311
+ };
1312
+ let hostname;
1313
+ try {
1314
+ hostname = new URL(`http://${hostHeader}`).hostname;
1315
+ } catch {
1316
+ return {
1317
+ ok: false,
1318
+ errorCode: "invalid_host_header",
1319
+ message: `Invalid Host header: ${hostHeader}`,
1320
+ hostHeader
1321
+ };
1322
+ }
1323
+ if (!allowedHostnames.includes(hostname)) return {
1324
+ ok: false,
1325
+ errorCode: "invalid_host",
1326
+ message: `Invalid Host: ${hostname}`,
1327
+ hostHeader,
1328
+ hostname
1329
+ };
1330
+ return {
1331
+ ok: true,
1332
+ hostname
1333
+ };
1334
+ }
1335
+ /**
1336
+ * Convenience allowlist for `localhost` DNS rebinding protection.
1337
+ */
1338
+ function localhostAllowedHostnames() {
1339
+ return [
1340
+ "localhost",
1341
+ "127.0.0.1",
1342
+ "[::1]"
1343
+ ];
1344
+ }
1345
+ /**
1346
+ * Web-standard `Request` helper for DNS rebinding protection.
1347
+ * @example
1348
+ * ```ts source="./hostHeaderValidation.examples.ts#hostHeaderValidationResponse_basicUsage"
1349
+ * const result = validateHostHeader(req.headers.get('host'), ['localhost']);
1350
+ * ```
1351
+ */
1352
+ function hostHeaderValidationResponse(req, allowedHostnames) {
1353
+ const result = validateHostHeader(req.headers.get("host"), allowedHostnames);
1354
+ if (result.ok) return void 0;
1355
+ return Response.json({
1356
+ jsonrpc: "2.0",
1357
+ error: {
1358
+ code: -32e3,
1359
+ message: result.message
1360
+ },
1361
+ id: null
1362
+ }, {
1363
+ status: 403,
1364
+ headers: { "Content-Type": "application/json" }
1365
+ });
1366
+ }
1367
+
1368
+ //#endregion
1369
+ //#region src/server/middleware/originValidation.ts
1370
+ /**
1371
+ * Validate an `Origin` header against an allowlist of hostnames (port-agnostic).
1372
+ *
1373
+ * - A missing/empty `Origin` header passes: non-browser clients do not send one,
1374
+ * and only browser-originated requests carry the header this check defends against.
1375
+ * - Allowlist items are hostnames only (no scheme, no port), the same convention as
1376
+ * `validateHostHeader`. For IPv6, include brackets (e.g. `[::1]`).
1377
+ * - A browser extension's origin carries its extension ID as the hostname; list the
1378
+ * ID to allow one extension. An allowlist item of the form `<scheme>://*`
1379
+ * (lowercase, e.g. `moz-extension://*`) allows every origin of that scheme, which
1380
+ * Firefox needs because its extension IDs differ on every install.
1381
+ * `http://*` and `https://*` are not honoured: list websites by hostname.
1382
+ * - Any present value that cannot be parsed as an origin URL — including the literal
1383
+ * `null` origin browsers send for opaque contexts — is rejected (deny on failure).
1384
+ */
1385
+ function validateOriginHeader(originHeader, allowedOriginHostnames) {
1386
+ if (originHeader === null || originHeader === void 0 || originHeader === "") return { ok: true };
1387
+ let hostname;
1388
+ let scheme;
1389
+ try {
1390
+ const url = new URL(originHeader);
1391
+ hostname = url.hostname;
1392
+ scheme = url.protocol;
1393
+ } catch {
1394
+ return {
1395
+ ok: false,
1396
+ errorCode: "invalid_origin_header",
1397
+ message: `Invalid Origin header: ${originHeader}`,
1398
+ originHeader
1399
+ };
1400
+ }
1401
+ if (hostname === "") return {
1402
+ ok: false,
1403
+ errorCode: "invalid_origin_header",
1404
+ message: `Invalid Origin header: ${originHeader}`,
1405
+ originHeader
1406
+ };
1407
+ if (!(scheme !== "http:" && scheme !== "https:" && allowedOriginHostnames.includes(`${scheme}//*`)) && !allowedOriginHostnames.includes(hostname)) return {
1408
+ ok: false,
1409
+ errorCode: "invalid_origin",
1410
+ message: `Invalid Origin: ${hostname}`,
1411
+ originHeader,
1412
+ hostname
1413
+ };
1414
+ return {
1415
+ ok: true,
1416
+ origin: originHeader,
1417
+ hostname
1418
+ };
1419
+ }
1420
+ /**
1421
+ * Convenience allowlist of localhost-class origin hostnames, mirroring
1422
+ * `localhostAllowedHostnames`.
1423
+ */
1424
+ function localhostAllowedOrigins() {
1425
+ return [
1426
+ "localhost",
1427
+ "127.0.0.1",
1428
+ "[::1]"
1429
+ ];
1430
+ }
1431
+ /**
1432
+ * Web-standard `Request` helper for Origin validation: returns a `403` JSON-RPC
1433
+ * error response when the request's `Origin` header is not allowed, and
1434
+ * `undefined` when the request may proceed.
1435
+ *
1436
+ * ```ts
1437
+ * const rejected = originValidationResponse(request, localhostAllowedOrigins());
1438
+ * if (rejected) return rejected;
1439
+ * ```
1440
+ */
1441
+ function originValidationResponse(req, allowedOriginHostnames) {
1442
+ const result = validateOriginHeader(req.headers.get("origin"), allowedOriginHostnames);
1443
+ if (result.ok) return void 0;
1444
+ return Response.json({
1445
+ jsonrpc: "2.0",
1446
+ error: {
1447
+ code: -32e3,
1448
+ message: result.message
1449
+ },
1450
+ id: null
1451
+ }, {
1452
+ status: 403,
1453
+ headers: { "Content-Type": "application/json" }
1454
+ });
1455
+ }
1456
+
1457
+ //#endregion
1458
+ //#region src/server/requestStateCodec.ts
1459
+ const PREFIX = "v1.";
1460
+ function bytesToBase64Url(bytes) {
1461
+ let bin = "";
1462
+ for (const b of bytes) bin += String.fromCodePoint(b);
1463
+ return btoa(bin).replaceAll("+", "-").replaceAll("/", "_").replace(/=+$/, "");
1464
+ }
1465
+ function constantTimeTagEqual(a, b) {
1466
+ if (a.length !== b.length) return false;
1467
+ let r = 0;
1468
+ for (let i = 0; i < a.length; i++) r |= a.codePointAt(i) ^ b.codePointAt(i);
1469
+ return r === 0;
1470
+ }
1471
+ function base64UrlToBytes(s) {
1472
+ const b64 = s.replaceAll("-", "+").replaceAll("_", "/");
1473
+ const bin = atob(b64);
1474
+ const bytes = new Uint8Array(bin.length);
1475
+ for (let i = 0; i < bin.length; i++) bytes[i] = bin.codePointAt(i);
1476
+ return bytes;
1477
+ }
1478
+ /**
1479
+ * Create an opt-in HMAC-SHA256 codec for the multi-round-trip `requestState`
1480
+ * (protocol revision 2026-07-28).
1481
+ *
1482
+ * `requestState` round-trips through the client and is attacker-controlled
1483
+ * input on re-entry. The SDK applies no protection of its own; this helper is
1484
+ * the convenience implementation of the spec's integrity MUST so authors don't
1485
+ * hand-roll HMAC. Wire shape:
1486
+ *
1487
+ * "v1." b64url({"p":<payload>,"exp":<unixSeconds>,"b":<bindTag>?}) "." b64url(mac)
1488
+ *
1489
+ * where `bindTag` is `b64url(HMAC(key, "mcp.requestState.bind:" + bind(ctx))[:16])`
1490
+ * — the binding value is never embedded raw.
1491
+ *
1492
+ * The codec is **signed, not encrypted**: the body is integrity-protected but
1493
+ * the client can base64url-decode it and read the payload (`p`) in clear. Do
1494
+ * not put secrets in the payload; use an AEAD construction if confidentiality
1495
+ * is required. The handler reads its payload back via the typed
1496
+ * `ctx.mcpReq.requestState<T>()` accessor — the seam has already run `verify`
1497
+ * (integrity proven, payload decoded) by the time the handler is entered.
1498
+ *
1499
+ * Verification is fail-closed and constant-time (WebCrypto `subtle.verify` for
1500
+ * the body MAC; a fixed-length XOR-accumulator compare for the bind tag).
1501
+ * See `examples/mrtr/server.ts` for a worked end-to-end example.
1502
+ *
1503
+ * Design comparison (mcp.d `secureRequestState`, the peer SDK's reference
1504
+ * implementation): mcp.d additionally offers an AES-256-GCM encrypted mode and
1505
+ * derives independent cipher / bind-HMAC sub-keys from the operator secret via
1506
+ * HKDF-SHA256, with an auto-generated per-process ephemeral key when none is
1507
+ * supplied. This codec deliberately ships only the signed mode and a single
1508
+ * keyed HMAC (domain-separated by input prefix) — HKDF sub-key derivation and
1509
+ * an encrypted mode are intentionally out of scope for the initial release.
1510
+ */
1511
+ function createRequestStateCodec(options) {
1512
+ const subtle = globalThis.crypto?.subtle;
1513
+ if (subtle === void 0) throw new TypeError("createRequestStateCodec requires the Web Crypto API (globalThis.crypto.subtle); see https://ts.sdk.modelcontextprotocol.io/v2/troubleshooting for the Node.js polyfill instructions");
1514
+ const keyBytes = typeof options.key === "string" ? new TextEncoder().encode(options.key) : Uint8Array.from(options.key);
1515
+ if (keyBytes.byteLength < 32) throw new RangeError(`createRequestStateCodec: key must be at least 32 bytes (got ${keyBytes.byteLength})`);
1516
+ const ttlSeconds = options.ttlSeconds ?? 600;
1517
+ if (!Number.isFinite(ttlSeconds)) throw new RangeError("createRequestStateCodec: ttlSeconds must be a finite number");
1518
+ const bind = options.bind;
1519
+ let cryptoKey;
1520
+ const importedKey = () => cryptoKey ??= subtle.importKey("raw", keyBytes, {
1521
+ name: "HMAC",
1522
+ hash: "SHA-256"
1523
+ }, false, ["sign", "verify"]);
1524
+ const utf8 = new TextEncoder();
1525
+ const BIND_LABEL = "mcp.requestState.bind:";
1526
+ const bindTag = async (value) => {
1527
+ return bytesToBase64Url(new Uint8Array(await subtle.sign("HMAC", await importedKey(), utf8.encode(BIND_LABEL + value))).slice(0, 16));
1528
+ };
1529
+ return {
1530
+ async mint(payload, ctx) {
1531
+ const envelope = {
1532
+ p: payload,
1533
+ exp: Math.floor(Date.now() / 1e3) + ttlSeconds
1534
+ };
1535
+ if (bind !== void 0) {
1536
+ if (ctx === void 0) throw new TypeError("createRequestStateCodec: mint() requires ctx when a bind callback is configured");
1537
+ envelope.b = await bindTag(bind(ctx));
1538
+ }
1539
+ const body = bytesToBase64Url(utf8.encode(JSON.stringify(envelope)));
1540
+ return `${PREFIX}${body}.${bytesToBase64Url(new Uint8Array(await subtle.sign("HMAC", await importedKey(), utf8.encode(PREFIX + body))))}`;
1541
+ },
1542
+ async verify(state, ctx) {
1543
+ const dot = state.lastIndexOf(".");
1544
+ if (!state.startsWith(PREFIX) || dot <= 3) throw new Error("malformed");
1545
+ const body = state.slice(3, dot);
1546
+ let macBytes;
1547
+ try {
1548
+ macBytes = base64UrlToBytes(state.slice(dot + 1));
1549
+ } catch {
1550
+ throw new Error("malformed");
1551
+ }
1552
+ if (!await subtle.verify("HMAC", await importedKey(), macBytes, utf8.encode(PREFIX + body))) throw new Error("mac");
1553
+ let envelope;
1554
+ try {
1555
+ envelope = JSON.parse(new TextDecoder("utf-8", { fatal: true }).decode(base64UrlToBytes(body)));
1556
+ } catch {
1557
+ throw new Error("malformed");
1558
+ }
1559
+ if (typeof envelope.exp !== "number" || envelope.exp < Math.floor(Date.now() / 1e3)) throw new Error("expired");
1560
+ if (bind !== void 0) {
1561
+ const expected = await bindTag(bind(ctx));
1562
+ if (envelope.b === void 0 || !constantTimeTagEqual(envelope.b, expected)) throw new Error("bind");
1563
+ } else if (envelope.b !== void 0) throw new Error("bind");
1564
+ return envelope.p;
1565
+ }
1566
+ };
1567
+ }
1568
+
1569
+ //#endregion
1570
+ //#region src/fromJsonSchema.ts
1571
+ let _defaultValidator;
1572
+ function fromJsonSchema(schema, validator) {
1573
+ return fromJsonSchema$1(schema, validator ?? (_defaultValidator ??= new DefaultJsonSchemaValidator()));
1574
+ }
1575
+
1576
+ //#endregion
1577
+ export { BAGGAGE_META_KEY, CLIENT_CAPABILITIES_META_KEY, CLIENT_INFO_META_KEY, DEFAULT_MAX_REQUEST_BODY_SIZE, DEFAULT_NEGOTIATED_PROTOCOL_VERSION, DEFAULT_REQUEST_TIMEOUT_MSEC, INTERNAL_ERROR, INVALID_PARAMS, INVALID_REQUEST, InMemoryServerEventBus, InMemoryTransport, JSONRPC_VERSION, LATEST_PROTOCOL_VERSION, LOG_LEVEL_META_KEY, METHOD_NOT_FOUND, McpServer, MissingRequiredClientCapabilityError, OAuthError, OAuthErrorCode, PARSE_ERROR, PROTOCOL_VERSION_META_KEY, PerRequestHTTPServerTransport, Protocol, ProtocolError, ProtocolErrorCode, RELATED_TASK_META_KEY, ReadBuffer, ResourceNotFoundError, ResourceTemplate, SERVER_INFO_META_KEY, STDIO_DEFAULT_MAX_BUFFER_SIZE, SUBSCRIPTION_ID_META_KEY, SUPPORTED_PROTOCOL_VERSIONS, SdkError, SdkErrorCode, SdkHttpError, Server, TRACEPARENT_META_KEY, TRACESTATE_META_KEY, UnsupportedProtocolVersionError, UriTemplate, UrlElicitationRequiredError, WebStandardStreamableHTTPServerTransport, acceptedContent, assertCompleteRequestPrompt, assertCompleteRequestResourceTemplate, bearerAuthChallengeResponse, buildOAuthProtectedResourceMetadata, checkResourceAllowed, classifyInboundRequest, completable, createFetchWithInit, createMcpHandler, createRequestStateCodec, deserializeMessage, fromJsonSchema, getDisplayName, getOAuthProtectedResourceMetadataUrl, hostHeaderValidationResponse, inputRequired, inputResponse, isCallToolResult, isCompletable, isInitializeRequest, isInitializedNotification, isInputRequiredResult, isJSONRPCErrorResponse, isJSONRPCNotification, isJSONRPCRequest, isJSONRPCResponse, isJSONRPCResultResponse, isJsonContentType, isLegacyRequest, isSpecType, isTaskAugmentedRequestParams, legacyStatelessFallback, localhostAllowedHostnames, localhostAllowedOrigins, mergeCapabilities, oauthMetadataResponse, originValidationResponse, parseJSONRPCMessage, preloadSchemas, readRequestBody, requireBearerAuth, requireScopes, resourceUrlFromServerUrl, serializeMessage, specTypeSchemas, validateHostHeader, validateOriginHeader, verifyBearerToken };
1578
+ //# sourceMappingURL=index.mjs.map