archgen-skill 0.1.0 → 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 (1068) 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/lib/store.js +31 -11
  1065. package/package.json +1 -1
  1066. package/vendor/skills/archgen/SKILL.md +16 -12
  1067. package/vendor/skills/archgen/archgen.config.json +1 -1
  1068. package/vendor/skills/archgen/references/code-standards.md +24 -8
@@ -0,0 +1,2166 @@
1
+ import { A as promptArgumentsFromStandardSchema, At as LATEST_PROTOCOL_VERSION, B as scanXMcpHeaderDeclarations, C as REQUEST_STATE_ONLY_LEG_PACING_MS, Ct as CLIENT_CAPABILITIES_META_KEY, E as sleep, H as assertCompleteRequestPrompt, Ht as requiredClientCapabilitiesForInputRequest, J as isJSONRPCErrorResponse, Kt as SdkError, M as validateStandardSchema, N as parseSchema, P as LADDER_ERROR_HTTP_STATUS, Q as isJSONRPCResultResponse, T as linkedRoundAbort, U as assertCompleteRequestResourceTemplate, Vt as missingClientCapabilities, X as isJSONRPCRequest, Xt as OAuthErrorCode, Yt as OAuthError, _ as mergeCapabilities, _t as normalizeContentlessToolResult, a as UriTemplate, b as withRequestStateValue, bt as legacyProtocolVersions, ct as codecForVersion, dt as ResourceNotFoundError, g as Protocol, gt as attachCacheHintFallback, ht as assertValidCacheHint, j as standardSchemaToJsonSchema, jt as LOG_LEVEL_META_KEY, lt as MissingRequiredClientCapabilityError, mt as ProtocolErrorCode, nt as LoggingLevelSchema, q as isInputRequiredResult, qt as SdkErrorCode, r as normalizeRawShapeSchema, s as validateAndWarnToolName, ut as ProtocolError, v as requestStateAccessor, vt as SUPPORTED_MODERN_PROTOCOL_VERSIONS, w as inputRequiredRoundsExceededMessage, xt as modernProtocolVersions, yt as isModernProtocolVersion } from "./src-DdvbAHrR.mjs";
2
+ import { DefaultJsonSchemaValidator } from "@modelcontextprotocol/server/_shims";
3
+
4
+ //#region src/server/completable.ts
5
+ const COMPLETABLE_SYMBOL = Symbol.for("mcp.completable");
6
+ /**
7
+ * Wraps a schema to provide autocompletion capabilities. Useful for, e.g., prompt arguments in MCP.
8
+ *
9
+ * @example
10
+ * ```ts source="./completable.examples.ts#completable_basicUsage"
11
+ * server.registerPrompt(
12
+ * 'review-code',
13
+ * {
14
+ * title: 'Code Review',
15
+ * argsSchema: z.object({
16
+ * language: completable(z.string().describe('Programming language'), value =>
17
+ * ['typescript', 'javascript', 'python', 'rust', 'go'].filter(lang => lang.startsWith(value))
18
+ * )
19
+ * })
20
+ * },
21
+ * ({ language }) => ({
22
+ * messages: [
23
+ * {
24
+ * role: 'user' as const,
25
+ * content: {
26
+ * type: 'text' as const,
27
+ * text: `Review this ${language} code.`
28
+ * }
29
+ * }
30
+ * ]
31
+ * })
32
+ * );
33
+ * ```
34
+ *
35
+ * @see {@linkcode server/mcp.McpServer.registerPrompt | McpServer.registerPrompt} for using completable schemas in prompt argument definitions
36
+ */
37
+ function completable(schema, complete) {
38
+ Object.defineProperty(schema, COMPLETABLE_SYMBOL, {
39
+ value: { complete },
40
+ enumerable: false,
41
+ writable: false,
42
+ configurable: false
43
+ });
44
+ return schema;
45
+ }
46
+ /**
47
+ * Checks if a schema is completable (has completion metadata).
48
+ */
49
+ function isCompletable(schema) {
50
+ return !!schema && typeof schema === "object" && COMPLETABLE_SYMBOL in schema;
51
+ }
52
+ /**
53
+ * Gets the completer callback from a completable schema, if it exists.
54
+ */
55
+ function getCompleter(schema) {
56
+ return schema[COMPLETABLE_SYMBOL]?.complete;
57
+ }
58
+
59
+ //#endregion
60
+ //#region src/server/sseKeepAlive.ts
61
+ /** Default interval between SSE keep-alive comment frames. */
62
+ const DEFAULT_SSE_KEEP_ALIVE_MS = 15e3;
63
+ const MAX_TIMER_DELAY_MS = 2 ** 31 - 1;
64
+ /** Arms an unref'd timer, or disables keep-alive for invalid delays. */
65
+ function armSseKeepAlive(intervalMs, onTick) {
66
+ if (!Number.isFinite(intervalMs) || intervalMs < 1) return;
67
+ const timer = setInterval(onTick, Math.min(intervalMs, MAX_TIMER_DELAY_MS));
68
+ timer.unref?.();
69
+ return timer;
70
+ }
71
+
72
+ //#endregion
73
+ //#region src/server/perRequestTransport.ts
74
+ let readClassification;
75
+ /**
76
+ * The per-request micro-transport: a real, connected `Transport` whose whole
77
+ * lifetime is one HTTP exchange. See the module documentation for the
78
+ * response shapes it produces.
79
+ *
80
+ * Connecting a `Server` binds the instance to the classified modern revision
81
+ * when its `supportedProtocolVersions` lists it and the SDK implements it.
82
+ */
83
+ var PerRequestHTTPServerTransport = class {
84
+ static {
85
+ readClassification = (transport) => transport._classification;
86
+ }
87
+ onclose;
88
+ onerror;
89
+ onmessage;
90
+ _classification;
91
+ _responseMode;
92
+ _started = false;
93
+ _used = false;
94
+ _closed = false;
95
+ _terminalDelivered = false;
96
+ /**
97
+ * `true` only while the inbound message is being delivered synchronously
98
+ * to the connected protocol layer. The pre-handler gates (the era
99
+ * registry gate, the edge→instance handoff check, the missing-handler
100
+ * rejection) answer inside this window; request handlers always run
101
+ * after it (the protocol layer defers them to a microtask). An error
102
+ * sent inside the window is therefore ladder-originated, and an error
103
+ * sent after it is handler-produced.
104
+ */
105
+ _dispatchWindowOpen = false;
106
+ _requestId;
107
+ _deferredResponse;
108
+ _sse;
109
+ _abortCleanup;
110
+ _keepAliveMs;
111
+ constructor(options) {
112
+ this._classification = options.classification;
113
+ this._responseMode = options.responseMode ?? "auto";
114
+ this._keepAliveMs = options.keepAliveMs ?? DEFAULT_SSE_KEEP_ALIVE_MS;
115
+ }
116
+ async start() {
117
+ if (this._started) throw new Error("PerRequestHTTPServerTransport is already started");
118
+ this._started = true;
119
+ }
120
+ /**
121
+ * Serves the single exchange: delivers the classified message to the
122
+ * connected server instance and resolves with the HTTP response.
123
+ *
124
+ * Throws when called a second time (the transport is strictly
125
+ * single-use), or before a server has been connected to the transport.
126
+ * The returned promise rejects with a connection-closed error when the
127
+ * transport is closed before a response was produced (for example because
128
+ * the client disconnected).
129
+ */
130
+ async handleMessage(message, extra) {
131
+ if (this._used) throw new Error("PerRequestHTTPServerTransport serves exactly one exchange; construct a new transport per request");
132
+ if (!this._started || this.onmessage === void 0) throw new Error("PerRequestHTTPServerTransport is not connected: connect a server to this transport before handling a message");
133
+ if (this._closed) throw new Error("PerRequestHTTPServerTransport is closed");
134
+ this._used = true;
135
+ const signal = extra?.request?.signal;
136
+ if (signal?.aborted) {
137
+ await this.close();
138
+ throw new SdkError(SdkErrorCode.ConnectionClosed, "The request was aborted before it could be handled");
139
+ }
140
+ const messageExtra = {
141
+ classification: this._classification,
142
+ ...extra?.request !== void 0 && { request: extra.request },
143
+ ...extra?.authInfo !== void 0 && { authInfo: extra.authInfo }
144
+ };
145
+ if (isJSONRPCRequest(message)) {
146
+ this._requestId = message.id;
147
+ let resolve;
148
+ let reject;
149
+ const promise = new Promise((promiseResolve, promiseReject) => {
150
+ resolve = promiseResolve;
151
+ reject = promiseReject;
152
+ });
153
+ this._deferredResponse = {
154
+ promise,
155
+ resolve,
156
+ reject,
157
+ settled: false
158
+ };
159
+ if (signal !== void 0) {
160
+ const onAbort = () => void this.close();
161
+ signal.addEventListener("abort", onAbort, { once: true });
162
+ this._abortCleanup = () => signal.removeEventListener("abort", onAbort);
163
+ }
164
+ this._dispatchWindowOpen = true;
165
+ try {
166
+ this.onmessage(message, messageExtra);
167
+ } finally {
168
+ this._dispatchWindowOpen = false;
169
+ }
170
+ if (this._responseMode === "sse" && !this._closed && !this._deferredResponse.settled) this.upgradeToSse();
171
+ return promise;
172
+ }
173
+ this.onmessage(message, messageExtra);
174
+ return new Response(null, { status: 202 });
175
+ }
176
+ async send(message, options) {
177
+ if (this._closed) return;
178
+ const isResponse = isJSONRPCResultResponse(message) || isJSONRPCErrorResponse(message);
179
+ const relatedId = isResponse ? message.id : options?.relatedRequestId;
180
+ if (this._requestId === void 0 || relatedId === void 0 || relatedId !== this._requestId) {
181
+ if (isResponse) this.onerror?.(/* @__PURE__ */ new Error(`Received a response for an unknown request id: ${String(message.id)}`));
182
+ return;
183
+ }
184
+ if (isResponse) {
185
+ if (this._terminalDelivered) return;
186
+ this._terminalDelivered = true;
187
+ const errorCode = isJSONRPCErrorResponse(message) ? message.error.code : void 0;
188
+ const ladderStatus = errorCode !== void 0 && (this._dispatchWindowOpen || errorCode === ProtocolErrorCode.MissingRequiredClientCapability) ? LADDER_ERROR_HTTP_STATUS[errorCode] : void 0;
189
+ if (ladderStatus !== void 0 && this._sse === void 0) {
190
+ this.settleResponse(Response.json(message, {
191
+ status: ladderStatus,
192
+ headers: { "Content-Type": "application/json" }
193
+ }));
194
+ queueMicrotask(() => void this.close());
195
+ return;
196
+ }
197
+ if (this._sse !== void 0 || this._responseMode === "sse") {
198
+ if (this._sse === void 0) this.upgradeToSse();
199
+ this.writeMessageFrame(message);
200
+ this.finalizeStream();
201
+ return;
202
+ }
203
+ this.settleResponse(Response.json(message, {
204
+ status: 200,
205
+ headers: { "Content-Type": "application/json" }
206
+ }));
207
+ queueMicrotask(() => void this.close());
208
+ return;
209
+ }
210
+ if (this._responseMode === "json") return;
211
+ if (this._sse === void 0) this.upgradeToSse();
212
+ this.writeMessageFrame(message);
213
+ }
214
+ /**
215
+ * Writes an SSE comment frame (a keep-alive heartbeat). Dropped when the
216
+ * exchange is not currently streaming.
217
+ */
218
+ writeCommentFrame(comment) {
219
+ if (this._closed || this._sse === void 0 || this._sse.closed) return;
220
+ const frame = comment.split("\n").map((line) => `: ${line}`).join("\n");
221
+ this.writeFrame(`${frame}\n\n`);
222
+ }
223
+ async close() {
224
+ if (this._closed) return;
225
+ this._closed = true;
226
+ this._abortCleanup?.();
227
+ this._abortCleanup = void 0;
228
+ if (this._sse?.keepAliveTimer !== void 0) clearInterval(this._sse.keepAliveTimer);
229
+ if (this._sse !== void 0 && !this._sse.closed) {
230
+ this._sse.closed = true;
231
+ try {
232
+ this._sse.controller.close();
233
+ } catch {}
234
+ }
235
+ if (this._deferredResponse !== void 0 && !this._deferredResponse.settled) {
236
+ this._deferredResponse.settled = true;
237
+ this._deferredResponse.reject(new SdkError(SdkErrorCode.ConnectionClosed, "Connection closed before a response was produced"));
238
+ }
239
+ this.onclose?.();
240
+ }
241
+ settleResponse(response) {
242
+ if (this._deferredResponse === void 0 || this._deferredResponse.settled) return;
243
+ this._deferredResponse.settled = true;
244
+ this._deferredResponse.resolve(response);
245
+ }
246
+ upgradeToSse() {
247
+ let controller;
248
+ const readable = new ReadableStream({
249
+ start: (streamController) => {
250
+ controller = streamController;
251
+ },
252
+ cancel: () => {
253
+ this.close();
254
+ }
255
+ });
256
+ this._sse = {
257
+ controller,
258
+ encoder: new TextEncoder(),
259
+ closed: false
260
+ };
261
+ this._sse.keepAliveTimer = armSseKeepAlive(this._keepAliveMs, () => this.writeCommentFrame("keepalive"));
262
+ this.settleResponse(new Response(readable, {
263
+ status: 200,
264
+ headers: {
265
+ "Content-Type": "text/event-stream",
266
+ "Cache-Control": "no-cache, no-transform",
267
+ Connection: "keep-alive",
268
+ "X-Accel-Buffering": "no"
269
+ }
270
+ }));
271
+ }
272
+ finalizeStream() {
273
+ if (this._sse?.keepAliveTimer !== void 0) clearInterval(this._sse.keepAliveTimer);
274
+ if (this._sse !== void 0 && !this._sse.closed) {
275
+ this._sse.closed = true;
276
+ try {
277
+ this._sse.controller.close();
278
+ } catch {}
279
+ }
280
+ queueMicrotask(() => void this.close());
281
+ }
282
+ writeMessageFrame(message) {
283
+ this.writeFrame(`event: message\ndata: ${JSON.stringify(message)}\n\n`);
284
+ }
285
+ writeFrame(frame) {
286
+ if (this._sse === void 0 || this._sse.closed) return;
287
+ try {
288
+ this._sse.controller.enqueue(this._sse.encoder.encode(frame));
289
+ } catch (error) {
290
+ this.onerror?.(/* @__PURE__ */ new Error(`Failed to write to the response stream: ${error}`));
291
+ }
292
+ }
293
+ };
294
+ /** Package-internal: the classification a per-request transport serves; `undefined` for any other transport. Not public API. */
295
+ function perRequestClassificationOf(transport) {
296
+ return transport instanceof PerRequestHTTPServerTransport ? readClassification(transport) : void 0;
297
+ }
298
+
299
+ //#endregion
300
+ //#region src/server/middleware/bearerAuth.ts
301
+ function comparableResource(value) {
302
+ const text = String(value);
303
+ const hash = text.indexOf("#");
304
+ return (hash === -1 ? text : text.slice(0, hash)).replace(/\/$/, "");
305
+ }
306
+ function sameResource(reported, expected) {
307
+ if (!reported) return false;
308
+ return comparableResource(reported) === comparableResource(expected);
309
+ }
310
+ function headerQuotedValue(value) {
311
+ return value.replaceAll(/[\\"]/g, String.raw`\$&`).replaceAll(/[^\u0020-\u007E]/g, " ");
312
+ }
313
+ /**
314
+ * Build a `WWW-Authenticate: Bearer …` challenge header value (RFC 6750).
315
+ *
316
+ * The single formatter behind every challenge this package emits — the
317
+ * bearer-auth 401/403 answers and the per-operation scope-challenge 403 — so
318
+ * all challenges from one server agree on parameter order and quoting. Every
319
+ * parameter value is emitted as an HTTP quoted-string with `\` and `"`
320
+ * escaped and non-printable characters replaced.
321
+ */
322
+ function buildWwwAuthenticateHeader(errorCode, description, requiredScopes, resourceMetadataUrl) {
323
+ let header = `Bearer error="${headerQuotedValue(errorCode)}", error_description="${headerQuotedValue(description)}"`;
324
+ if (requiredScopes.length > 0) header += `, scope="${headerQuotedValue(requiredScopes.join(" "))}"`;
325
+ if (resourceMetadataUrl) header += `, resource_metadata="${headerQuotedValue(resourceMetadataUrl)}"`;
326
+ return header;
327
+ }
328
+ /**
329
+ * Validate a raw `Authorization` header value as a Bearer token and return
330
+ * the verified {@link AuthInfo}.
331
+ *
332
+ * The runtime-neutral core of Bearer authentication: it parses the header,
333
+ * runs the verifier, compares the token's resource with `expectedResource`,
334
+ * enforces `requiredScopes`, and rejects tokens without an
335
+ * expiration or past it. On any failure it throws an {@link OAuthError} —
336
+ * pass that to {@link bearerAuthChallengeResponse} for the matching HTTP
337
+ * answer, or use {@link requireBearerAuth} to get both steps as one call.
338
+ *
339
+ * Framework adapters build on this: `requireBearerAuth` from
340
+ * `@modelcontextprotocol/express` feeds it `req.headers.authorization`.
341
+ */
342
+ async function verifyBearerToken(authorizationHeader, options) {
343
+ const { verifier, requiredScopes = [], expectedResource } = options;
344
+ if (!authorizationHeader) throw new OAuthError(OAuthErrorCode.InvalidToken, "Missing Authorization header");
345
+ const [type, token] = authorizationHeader.split(" ");
346
+ if (type?.toLowerCase() !== "bearer" || !token) throw new OAuthError(OAuthErrorCode.InvalidToken, "Invalid Authorization header format, expected 'Bearer TOKEN'");
347
+ const authInfo = await verifier.verifyAccessToken(token);
348
+ if (expectedResource !== void 0 && !sameResource(authInfo.resource, expectedResource)) throw new OAuthError(OAuthErrorCode.InvalidToken, "Token was not issued for this resource");
349
+ if (requiredScopes.length > 0) {
350
+ if (!requiredScopes.every((scope) => authInfo.scopes.includes(scope))) throw new OAuthError(OAuthErrorCode.InsufficientScope, "Insufficient scope");
351
+ }
352
+ if (typeof authInfo.expiresAt !== "number" || Number.isNaN(authInfo.expiresAt)) throw new OAuthError(OAuthErrorCode.InvalidToken, "Token has no expiration time");
353
+ else if (authInfo.expiresAt < Date.now() / 1e3) throw new OAuthError(OAuthErrorCode.InvalidToken, "Token has expired");
354
+ if (options.resourceMetadataUrl !== void 0 && authInfo.resourceMetadataUrl === void 0) return {
355
+ ...authInfo,
356
+ resourceMetadataUrl: options.resourceMetadataUrl
357
+ };
358
+ return authInfo;
359
+ }
360
+ /**
361
+ * Build the HTTP answer for a Bearer authentication failure.
362
+ *
363
+ * Maps an {@link OAuthError} to its status — `401` for `invalid_token` and
364
+ * `403` for `insufficient_scope` (both carrying the `WWW-Authenticate: Bearer …`
365
+ * challenge, with `resource_metadata` when configured so clients can discover
366
+ * the Authorization Server), `500` for `server_error`, `400` for anything
367
+ * else. A non-`OAuthError` value answers `500 server_error`. The body is the
368
+ * OAuth error JSON.
369
+ */
370
+ function bearerAuthChallengeResponse(error, options) {
371
+ const { requiredScopes = [], resourceMetadataUrl } = options ?? {};
372
+ if (!(error instanceof OAuthError)) {
373
+ const serverError = new OAuthError(OAuthErrorCode.ServerError, "Internal Server Error");
374
+ return Response.json(serverError.toResponseObject(), { status: 500 });
375
+ }
376
+ switch (error.code) {
377
+ case OAuthErrorCode.InvalidToken: {
378
+ const challenge = buildWwwAuthenticateHeader(error.code, error.message, requiredScopes, resourceMetadataUrl);
379
+ return Response.json(error.toResponseObject(), {
380
+ status: 401,
381
+ headers: { "WWW-Authenticate": challenge }
382
+ });
383
+ }
384
+ case OAuthErrorCode.InsufficientScope: {
385
+ const challenge = buildWwwAuthenticateHeader(error.code, error.message, requiredScopes, resourceMetadataUrl);
386
+ return Response.json(error.toResponseObject(), {
387
+ status: 403,
388
+ headers: { "WWW-Authenticate": challenge }
389
+ });
390
+ }
391
+ case OAuthErrorCode.ServerError: return Response.json(error.toResponseObject(), { status: 500 });
392
+ default: return Response.json(error.toResponseObject(), { status: 400 });
393
+ }
394
+ }
395
+ /**
396
+ * Require a valid Bearer token on web-standard requests.
397
+ *
398
+ * The framework-free counterpart of `requireBearerAuth` from
399
+ * `@modelcontextprotocol/express`, for hosts whose HTTP surface is a
400
+ * `fetch(request)` handler — Cloudflare Workers, Deno, Bun, Hono. The
401
+ * returned gate resolves to the verified {@link AuthInfo}, or to the
402
+ * ready-to-return challenge `Response` when the request must be refused.
403
+ *
404
+ * @example
405
+ * ```ts source="./bearerAuth.examples.ts#requireBearerAuth_fetchGate"
406
+ * const gate = requireBearerAuth({ verifier, requiredScopes: ['mcp'] });
407
+ *
408
+ * async function fetchHandler(request: Request): Promise<Response> {
409
+ * const auth: AuthInfo | Response = await gate(request);
410
+ * if (auth instanceof Response) return auth;
411
+ * return handler.fetch(request, { authInfo: auth });
412
+ * }
413
+ * ```
414
+ */
415
+ function requireBearerAuth(options) {
416
+ const { verifier, requiredScopes = [], resourceMetadataUrl, expectedResource } = options;
417
+ const resolved = {
418
+ verifier,
419
+ requiredScopes,
420
+ resourceMetadataUrl,
421
+ expectedResource
422
+ };
423
+ return async (request) => {
424
+ const [authorizationHeader] = (request.headers.get("authorization") ?? "").split(",");
425
+ try {
426
+ return await verifyBearerToken(authorizationHeader || void 0, resolved);
427
+ } catch (error) {
428
+ return bearerAuthChallengeResponse(error, resolved);
429
+ }
430
+ };
431
+ }
432
+
433
+ //#endregion
434
+ //#region src/server/middleware/oauthMetadata.ts
435
+ function checkIssuerUrl(issuer, allowInsecure) {
436
+ if (issuer.protocol !== "https:" && issuer.hostname !== "localhost" && issuer.hostname !== "127.0.0.1" && !allowInsecure) throw new Error("Issuer URL must be HTTPS");
437
+ if (issuer.hash) throw new Error(`Issuer URL must not have a fragment: ${issuer}`);
438
+ if (issuer.search) throw new Error(`Issuer URL must not have a query string: ${issuer}`);
439
+ }
440
+ /**
441
+ * Derive the RFC 9728 Protected Resource Metadata document from
442
+ * {@link AuthMetadataOptions}, validating the Authorization Server issuer URL
443
+ * (HTTPS required outside localhost) in the process.
444
+ *
445
+ * `oauthMetadataResponse` and the Express `mcpAuthMetadataRouter` both build
446
+ * on this; use it directly when serving the document through your own
447
+ * routing — or call it once at startup to fail fast on a misconfigured
448
+ * issuer before any request arrives.
449
+ */
450
+ function buildOAuthProtectedResourceMetadata(options) {
451
+ checkIssuerUrl(new URL(options.oauthMetadata.issuer), options.dangerouslyAllowInsecureIssuerUrl);
452
+ return {
453
+ resource: options.resourceServerUrl.href,
454
+ authorization_servers: [options.oauthMetadata.issuer],
455
+ scopes_supported: options.scopesSupported,
456
+ resource_name: options.resourceName,
457
+ resource_documentation: options.serviceDocumentationUrl?.href
458
+ };
459
+ }
460
+ /**
461
+ * Builds the RFC 9728 Protected Resource Metadata URL for a given MCP server
462
+ * URL by inserting `/.well-known/oauth-protected-resource` ahead of the path.
463
+ *
464
+ * @example
465
+ * ```ts
466
+ * getOAuthProtectedResourceMetadataUrl(new URL('https://api.example.com/mcp'))
467
+ * // → 'https://api.example.com/.well-known/oauth-protected-resource/mcp'
468
+ * ```
469
+ */
470
+ function getOAuthProtectedResourceMetadataUrl(serverUrl) {
471
+ const metadataUrl = new URL(serverUrl);
472
+ metadataUrl.pathname = protectedResourceMetadataPath(serverUrl);
473
+ metadataUrl.hash = "";
474
+ return metadataUrl.href;
475
+ }
476
+ /** The RFC 9728 path-aware well-known path for a resource URL. */
477
+ function protectedResourceMetadataPath(resourceServerUrl) {
478
+ const rsPath = stripTrailingSlash(resourceServerUrl.pathname);
479
+ return `/.well-known/oauth-protected-resource${rsPath === "/" ? "" : rsPath}`;
480
+ }
481
+ function stripTrailingSlash(path) {
482
+ return path.length > 1 && path.endsWith("/") ? path.slice(0, -1) : path;
483
+ }
484
+ const ALLOWED_METHODS = "GET, HEAD, OPTIONS";
485
+ function metadataDocumentResponse(request, metadata) {
486
+ if (request.method === "OPTIONS") {
487
+ const requestedHeaders = request.headers.get("access-control-request-headers");
488
+ return new Response(null, {
489
+ status: 204,
490
+ headers: {
491
+ "Access-Control-Allow-Origin": "*",
492
+ "Access-Control-Allow-Methods": ALLOWED_METHODS,
493
+ ...requestedHeaders === null ? {} : {
494
+ "Access-Control-Allow-Headers": requestedHeaders,
495
+ Vary: "Access-Control-Request-Headers"
496
+ }
497
+ }
498
+ });
499
+ }
500
+ if (request.method !== "GET" && request.method !== "HEAD") {
501
+ const error = new OAuthError(OAuthErrorCode.MethodNotAllowed, `The method ${request.method} is not allowed for this endpoint`);
502
+ return Response.json(error.toResponseObject(), {
503
+ status: 405,
504
+ headers: {
505
+ Allow: ALLOWED_METHODS,
506
+ "Access-Control-Allow-Origin": "*"
507
+ }
508
+ });
509
+ }
510
+ const response = Response.json(metadata, { headers: { "Access-Control-Allow-Origin": "*" } });
511
+ return request.method === "HEAD" ? new Response(null, {
512
+ status: response.status,
513
+ headers: response.headers
514
+ }) : response;
515
+ }
516
+ /**
517
+ * Serve the two OAuth discovery documents an MCP server acting as a Resource
518
+ * Server exposes, from a web-standard `fetch(request)` handler:
519
+ *
520
+ * - `/.well-known/oauth-protected-resource[/<path>]` — RFC 9728 Protected
521
+ * Resource Metadata, derived from the supplied options (path-aware: the
522
+ * resource URL's path is reflected in the route).
523
+ * - `/.well-known/oauth-authorization-server` — RFC 8414 Authorization
524
+ * Server Metadata, passed through verbatim.
525
+ *
526
+ * Returns the matched document `Response` (JSON with permissive CORS, `405`
527
+ * with an `Allow` header for non-GET methods, `204` for CORS preflight), or
528
+ * `undefined` when the request path is neither well-known route — fall
529
+ * through to your own routing. The framework-free counterpart of
530
+ * `mcpAuthMetadataRouter` from `@modelcontextprotocol/express`; pair it with
531
+ * `requireBearerAuth` and `getOAuthProtectedResourceMetadataUrl` so
532
+ * unauthenticated clients can discover the AS from the `401` challenge.
533
+ *
534
+ * @example
535
+ * ```ts source="./oauthMetadata.examples.ts#oauthMetadataResponse_fetchHandler"
536
+ * async function fetchHandler(request: Request): Promise<Response> {
537
+ * return oauthMetadataResponse(request, options) ?? serveMcp(request);
538
+ * }
539
+ * ```
540
+ */
541
+ function oauthMetadataResponse(request, options) {
542
+ const requestPath = stripTrailingSlash(new URL(request.url).pathname);
543
+ if (requestPath === protectedResourceMetadataPath(options.resourceServerUrl)) return metadataDocumentResponse(request, buildOAuthProtectedResourceMetadata(options));
544
+ if (requestPath === "/.well-known/oauth-authorization-server") {
545
+ buildOAuthProtectedResourceMetadata(options);
546
+ return metadataDocumentResponse(request, options.oauthMetadata);
547
+ }
548
+ }
549
+
550
+ //#endregion
551
+ //#region src/server/scopeChallenge.ts
552
+ /** @internal */
553
+ function supportsScopeChallengeResolver(transport) {
554
+ return typeof transport === "object" && transport !== null && "setScopeChallengeResolver" in transport && typeof transport.setScopeChallengeResolver === "function";
555
+ }
556
+ function assertScope(scope, location) {
557
+ if (typeof scope !== "string" || !/^[\u0021\u0023-\u005B\u005D-\u007E]+$/.test(scope)) throw new TypeError(`${location} must satisfy the OAuth scope-token grammar`);
558
+ }
559
+ function validateScopeChallenge(challenge) {
560
+ if (challenge === null || typeof challenge !== "object" || !Array.isArray(challenge.scopes) || challenge.scopes.length === 0) throw new TypeError("scope challenge must contain at least one scope");
561
+ for (const [index, scope] of challenge.scopes.entries()) assertScope(scope, `scope challenge scopes[${index}]`);
562
+ if (challenge.errorDescription !== void 0 && typeof challenge.errorDescription !== "string") throw new TypeError("scope challenge errorDescription must be a string");
563
+ if (challenge.errorDescription !== void 0 && !/^[\u0020-\u0021\u0023-\u005B\u005D-\u007E]+$/.test(challenge.errorDescription)) throw new TypeError("scope challenge errorDescription must satisfy the RFC 6750 error-description grammar");
564
+ return challenge;
565
+ }
566
+ /**
567
+ * Creates a handler that requires every supplied scope exactly.
568
+ *
569
+ * Requests without authentication are left to the server's authentication gate.
570
+ */
571
+ function requireScopes(...scopes) {
572
+ if (scopes.length === 0) throw new TypeError("requireScopes must contain at least one scope");
573
+ for (const [index, scope] of scopes.entries()) assertScope(scope, `requireScopes scope[${index}]`);
574
+ const requiredScopes = [...scopes];
575
+ return ({ authInfo }) => {
576
+ if (authInfo === void 0) return;
577
+ const activeScopes = new Set(authInfo.scopes);
578
+ if (requiredScopes.every((scope) => activeScopes.has(scope))) return;
579
+ return { scopes: requiredScopes };
580
+ };
581
+ }
582
+ /** @internal */
583
+ async function findScopeChallenge(requests, authInfo, resolve) {
584
+ for (const request of requests) {
585
+ const challenge = await resolve({
586
+ request,
587
+ ...authInfo !== void 0 && { authInfo }
588
+ });
589
+ if (challenge !== void 0) return validateScopeChallenge(challenge);
590
+ }
591
+ }
592
+ /**
593
+ * The RFC 9728 Protected Resource Metadata URL to advertise on a scope
594
+ * challenge, derived from the verified {@link AuthInfo}: the URL the
595
+ * authentication gate stamped (`authInfo.resourceMetadataUrl`, set by the
596
+ * bearer-auth helpers from their `resourceMetadataUrl` option), falling back
597
+ * to the well-known location for an HTTP(S) RFC 8707 `resource` identifier, or
598
+ * `undefined` when neither is available (the `resource_metadata` parameter is
599
+ * then omitted, matching the bearer-auth challenges).
600
+ *
601
+ * @internal
602
+ */
603
+ function scopeChallengeResourceMetadataUrl(authInfo) {
604
+ if (authInfo?.resourceMetadataUrl !== void 0) return authInfo.resourceMetadataUrl;
605
+ if (authInfo?.resource?.protocol === "https:" || authInfo?.resource?.protocol === "http:") return getOAuthProtectedResourceMetadataUrl(authInfo.resource);
606
+ }
607
+ /** @internal */
608
+ function createScopeChallengeResponse(challenge, resourceMetadataUrl) {
609
+ return bearerAuthChallengeResponse(new OAuthError(OAuthErrorCode.InsufficientScope, challenge.errorDescription ?? "Insufficient scope"), {
610
+ requiredScopes: [...challenge.scopes],
611
+ resourceMetadataUrl
612
+ });
613
+ }
614
+
615
+ //#endregion
616
+ //#region src/server/legacyInputRequiredShim.ts
617
+ /**
618
+ * Default handler re-entries per originating request — tighter than the
619
+ * client driver's 10 because the shim holds a live wire request open.
620
+ */
621
+ const DEFAULT_LEGACY_SHIM_MAX_ROUNDS = 8;
622
+ /** Default per-leg timeout: legs are human-paced, so the 60s protocol default is wrong. */
623
+ const DEFAULT_LEGACY_SHIM_ROUND_TIMEOUT_MS = 6e5;
624
+ /** Resolves and validates `ServerOptions.inputRequired`, failing loudly at construction time. */
625
+ function resolveLegacyShimOptions(options) {
626
+ if (options?.maxRounds !== void 0 && (!Number.isInteger(options.maxRounds) || options.maxRounds < 1)) throw new RangeError(`inputRequired.maxRounds must be a positive integer (got ${options.maxRounds})`);
627
+ if (options?.roundTimeoutMs !== void 0 && (!Number.isFinite(options.roundTimeoutMs) || options.roundTimeoutMs <= 0)) throw new RangeError(`inputRequired.roundTimeoutMs must be a positive number (got ${options.roundTimeoutMs})`);
628
+ return {
629
+ maxRounds: options?.maxRounds ?? DEFAULT_LEGACY_SHIM_MAX_ROUNDS,
630
+ roundTimeoutMs: options?.roundTimeoutMs ?? DEFAULT_LEGACY_SHIM_ROUND_TIMEOUT_MS,
631
+ legacyShim: options?.legacyShim ?? true
632
+ };
633
+ }
634
+ /**
635
+ * Validates one `inputRequests` entry: malformed or unknown kinds are server
636
+ * bugs and fail loudly on both eras. Shared by the modern seam's capability
637
+ * check and the shim's gate.
638
+ */
639
+ function coerceEmbeddedInputRequest(method, key, entry) {
640
+ if (entry === null || typeof entry !== "object" || typeof entry.method !== "string") throw new ProtocolError(ProtocolErrorCode.InternalError, `Handler for ${method} returned an invalid input request '${key}': each inputRequests entry must be an embedded elicitation/create, sampling/createMessage, or roots/list request`);
641
+ const embedded = entry;
642
+ const required = requiredClientCapabilitiesForInputRequest(embedded);
643
+ if (required === void 0) throw new ProtocolError(ProtocolErrorCode.InternalError, `Handler for ${method} returned an input request '${key}' of kind '${embedded.method}', which is not an embedded request the 2026-07-28 revision defines`);
644
+ return {
645
+ embedded,
646
+ required
647
+ };
648
+ }
649
+ /**
650
+ * The 2025-11-25 URL-mode wire shape requires an `elicitationId`; the 2026
651
+ * in-band shape has none, so URL legs mint one (CSPRNG-backed, with a
652
+ * getRandomValues fallback for runtimes without `randomUUID`).
653
+ */
654
+ function syntheticElicitationId() {
655
+ const webCrypto = globalThis.crypto;
656
+ if (webCrypto?.randomUUID !== void 0) return webCrypto.randomUUID();
657
+ const bytes = new Uint8Array(16);
658
+ webCrypto.getRandomValues(bytes);
659
+ bytes[6] = bytes[6] & 15 | 64;
660
+ bytes[8] = bytes[8] & 63 | 128;
661
+ const hex = [...bytes].map((byte) => byte.toString(16).padStart(2, "0")).join("");
662
+ return `${hex.slice(0, 8)}-${hex.slice(8, 12)}-${hex.slice(12, 16)}-${hex.slice(16, 20)}-${hex.slice(20)}`;
663
+ }
664
+ /** Per-family surfacing: tools/call → isError result (the 2025 idiom); prompts/resources → JSON-RPC error. */
665
+ function legacyShimFailure(method, message) {
666
+ if (method === "tools/call") return {
667
+ content: [{
668
+ type: "text",
669
+ text: message
670
+ }],
671
+ isError: true
672
+ };
673
+ throw new ProtocolError(ProtocolErrorCode.InternalError, message);
674
+ }
675
+ /** The fulfilment loop — see the module doc for the contract. */
676
+ var LegacyInputRequiredShim = class {
677
+ constructor(_host) {
678
+ this._host = _host;
679
+ }
680
+ async fulfill(method, handler, request, ctx, firstResult) {
681
+ const { maxRounds, roundTimeoutMs } = this._host;
682
+ const outerSignal = ctx.mcpReq.signal;
683
+ let current = firstResult;
684
+ let round = 0;
685
+ while (true) {
686
+ round += 1;
687
+ if (round > maxRounds) return legacyShimFailure(method, inputRequiredRoundsExceededMessage(method, maxRounds));
688
+ const inputRequests = current.inputRequests;
689
+ const hasInputRequests = inputRequests != null && Object.keys(inputRequests).length > 0;
690
+ const requestState = typeof current.requestState === "string" ? current.requestState : void 0;
691
+ if (!hasInputRequests && requestState === void 0) throw new ProtocolError(ProtocolErrorCode.InternalError, `Handler for ${method} returned an input-required result with neither inputRequests nor requestState (every InputRequiredResult must include at least one of the two)`);
692
+ let responses;
693
+ if (hasInputRequests) {
694
+ const declared = this._host.resolvedClientCapabilities(ctx);
695
+ const coerced = [];
696
+ for (const [key, entry] of Object.entries(inputRequests)) {
697
+ const { embedded, required } = coerceEmbeddedInputRequest(method, key, entry);
698
+ if (embedded.method !== "roots/list" && embedded.params === void 0) throw new ProtocolError(ProtocolErrorCode.InternalError, `Handler for ${method} returned an input request '${key}' of kind '${embedded.method}' without params`);
699
+ if (missingClientCapabilities(required, declared) !== void 0) return legacyShimFailure(method, `Cannot request input '${key}' (${embedded.method}): the client on this 2025-era connection did not declare the required capability${declared === void 0 ? " (no client capabilities are available on this connection — per-request legacy serving cannot receive server-to-client requests)" : ""}`);
700
+ coerced.push([key, embedded]);
701
+ }
702
+ const roundAbort = linkedRoundAbort(outerSignal);
703
+ try {
704
+ const legOptions = {
705
+ relatedRequestId: ctx.mcpReq.id,
706
+ timeout: roundTimeoutMs,
707
+ resetTimeoutOnProgress: true,
708
+ onprogress: () => {},
709
+ signal: roundAbort.signal
710
+ };
711
+ const fulfilled = await Promise.all(coerced.map(async ([key, embedded]) => {
712
+ try {
713
+ return [key, await this._dispatchLeg(embedded, legOptions)];
714
+ } catch (error) {
715
+ roundAbort.abort(error);
716
+ throw error;
717
+ }
718
+ }));
719
+ responses = Object.fromEntries(fulfilled);
720
+ } catch (error) {
721
+ if (outerSignal.aborted) throw error;
722
+ return legacyShimFailure(method, `Fulfilling input required by '${method}' failed: ${error instanceof Error ? error.message : String(error)}`);
723
+ } finally {
724
+ roundAbort.dispose();
725
+ }
726
+ } else await sleep(REQUEST_STATE_ONLY_LEG_PACING_MS, outerSignal);
727
+ let ctxNext = {
728
+ ...ctx,
729
+ mcpReq: {
730
+ ...ctx.mcpReq,
731
+ inputResponses: responses,
732
+ droppedInputResponseKeys: void 0,
733
+ requestState: requestStateAccessor(requestState)
734
+ }
735
+ };
736
+ if (requestState !== void 0) {
737
+ const decoded = await this._host.verifyRequestState(requestState, ctxNext, method);
738
+ if (decoded !== void 0) ctxNext = withRequestStateValue(ctxNext, decoded);
739
+ }
740
+ const next = await handler(request, ctxNext);
741
+ if (!isInputRequiredResult(next)) return next;
742
+ current = next;
743
+ }
744
+ }
745
+ /** Routes one embedded request through the host's existing 2025-era senders (gate already ran). */
746
+ async _dispatchLeg(embedded, options) {
747
+ switch (embedded.method) {
748
+ case "elicitation/create": {
749
+ let params = embedded.params;
750
+ if (params.mode === "url" && params.elicitationId === void 0) params = {
751
+ ...params,
752
+ elicitationId: syntheticElicitationId()
753
+ };
754
+ return await this._host.sendElicitation(params, options);
755
+ }
756
+ case "sampling/createMessage": return await this._host.sendSampling(embedded.params, options);
757
+ case "roots/list": return await this._host.listRoots(embedded.params, options);
758
+ }
759
+ }
760
+ };
761
+
762
+ //#endregion
763
+ //#region src/server/server.ts
764
+ /**
765
+ * The request methods whose 2026-07-28 result vocabulary includes
766
+ * `input_required` (the multi round-trip methods). Returning an
767
+ * input-required result from any other handler is a server bug.
768
+ */
769
+ const INPUT_REQUIRED_CAPABLE_METHODS = new Set([
770
+ "tools/call",
771
+ "prompts/get",
772
+ "resources/read"
773
+ ]);
774
+ let writeClientIdentity;
775
+ let installDiscoverHandler;
776
+ let readServerIdentity;
777
+ /**
778
+ * Package-internal: backfills the connection-scoped client-identity fields of a
779
+ * per-request server instance from the request's validated `_meta` envelope, so the
780
+ * (deprecated) {@linkcode Server.getClientCapabilities} / {@linkcode Server.getClientVersion}
781
+ * accessors keep answering on instances that never see an `initialize` handshake.
782
+ * Not public API.
783
+ */
784
+ function seedClientIdentityFromEnvelope(server, identity) {
785
+ writeClientIdentity(server, identity);
786
+ }
787
+ /**
788
+ * Package-internal: installs the modern-only `server/discover` handler on an instance
789
+ * the HTTP entry has marked as serving the 2026-07-28 era, and makes sure the modern
790
+ * revisions the entry serves appear in the instance's supported-versions list (so the
791
+ * discover advertisement and version-mismatch errors name them). Idempotent.
792
+ * Hand-constructed instances are unaffected: nothing else calls this, so they keep
793
+ * answering `-32601` unless their own supported-versions list opts into a modern
794
+ * revision. Not public API.
795
+ */
796
+ function installModernOnlyHandlers(server, servedModernVersions) {
797
+ installDiscoverHandler(server, servedModernVersions);
798
+ }
799
+ /**
800
+ * Package-internal: the instance's implementation identity, for the serving
801
+ * entries to stamp onto entry-built results (the `subscriptions/listen`
802
+ * graceful-close result — built outside the encode seam, but the spec's
803
+ * `SubscriptionsListenResultMetaObject` extends `ResultMetaObject`, so it carries
804
+ * the serverInfo SHOULD like every other result). Not public API.
805
+ */
806
+ function serverIdentityOf(server) {
807
+ return readServerIdentity(server);
808
+ }
809
+ /**
810
+ * An MCP server on top of a pluggable transport.
811
+ *
812
+ * This server will automatically respond to the initialization flow as initiated from the client.
813
+ *
814
+ * @deprecated Use {@linkcode server/mcp.McpServer | McpServer} instead for the high-level API. Only use `Server` for advanced use cases.
815
+ */
816
+ var Server = class extends Protocol {
817
+ _clientCapabilities;
818
+ _clientVersion;
819
+ static {
820
+ writeClientIdentity = (server, identity) => {
821
+ if (identity.clientCapabilities !== void 0) server._clientCapabilities = identity.clientCapabilities;
822
+ if (identity.clientInfo !== void 0) server._clientVersion = identity.clientInfo;
823
+ };
824
+ installDiscoverHandler = (server, servedModernVersions) => {
825
+ const missing = servedModernVersions.filter((version) => !server._supportedProtocolVersions.includes(version));
826
+ if (missing.length > 0) server._supportedProtocolVersions = [...server._supportedProtocolVersions, ...missing];
827
+ server.setRequestHandler("server/discover", () => server._ondiscover());
828
+ };
829
+ readServerIdentity = (server) => server._serverInfo;
830
+ }
831
+ _capabilities;
832
+ _instructions;
833
+ _jsonSchemaValidator;
834
+ _cacheHints;
835
+ _requestStateVerify;
836
+ _inputRequiredServing;
837
+ _legacyShim;
838
+ _boundFromTransport = false;
839
+ /** Lazily-built legacy shim; the loop lives in legacyInputRequiredShim.ts behind a narrow host contract. */
840
+ _legacyInputRequiredShim() {
841
+ return this._legacyShim ??= new LegacyInputRequiredShim({
842
+ maxRounds: this._inputRequiredServing.maxRounds,
843
+ roundTimeoutMs: this._inputRequiredServing.roundTimeoutMs,
844
+ resolvedClientCapabilities: (ctx) => this._inputRequestCapabilityView(ctx),
845
+ verifyRequestState: (state, ctx, method) => this._verifyRequestState(state, ctx, method),
846
+ sendElicitation: (params, options) => this._sendElicitationLeg(params, options, { validateAcceptedContent: false }),
847
+ sendSampling: (params, options) => this.createMessage(params, options),
848
+ listRoots: (params, options) => this.listRoots(params, options)
849
+ });
850
+ }
851
+ /**
852
+ * Callback for when initialization has fully completed (i.e., the client has sent an `notifications/initialized` notification).
853
+ */
854
+ oninitialized;
855
+ /**
856
+ * Initializes this server with the given name and version information.
857
+ */
858
+ constructor(_serverInfo, options) {
859
+ super(options);
860
+ this._serverInfo = _serverInfo;
861
+ this._capabilities = options?.capabilities ? { ...options.capabilities } : {};
862
+ this._instructions = options?.instructions;
863
+ this._jsonSchemaValidator = options?.jsonSchemaValidator ?? new DefaultJsonSchemaValidator();
864
+ this._requestStateVerify = options?.requestState?.verify;
865
+ this._inputRequiredServing = resolveLegacyShimOptions(options?.inputRequired);
866
+ if (options?.cacheHints !== void 0) {
867
+ for (const [operation, hint] of Object.entries(options.cacheHints)) if (hint !== void 0) assertValidCacheHint(hint, `cacheHints['${operation}']`);
868
+ this._cacheHints = options.cacheHints;
869
+ }
870
+ this.setRequestHandler("initialize", (request) => this._oninitialize(request));
871
+ this.setNotificationHandler("notifications/initialized", () => this.oninitialized?.());
872
+ if (modernProtocolVersions(this._supportedProtocolVersions).length > 0) this.setRequestHandler("server/discover", () => this._ondiscover());
873
+ if (this._capabilities.logging) this._registerLoggingHandler();
874
+ }
875
+ /** Attaches to the given transport; rejects while this instance is connected to another one. */
876
+ async connect(transport) {
877
+ if (this.transport !== void 0) throw new SdkError(SdkErrorCode.AlreadyConnected, "Use a separate Server instance per connection: this instance is already connected to a transport. To connect it to a new transport, call close() first.");
878
+ if (this._boundFromTransport) {
879
+ this._boundFromTransport = false;
880
+ this._negotiatedProtocolVersion = void 0;
881
+ }
882
+ const revision = perRequestClassificationOf(transport)?.revision;
883
+ if (revision !== void 0 && !this._servedModernEra() && SUPPORTED_MODERN_PROTOCOL_VERSIONS.includes(revision) && modernProtocolVersions(this._supportedProtocolVersions).includes(revision)) {
884
+ this._negotiatedProtocolVersion = revision;
885
+ this._boundFromTransport = true;
886
+ }
887
+ await super.connect(transport);
888
+ }
889
+ /**
890
+ * Registers the built-in `logging/setLevel` request handler.
891
+ *
892
+ * @deprecated Deprecated as of protocol version 2026-07-28 (SEP-2577).
893
+ * Remains functional during the deprecation window (at least twelve months).
894
+ * Migrate to stderr logging (STDIO servers) or OpenTelemetry.
895
+ */
896
+ _registerLoggingHandler() {
897
+ this.setRequestHandler("logging/setLevel", async (request, ctx) => {
898
+ const transportSessionId = ctx.sessionId || ctx.http?.req?.headers.get("mcp-session-id") || void 0;
899
+ const { level } = request.params;
900
+ const parseResult = parseSchema(LoggingLevelSchema, level);
901
+ if (parseResult.success) this._loggingLevels.set(transportSessionId, parseResult.data);
902
+ return {};
903
+ });
904
+ }
905
+ buildContext(ctx, transportInfo) {
906
+ const hasHttpInfo = ctx.http || transportInfo?.request || transportInfo?.closeSSEStream || transportInfo?.closeStandaloneSSEStream;
907
+ return {
908
+ ...ctx,
909
+ mcpReq: {
910
+ ...ctx.mcpReq,
911
+ log: (level, data, logger) => {
912
+ if (!this._capabilities.logging) return Promise.resolve();
913
+ let threshold;
914
+ if (this._servedModernEra()) {
915
+ threshold = ctx.mcpReq.envelope?.[LOG_LEVEL_META_KEY];
916
+ if (threshold === void 0) return Promise.resolve();
917
+ } else threshold = this._loggingLevels.get(ctx.sessionId) ?? this._loggingLevels.get(void 0);
918
+ if (threshold !== void 0 && this.LOG_LEVEL_SEVERITY.get(level) < this.LOG_LEVEL_SEVERITY.get(threshold)) return Promise.resolve();
919
+ return ctx.mcpReq.notify({
920
+ method: "notifications/message",
921
+ params: {
922
+ level,
923
+ data,
924
+ logger
925
+ }
926
+ });
927
+ },
928
+ elicitInput: (params, options) => this.elicitInput(params, options),
929
+ requestSampling: (params, options) => this.createMessage(params, options)
930
+ },
931
+ http: hasHttpInfo ? {
932
+ ...ctx.http,
933
+ req: transportInfo?.request,
934
+ closeSSE: transportInfo?.closeSSEStream,
935
+ closeStandaloneSSE: transportInfo?.closeStandaloneSSEStream
936
+ } : void 0
937
+ };
938
+ }
939
+ _loggingLevels = /* @__PURE__ */ new Map();
940
+ LOG_LEVEL_SEVERITY = new Map(LoggingLevelSchema.options.map((level, index) => [level, index]));
941
+ isMessageIgnored = (level, sessionId) => {
942
+ const currentLevel = this._loggingLevels.get(sessionId);
943
+ return currentLevel ? this.LOG_LEVEL_SEVERITY.get(level) < this.LOG_LEVEL_SEVERITY.get(currentLevel) : false;
944
+ };
945
+ /**
946
+ * Registers new capabilities. This can only be called before connecting to a transport.
947
+ *
948
+ * The new capabilities will be merged with any existing capabilities previously given (e.g., at initialization).
949
+ */
950
+ registerCapabilities(capabilities) {
951
+ if (this.transport) throw new SdkError(SdkErrorCode.AlreadyConnected, "Cannot register capabilities after connecting to transport");
952
+ const hadLogging = !!this._capabilities.logging;
953
+ this._capabilities = mergeCapabilities(this._capabilities, capabilities);
954
+ if (!hadLogging && this._capabilities.logging) this._registerLoggingHandler();
955
+ }
956
+ /**
957
+ * Enforces server-side validation for `tools/call` results regardless of how the
958
+ * handler was registered, attaches the configured per-operation cache hint
959
+ * (when one exists) so the 2026-07-28 encode seam can fill `ttlMs`/`cacheScope`
960
+ * for results that do not provide their own, and owns the multi-round-trip
961
+ * seam: on the methods whose 2026-07-28 result vocabulary includes
962
+ * `input_required` (`tools/call`, `prompts/get`, `resources/read`) an
963
+ * input-required return skips result-schema validation and is checked
964
+ * against the served era, the at-least-one rule, and the request's own
965
+ * declared client capabilities; on every other method an input-required
966
+ * return is a server bug and fails loudly. The hint rides a symbol-keyed
967
+ * property that is never serialized, so 2025-era responses are unaffected.
968
+ */
969
+ _wrapHandler(method, handler) {
970
+ if (method !== "tools/call") {
971
+ const cacheHint = this._cacheHints?.[method];
972
+ const isInputRequiredCapable = INPUT_REQUIRED_CAPABLE_METHODS.has(method);
973
+ if (cacheHint === void 0 && !isInputRequiredCapable) return async (request, ctx) => {
974
+ const result = await handler(request, ctx);
975
+ if (isInputRequiredResult(result)) throw new ProtocolError(ProtocolErrorCode.InternalError, `Handler for ${method} returned an input-required result, but only tools/call, prompts/get and resources/read support input_required (protocol revision 2026-07-28)`);
976
+ return result;
977
+ };
978
+ return async (request, ctx) => {
979
+ const result = isInputRequiredCapable ? await this._invokeInputRequiredCapableHandler(method, handler, request, ctx) : await handler(request, ctx);
980
+ if (isInputRequiredResult(result)) {
981
+ if (!isInputRequiredCapable) throw new ProtocolError(ProtocolErrorCode.InternalError, `Handler for ${method} returned an input-required result, but only tools/call, prompts/get and resources/read support input_required (protocol revision 2026-07-28)`);
982
+ return result;
983
+ }
984
+ return cacheHint === void 0 ? result : attachCacheHintFallback(result, cacheHint);
985
+ };
986
+ }
987
+ return async (request, ctx) => {
988
+ const codec = codecForVersion(this._negotiatedProtocolVersion);
989
+ const validatedRequest = codec.validateRequest("tools/call", request);
990
+ if (!validatedRequest.ok) throw new ProtocolError(validatedRequest.reason === "not-in-era" ? ProtocolErrorCode.InternalError : ProtocolErrorCode.InvalidParams, validatedRequest.reason === "not-in-era" ? "No wire schema for tools/call in the resolved era" : `Invalid tools/call request: ${validatedRequest.message}`);
991
+ const result = await this._invokeInputRequiredCapableHandler("tools/call", handler, request, ctx);
992
+ if (isInputRequiredResult(result)) return result;
993
+ const normalizedResult = normalizeContentlessToolResult(result);
994
+ const validationResult = codec.validateResult("tools/call", normalizedResult);
995
+ if (!validationResult.ok) throw new ProtocolError(validationResult.reason === "not-in-era" ? ProtocolErrorCode.InternalError : ProtocolErrorCode.InvalidParams, validationResult.reason === "not-in-era" ? "No wire schema for tools/call in the resolved era" : `Invalid tools/call result: ${validationResult.message}`);
996
+ return validationResult.value;
997
+ };
998
+ }
999
+ /**
1000
+ * Whether this instance is bound to a 2026-07-28-or-later protocol
1001
+ * revision. Era is instance state — a serving entry (`createMcpHandler`,
1002
+ * `serveStdio`) marks the instance modern at construction; a 2025-era
1003
+ * `initialize` handshake binds it legacy. The multi-round-trip seam reads
1004
+ * this directly: there is no per-request era consult.
1005
+ */
1006
+ _servedModernEra() {
1007
+ return this._negotiatedProtocolVersion !== void 0 && isModernProtocolVersion(this._negotiatedProtocolVersion);
1008
+ }
1009
+ /**
1010
+ * Invokes a handler for one of the multi-round-trip methods and applies
1011
+ * the input-required seam:
1012
+ *
1013
+ * - a `UrlElicitationRequiredError` (or any 2025-style server→client
1014
+ * request idiom) escaping the handler on a request served on the
1015
+ * 2026-07-28 era fails LOUDLY with a clear steer to
1016
+ * `inputRequired.elicitUrl(...)` — the `-32042` error never reaches the
1017
+ * 2026-07-28 wire and the throw is not silently converted. Requests
1018
+ * served on the 2025 era keep today's `-32042` behavior byte-exact (the
1019
+ * error is rethrown unchanged).
1020
+ * - an input-required RETURN toward a 2026-07-28 request must satisfy
1021
+ * the at-least-one rule, and every embedded request must be covered by
1022
+ * the capabilities declared on the request's envelope (violations
1023
+ * answer the typed `-32021` error). Toward a 2025-era request the
1024
+ * return is fulfilled by the default-on legacy shim, whose own gate
1025
+ * consults the initialize-declared capabilities and surfaces
1026
+ * violations per family; `inputRequired.legacyShim: false` restores
1027
+ * the pre-shim loud failure.
1028
+ */
1029
+ async _invokeInputRequiredCapableHandler(method, handler, request, ctx) {
1030
+ const servedModern = this._servedModernEra();
1031
+ const rawRequestState = ctx.mcpReq.requestState();
1032
+ if (rawRequestState !== void 0 && typeof rawRequestState !== "string") throw new ProtocolError(ProtocolErrorCode.InvalidParams, "Invalid or expired requestState", { reason: "invalid_request_state" });
1033
+ let ctxForHandler = ctx;
1034
+ if (typeof rawRequestState === "string") {
1035
+ const decoded = await this._verifyRequestState(rawRequestState, ctx, method);
1036
+ if (decoded !== void 0) ctxForHandler = withRequestStateValue(ctx, decoded);
1037
+ }
1038
+ let result;
1039
+ try {
1040
+ result = await handler(request, ctxForHandler);
1041
+ } catch (error) {
1042
+ if (error instanceof ProtocolError && error.code === ProtocolErrorCode.UrlElicitationRequired) {
1043
+ if (!servedModern) throw error;
1044
+ throw new ProtocolError(ProtocolErrorCode.InternalError, `URL elicitation cannot be signalled by throwing UrlElicitationRequiredError on protocol revision ${this._negotiatedProtocolVersion}: return inputRequired({ inputRequests: { …: inputRequired.elicitUrl(...) } }) from the handler instead. The urlElicitationRequired error (-32042) of earlier revisions is not available on this revision.`);
1045
+ }
1046
+ throw error;
1047
+ }
1048
+ if (!isInputRequiredResult(result)) return result;
1049
+ if (!servedModern) {
1050
+ if (!this._inputRequiredServing.legacyShim) throw new ProtocolError(ProtocolErrorCode.InternalError, `Handler for ${method} returned an input-required result, but this request is served on protocol revision ${this._negotiatedProtocolVersion ?? LATEST_PROTOCOL_VERSION}, which has no input_required vocabulary`);
1051
+ return await this._legacyInputRequiredShim().fulfill(method, handler, request, ctxForHandler, result);
1052
+ }
1053
+ const inputRequests = result.inputRequests;
1054
+ const hasInputRequests = inputRequests != null && Object.keys(inputRequests).length > 0;
1055
+ const hasRequestState = typeof result.requestState === "string";
1056
+ if (!hasInputRequests && !hasRequestState) throw new ProtocolError(ProtocolErrorCode.InternalError, `Handler for ${method} returned an input-required result with neither inputRequests nor requestState (every InputRequiredResult must include at least one of the two)`);
1057
+ if (hasInputRequests) {
1058
+ const declared = this._inputRequestCapabilityView(ctx);
1059
+ for (const [key, entry] of Object.entries(inputRequests)) {
1060
+ const { embedded, required } = coerceEmbeddedInputRequest(method, key, entry);
1061
+ const missing = missingClientCapabilities(required, declared);
1062
+ if (missing !== void 0) throw new MissingRequiredClientCapabilityError({ requiredCapabilities: missing }, `Cannot request input '${key}' (${embedded.method}): the request's client capabilities do not declare the required capability`);
1063
+ }
1064
+ }
1065
+ return result;
1066
+ }
1067
+ /**
1068
+ * Runs the configured `requestState.verify` hook and returns its
1069
+ * resolved value (`undefined` when unconfigured or the hook returns
1070
+ * nothing). Deny-on-error: any hook failure answers the frozen `-32602`;
1071
+ * the reason goes to `onerror` only.
1072
+ */
1073
+ async _verifyRequestState(state, ctx, method) {
1074
+ if (this._requestStateVerify === void 0) return;
1075
+ try {
1076
+ return await this._requestStateVerify(state, ctx);
1077
+ } catch (error) {
1078
+ this.onerror?.(/* @__PURE__ */ new Error(`requestState verification rejected ${method}: ${error instanceof Error ? error.message : String(error)}`));
1079
+ throw new ProtocolError(ProtocolErrorCode.InvalidParams, "Invalid or expired requestState", { reason: "invalid_request_state" });
1080
+ }
1081
+ }
1082
+ /**
1083
+ * The per-request resolved client-capabilities view: the request's own
1084
+ * `_meta` envelope on the 2026 era; the `initialize`-declared state on a
1085
+ * 2025-era connection. Per-request instances that never saw an
1086
+ * initialize (stateless legacy) hold nothing, so gates refuse there.
1087
+ */
1088
+ _inputRequestCapabilityView(ctx) {
1089
+ return this._servedModernEra() ? ctx.mcpReq.envelope?.[CLIENT_CAPABILITIES_META_KEY] : this._clientCapabilities;
1090
+ }
1091
+ /**
1092
+ * Guard for the push-style server→client request APIs ({@linkcode createMessage},
1093
+ * {@linkcode elicitInput}, {@linkcode listRoots}, {@linkcode ping}) on a
1094
+ * modern-era instance: the 2026-07-28 revision has no server→client request
1095
+ * channel, so the call fails before any wire traffic with a typed error
1096
+ * whose message steers to `inputRequired(...)`. The base era gate would
1097
+ * also reject it; this guard runs first to carry the steer.
1098
+ */
1099
+ _assertPushApiInServedEra(method) {
1100
+ if (this._servedModernEra()) throw new SdkError(SdkErrorCode.MethodNotSupportedByProtocolVersion, `Server-to-client requests are not available on protocol revision ${this._negotiatedProtocolVersion}: '${method}' cannot be sent while serving a request on that revision. Return inputRequired({ ... }) from the handler instead — the client fulfils the embedded requests and retries the original request (multi round-trip requests).`, {
1101
+ method,
1102
+ era: "2026-07-28"
1103
+ });
1104
+ }
1105
+ assertCapabilityForMethod(method) {
1106
+ switch (method) {
1107
+ case "sampling/createMessage":
1108
+ if (!this._clientCapabilities?.sampling) throw new SdkError(SdkErrorCode.CapabilityNotSupported, `Client does not support sampling (required for ${method})`);
1109
+ break;
1110
+ case "elicitation/create":
1111
+ if (!this._clientCapabilities?.elicitation) throw new SdkError(SdkErrorCode.CapabilityNotSupported, `Client does not support elicitation (required for ${method})`);
1112
+ break;
1113
+ case "roots/list":
1114
+ if (!this._clientCapabilities?.roots) throw new SdkError(SdkErrorCode.CapabilityNotSupported, `Client does not support listing roots (required for ${method})`);
1115
+ break;
1116
+ case "ping": break;
1117
+ }
1118
+ }
1119
+ assertNotificationCapability(method) {
1120
+ switch (method) {
1121
+ case "notifications/message":
1122
+ if (!this._capabilities.logging) throw new SdkError(SdkErrorCode.CapabilityNotSupported, `Server does not support logging (required for ${method})`);
1123
+ break;
1124
+ case "notifications/resources/updated":
1125
+ case "notifications/resources/list_changed":
1126
+ if (!this._capabilities.resources) throw new SdkError(SdkErrorCode.CapabilityNotSupported, `Server does not support notifying about resources (required for ${method})`);
1127
+ break;
1128
+ case "notifications/tools/list_changed":
1129
+ if (!this._capabilities.tools) throw new SdkError(SdkErrorCode.CapabilityNotSupported, `Server does not support notifying of tool list changes (required for ${method})`);
1130
+ break;
1131
+ case "notifications/prompts/list_changed":
1132
+ if (!this._capabilities.prompts) throw new SdkError(SdkErrorCode.CapabilityNotSupported, `Server does not support notifying of prompt list changes (required for ${method})`);
1133
+ break;
1134
+ case "notifications/elicitation/complete":
1135
+ if (!this._clientCapabilities?.elicitation?.url) throw new SdkError(SdkErrorCode.CapabilityNotSupported, `Client does not support URL elicitation (required for ${method})`);
1136
+ break;
1137
+ case "notifications/cancelled": break;
1138
+ case "notifications/progress": break;
1139
+ }
1140
+ }
1141
+ assertRequestHandlerCapability(method) {
1142
+ switch (method) {
1143
+ case "completion/complete":
1144
+ if (!this._capabilities.completions) throw new SdkError(SdkErrorCode.CapabilityNotSupported, `Server does not support completions (required for ${method})`);
1145
+ break;
1146
+ case "logging/setLevel":
1147
+ if (!this._capabilities.logging) throw new SdkError(SdkErrorCode.CapabilityNotSupported, `Server does not support logging (required for ${method})`);
1148
+ break;
1149
+ case "prompts/get":
1150
+ case "prompts/list":
1151
+ if (!this._capabilities.prompts) throw new SdkError(SdkErrorCode.CapabilityNotSupported, `Server does not support prompts (required for ${method})`);
1152
+ break;
1153
+ case "resources/list":
1154
+ case "resources/templates/list":
1155
+ case "resources/read":
1156
+ if (!this._capabilities.resources) throw new SdkError(SdkErrorCode.CapabilityNotSupported, `Server does not support resources (required for ${method})`);
1157
+ break;
1158
+ case "tools/call":
1159
+ case "tools/list":
1160
+ if (!this._capabilities.tools) throw new SdkError(SdkErrorCode.CapabilityNotSupported, `Server does not support tools (required for ${method})`);
1161
+ break;
1162
+ case "ping":
1163
+ case "initialize": break;
1164
+ }
1165
+ }
1166
+ async _oninitialize(request) {
1167
+ const requestedVersion = request.params.protocolVersion;
1168
+ this._clientCapabilities = request.params.capabilities;
1169
+ this._clientVersion = request.params.clientInfo;
1170
+ const legacyVersions = legacyProtocolVersions(this._supportedProtocolVersions);
1171
+ const protocolVersion = legacyVersions.includes(requestedVersion) ? requestedVersion : legacyVersions[0] ?? LATEST_PROTOCOL_VERSION;
1172
+ this._negotiatedProtocolVersion = protocolVersion;
1173
+ this.transport?.setProtocolVersion?.(protocolVersion);
1174
+ return {
1175
+ protocolVersion,
1176
+ capabilities: this.getCapabilities(),
1177
+ serverInfo: this._serverInfo,
1178
+ ...this._instructions && { instructions: this._instructions }
1179
+ };
1180
+ }
1181
+ /**
1182
+ * Answers `server/discover` (protocol revision 2026-07-28). `supportedVersions`
1183
+ * lists only modern revisions (2025-era versions are negotiated via `initialize`);
1184
+ * the capabilities are advertised as-is, listChanged/subscribe bits included
1185
+ * (see {@linkcode discoverAdvertisedCapabilities}).
1186
+ */
1187
+ _ondiscover() {
1188
+ return {
1189
+ supportedVersions: modernProtocolVersions(this._supportedProtocolVersions),
1190
+ capabilities: discoverAdvertisedCapabilities(this.getCapabilities()),
1191
+ ...this._instructions && { instructions: this._instructions }
1192
+ };
1193
+ }
1194
+ /**
1195
+ * The identity the 2026-era encode seam stamps into every outbound
1196
+ * result's `_meta` under `io.modelcontextprotocol/serverInfo` (spec PR
1197
+ * #3002: servers SHOULD identify themselves on every response).
1198
+ */
1199
+ _outboundServerInfo() {
1200
+ return this._serverInfo;
1201
+ }
1202
+ /**
1203
+ * After initialization has completed, this will be populated with the client's reported capabilities.
1204
+ *
1205
+ * @deprecated Read client identity from the per-request handler context instead: on
1206
+ * 2026-07-28 (per-request envelope) requests `ctx.mcpReq.envelope` carries the client's
1207
+ * declared capabilities, while on 2025-era connections this accessor keeps returning the
1208
+ * `initialize`-scoped value. The accessor remains functional where `createMcpHandler`
1209
+ * serves the 2026-07-28 era: it backfills it per request from the validated envelope.
1210
+ */
1211
+ getClientCapabilities() {
1212
+ return this._clientCapabilities;
1213
+ }
1214
+ /**
1215
+ * After initialization has completed, this will be populated with information about the client's name and version.
1216
+ *
1217
+ * @deprecated Read client identity from the per-request handler context instead: on
1218
+ * 2026-07-28 (per-request envelope) requests `ctx.mcpReq.envelope` carries the client's
1219
+ * name and version, while on 2025-era connections this accessor keeps returning the
1220
+ * `initialize`-scoped value. The accessor remains functional where `createMcpHandler`
1221
+ * serves the 2026-07-28 era: it backfills it per request from the validated envelope.
1222
+ */
1223
+ getClientVersion() {
1224
+ return this._clientVersion;
1225
+ }
1226
+ /**
1227
+ * After initialization has completed, this will be populated with the protocol version negotiated
1228
+ * with the client (the version the server responded with during the initialize handshake), or
1229
+ * `undefined` before initialization.
1230
+ *
1231
+ * @deprecated Read the protocol revision from the per-request handler context instead: on
1232
+ * 2026-07-28 (per-request envelope) requests `ctx.mcpReq.envelope` names the revision the
1233
+ * request was sent for, while on 2025-era connections this accessor keeps returning the
1234
+ * `initialize`-negotiated version. The accessor remains functional — instances serving the
1235
+ * 2026-07-28 era report that revision.
1236
+ */
1237
+ getNegotiatedProtocolVersion() {
1238
+ return this._negotiatedProtocolVersion;
1239
+ }
1240
+ /**
1241
+ * Project a `tools/call` result through this instance's negotiated wire
1242
+ * codec — the era-agnostic SEP-2106 §4.3 TextContent auto-append, plus on
1243
+ * the 2025 era the `{result:…}` wrap when `structuredContent` is a
1244
+ * non-object value or the advertised `outputSchema` had a non-object root.
1245
+ * Identity for object-shaped `structuredContent` on the 2026 era.
1246
+ *
1247
+ * `McpServer`'s built-in `tools/call` handler routes through this method.
1248
+ * Low-level `setRequestHandler('tools/call', …)` authors call it
1249
+ * themselves so the projection lives in one place (the codec) and the
1250
+ * server-side handler stays era-blind.
1251
+ *
1252
+ * This is the only codec function exposed on `Server` — the full
1253
+ * `WireCodec` is intentionally not part of the public surface.
1254
+ */
1255
+ projectCallToolResult(result, advertisedOutputSchema) {
1256
+ return this._wireCodec().projectCallToolResult(result, advertisedOutputSchema);
1257
+ }
1258
+ /**
1259
+ * Returns the current server capabilities.
1260
+ */
1261
+ getCapabilities() {
1262
+ return this._capabilities;
1263
+ }
1264
+ /**
1265
+ * Sends a `ping` request to the connected client.
1266
+ *
1267
+ * @deprecated The 2026-07-28 protocol removed ping; it throws on a 2026-07-28-era instance.
1268
+ * If your factory serves both eras, this only works on the legacy path.
1269
+ */
1270
+ async ping() {
1271
+ this._assertPushApiInServedEra("ping");
1272
+ return this.request({ method: "ping" });
1273
+ }
1274
+ async createMessage(params, options) {
1275
+ this._assertPushApiInServedEra("sampling/createMessage");
1276
+ if ((params.tools || params.toolChoice) && !this._clientCapabilities?.sampling?.tools) throw new SdkError(SdkErrorCode.CapabilityNotSupported, "Client does not support sampling tools capability.");
1277
+ if (params.messages.length > 0) {
1278
+ const lastMessage = params.messages.at(-1);
1279
+ const lastContent = Array.isArray(lastMessage.content) ? lastMessage.content : [lastMessage.content];
1280
+ const hasToolResults = lastContent.some((c) => c.type === "tool_result");
1281
+ const previousMessage = params.messages.length > 1 ? params.messages.at(-2) : void 0;
1282
+ const previousContent = previousMessage ? Array.isArray(previousMessage.content) ? previousMessage.content : [previousMessage.content] : [];
1283
+ const hasPreviousToolUse = previousContent.some((c) => c.type === "tool_use");
1284
+ if (hasToolResults) {
1285
+ if (lastContent.some((c) => c.type !== "tool_result")) throw new ProtocolError(ProtocolErrorCode.InvalidParams, "The last message must contain only tool_result content if any is present");
1286
+ if (!hasPreviousToolUse) throw new ProtocolError(ProtocolErrorCode.InvalidParams, "tool_result blocks are not matching any tool_use from the previous message");
1287
+ }
1288
+ if (hasPreviousToolUse) {
1289
+ const toolUseIds = new Set(previousContent.filter((c) => c.type === "tool_use").map((c) => c.id));
1290
+ const toolResultIds = new Set(lastContent.filter((c) => c.type === "tool_result").map((c) => c.toolUseId));
1291
+ if (toolUseIds.size !== toolResultIds.size || ![...toolUseIds].every((id) => toolResultIds.has(id))) throw new ProtocolError(ProtocolErrorCode.InvalidParams, "ids of tool_result blocks and tool_use blocks from previous message do not match");
1292
+ }
1293
+ }
1294
+ const hasTools = Boolean(params.tools || params.toolChoice);
1295
+ const wide = await this.request({
1296
+ method: "sampling/createMessage",
1297
+ params
1298
+ }, options);
1299
+ const outcome = this._wireCodec().samplingResultVariant(hasTools, wide);
1300
+ if (!outcome.ok) throw new SdkError(SdkErrorCode.InvalidResult, `Invalid sampling/createMessage result: ${outcome.reason === "invalid" ? outcome.message : outcome.reason}`);
1301
+ return outcome.value;
1302
+ }
1303
+ /**
1304
+ * Creates an elicitation request for the given parameters.
1305
+ * For backwards compatibility, `mode` may be omitted for form requests and will default to `"form"`.
1306
+ * @param params The parameters for the elicitation request.
1307
+ * @param options Optional request options.
1308
+ * @returns The result of the elicitation request.
1309
+ *
1310
+ * @deprecated Throws on a 2026-07-28-era request — use {@link index.inputRequired | inputRequired} (multi-round-trip)
1311
+ * instead. The 2025 push-style server-to-client request model is replaced by input_required
1312
+ * results in the 2026-07-28 protocol. If your factory serves both eras, this only works on the
1313
+ * legacy path.
1314
+ */
1315
+ async elicitInput(params, options) {
1316
+ this._assertPushApiInServedEra("elicitation/create");
1317
+ switch (params.mode ?? "form") {
1318
+ case "url":
1319
+ if (!this._clientCapabilities?.elicitation?.url) throw new SdkError(SdkErrorCode.CapabilityNotSupported, "Client does not support url elicitation.");
1320
+ break;
1321
+ case "form":
1322
+ if (!this._clientCapabilities?.elicitation?.form) throw new SdkError(SdkErrorCode.CapabilityNotSupported, "Client does not support form elicitation.");
1323
+ break;
1324
+ }
1325
+ return this._sendElicitationLeg(params, options);
1326
+ }
1327
+ /**
1328
+ * The capability-check-free core of {@linkcode elicitInput}. The shim
1329
+ * uses it because its gate differs from the public checks: a bare
1330
+ * `elicitation: {}` counts as form support (the pre-mode rule), and
1331
+ * accepted content passes through unvalidated for parity with the
1332
+ * modern client driver (handlers validate via the schema-aware
1333
+ * `acceptedContent` overload and can re-ask).
1334
+ */
1335
+ async _sendElicitationLeg(params, options, behavior) {
1336
+ const mode = params.mode ?? "form";
1337
+ const validateAcceptedContent = behavior?.validateAcceptedContent ?? true;
1338
+ switch (mode) {
1339
+ case "url": {
1340
+ const urlParams = params;
1341
+ return this.request({
1342
+ method: "elicitation/create",
1343
+ params: urlParams
1344
+ }, options);
1345
+ }
1346
+ case "form": {
1347
+ const formParams = params.mode === "form" ? params : {
1348
+ ...params,
1349
+ mode: "form"
1350
+ };
1351
+ const result = await this.request({
1352
+ method: "elicitation/create",
1353
+ params: formParams
1354
+ }, options);
1355
+ if (validateAcceptedContent && result.action === "accept" && result.content && formParams.requestedSchema) try {
1356
+ const validationResult = this._jsonSchemaValidator.getValidator(formParams.requestedSchema)(result.content);
1357
+ if (!validationResult.valid) throw new ProtocolError(ProtocolErrorCode.InvalidParams, `Elicitation response content does not match requested schema: ${validationResult.errorMessage}`);
1358
+ } catch (error) {
1359
+ if (error instanceof ProtocolError) throw error;
1360
+ throw new ProtocolError(ProtocolErrorCode.InternalError, `Error validating elicitation response: ${error instanceof Error ? error.message : String(error)}`);
1361
+ }
1362
+ return result;
1363
+ }
1364
+ }
1365
+ }
1366
+ /**
1367
+ * Creates a reusable callback that, when invoked, will send a `notifications/elicitation/complete`
1368
+ * notification for the specified elicitation ID.
1369
+ *
1370
+ * The notification (and the `elicitationId` it references) exists only on protocol revision
1371
+ * 2025-11-25 — the 2026-07-28 revision removed both. On a connection negotiated at 2026-07-28 the
1372
+ * returned callback rejects with a typed local error before anything reaches the transport
1373
+ * (the method is not part of that revision's wire registry).
1374
+ *
1375
+ * @param elicitationId The ID of the elicitation to mark as complete.
1376
+ * @param options Optional notification options. Useful when the completion notification should be related to a prior request.
1377
+ * @returns A function that emits the completion notification when awaited.
1378
+ */
1379
+ createElicitationCompletionNotifier(elicitationId, options) {
1380
+ if (!this._clientCapabilities?.elicitation?.url) throw new SdkError(SdkErrorCode.CapabilityNotSupported, "Client does not support URL elicitation (required for notifications/elicitation/complete)");
1381
+ return () => this.notification({
1382
+ method: "notifications/elicitation/complete",
1383
+ params: { elicitationId }
1384
+ }, options);
1385
+ }
1386
+ /**
1387
+ * Requests the list of roots from the client.
1388
+ *
1389
+ * @deprecated Deprecated as of protocol version 2026-07-28 (SEP-2577).
1390
+ * Throws on a 2026-07-28-era request — use {@link index.inputRequired | inputRequired} (multi-round-trip) instead,
1391
+ * or migrate to passing paths via tool parameters, resource URIs, or configuration. The 2025
1392
+ * push-style server-to-client request model is replaced by input_required results in the
1393
+ * 2026-07-28 protocol. If your factory serves both eras, this only works on the legacy path.
1394
+ */
1395
+ async listRoots(params, options) {
1396
+ this._assertPushApiInServedEra("roots/list");
1397
+ return this.request({
1398
+ method: "roots/list",
1399
+ params
1400
+ }, options);
1401
+ }
1402
+ /**
1403
+ * Sends a logging message to the client, if connected.
1404
+ * Note: You only need to send the parameters object, not the entire JSON-RPC message.
1405
+ * @see {@linkcode LoggingMessageNotification}
1406
+ * @param params
1407
+ * @param sessionId Optional for stateless transports and backward compatibility.
1408
+ *
1409
+ * @deprecated Deprecated as of protocol version 2026-07-28 (SEP-2577).
1410
+ * Remains functional during the deprecation window (at least twelve months).
1411
+ * Migrate to stderr logging (STDIO servers) or OpenTelemetry.
1412
+ */
1413
+ async sendLoggingMessage(params, sessionId) {
1414
+ if (this._capabilities.logging && !this.isMessageIgnored(params.level, sessionId)) return this.notification({
1415
+ method: "notifications/message",
1416
+ params
1417
+ });
1418
+ }
1419
+ async sendResourceUpdated(params) {
1420
+ return this.notification({
1421
+ method: "notifications/resources/updated",
1422
+ params
1423
+ });
1424
+ }
1425
+ async sendResourceListChanged() {
1426
+ return this.notification({ method: "notifications/resources/list_changed" });
1427
+ }
1428
+ async sendToolListChanged() {
1429
+ return this.notification({ method: "notifications/tools/list_changed" });
1430
+ }
1431
+ async sendPromptListChanged() {
1432
+ return this.notification({ method: "notifications/prompts/list_changed" });
1433
+ }
1434
+ };
1435
+ /**
1436
+ * The capability set a server advertises on `server/discover`. Pure — never
1437
+ * mutates the input; the legacy `initialize` advertisement is untouched.
1438
+ *
1439
+ * The serving entries serve `subscriptions/listen` themselves, so the
1440
+ * `listChanged` and `resources.subscribe` capability bits are advertised
1441
+ * as-is: a modern-era client uses them to decide which notification types to
1442
+ * request on its listen filter.
1443
+ */
1444
+ function discoverAdvertisedCapabilities(capabilities) {
1445
+ return { ...capabilities };
1446
+ }
1447
+
1448
+ //#endregion
1449
+ //#region src/server/mcp.ts
1450
+ function toolInputElementCount(value, max) {
1451
+ let count = 0;
1452
+ const stack = [value];
1453
+ while (stack.length > 0) {
1454
+ const node = stack.pop();
1455
+ if (node === null || typeof node !== "object") continue;
1456
+ if (Array.isArray(node)) for (const child of node) {
1457
+ if (++count > max) return count;
1458
+ if (child !== null && typeof child === "object") stack.push(child);
1459
+ }
1460
+ else for (const key in node) {
1461
+ if (!Object.prototype.hasOwnProperty.call(node, key)) continue;
1462
+ if (++count > max) return count;
1463
+ const child = node[key];
1464
+ if (child !== null && typeof child === "object") stack.push(child);
1465
+ }
1466
+ }
1467
+ return count;
1468
+ }
1469
+ function resolveMaxToolInputElements(value) {
1470
+ if (value === void 0 || value === Infinity) return void 0;
1471
+ if (typeof value !== "number" || Number.isNaN(value) || value < 1) throw new RangeError(`maxToolInputElements must be a number of at least 1, or Infinity, got ${String(value)}`);
1472
+ return value;
1473
+ }
1474
+ /**
1475
+ * High-level MCP server that provides a simpler API for working with resources, tools, and prompts.
1476
+ * For advanced usage (like sending notifications or setting custom request handlers), use the underlying
1477
+ * {@linkcode Server} instance available via the {@linkcode McpServer.server | server} property.
1478
+ *
1479
+ * @example
1480
+ * ```ts source="./mcp.examples.ts#McpServer_basicUsage"
1481
+ * const server = new McpServer({
1482
+ * name: 'my-server',
1483
+ * version: '1.0.0'
1484
+ * });
1485
+ * ```
1486
+ */
1487
+ var McpServer = class {
1488
+ /**
1489
+ * The underlying {@linkcode Server} instance, useful for advanced operations like sending notifications.
1490
+ */
1491
+ server;
1492
+ _maxToolInputElements;
1493
+ _registeredResources = {};
1494
+ _registeredResourceTemplates = {};
1495
+ _registeredTools = {};
1496
+ _registeredPrompts = {};
1497
+ /** Per-tool JSON-converted `inputSchema`, filled on first use by `toolInputSchemaJson()`. */
1498
+ _toolInputSchemaJson = {};
1499
+ /**
1500
+ * The JSON-serialized `inputSchema` of a registered tool, or `undefined`
1501
+ * when no such tool is registered. Used by the HTTP entry's pre-dispatch
1502
+ * SEP-2243 `Mcp-Param-*` validation step (which needs the same JSON Schema
1503
+ * `tools/list` would emit, before dispatch reaches the handler).
1504
+ *
1505
+ * @internal
1506
+ */
1507
+ toolInputSchemaJson(name) {
1508
+ const tool = this._registeredTools[name];
1509
+ if (tool === void 0 || !tool.enabled) return void 0;
1510
+ if (Object.hasOwn(this._toolInputSchemaJson, name)) return this._toolInputSchemaJson[name];
1511
+ if (tool.inputSchema === void 0) return EMPTY_OBJECT_JSON_SCHEMA;
1512
+ try {
1513
+ const json = standardSchemaToJsonSchema(tool.inputSchema, "input");
1514
+ this._toolInputSchemaJson[name] = json;
1515
+ return json;
1516
+ } catch {
1517
+ return;
1518
+ }
1519
+ }
1520
+ constructor(serverInfo, options) {
1521
+ this.server = new Server(serverInfo, options);
1522
+ this._maxToolInputElements = resolveMaxToolInputElements(options?.maxToolInputElements);
1523
+ if (options?.capabilities?.tools) this.setToolRequestHandlers();
1524
+ if (options?.capabilities?.resources) this.setResourceRequestHandlers();
1525
+ if (options?.capabilities?.prompts) this.setPromptRequestHandlers();
1526
+ }
1527
+ /**
1528
+ * Attaches to the given transport, starts it, and starts listening for messages.
1529
+ *
1530
+ * The `server` object assumes ownership of the {@linkcode Transport}, replacing any callbacks that have already been set, and expects that it is the only user of the {@linkcode Transport} instance going forward.
1531
+ *
1532
+ * @example
1533
+ * ```ts source="./mcp.examples.ts#McpServer_connect_stdio"
1534
+ * const server = new McpServer({ name: 'my-server', version: '1.0.0' });
1535
+ * const transport = new StdioServerTransport();
1536
+ * await server.connect(transport);
1537
+ * ```
1538
+ */
1539
+ async connect(transport) {
1540
+ if (supportsScopeChallengeResolver(transport)) transport.setScopeChallengeResolver((context) => this.resolveScopeChallenge(context));
1541
+ return await this.server.connect(transport);
1542
+ }
1543
+ /**
1544
+ * Closes the connection.
1545
+ */
1546
+ async close() {
1547
+ await this.server.close();
1548
+ }
1549
+ /** @internal */
1550
+ resolveScopeChallenge = (context) => {
1551
+ switch (context.request.method) {
1552
+ case "tools/call": {
1553
+ const toolName = context.request.params?.name;
1554
+ if (typeof toolName !== "string") return;
1555
+ const tool = this._registeredTools[toolName];
1556
+ if (tool === void 0 || !tool.enabled) return;
1557
+ return tool.scopeChallenge?.(context);
1558
+ }
1559
+ case "resources/read": {
1560
+ const resourceUri = context.request.params?.uri;
1561
+ if (typeof resourceUri !== "string") return;
1562
+ let uri;
1563
+ try {
1564
+ uri = new URL(resourceUri);
1565
+ } catch {
1566
+ return;
1567
+ }
1568
+ const resource = this._registeredResources[uri.toString()];
1569
+ if (resource !== void 0) return resource.enabled ? resource.scopeChallenge?.(context) : void 0;
1570
+ for (const template of Object.values(this._registeredResourceTemplates)) if (template.resourceTemplate.uriTemplate.match(uri.toString())) return template.enabled ? template.scopeChallenge?.(context) : void 0;
1571
+ return;
1572
+ }
1573
+ case "prompts/get": {
1574
+ const promptName = context.request.params?.name;
1575
+ if (typeof promptName !== "string") return;
1576
+ const prompt = this._registeredPrompts[promptName];
1577
+ if (prompt === void 0 || !prompt.enabled) return;
1578
+ return prompt.scopeChallenge?.(context);
1579
+ }
1580
+ default: return;
1581
+ }
1582
+ };
1583
+ _toolHandlersInitialized = false;
1584
+ setToolRequestHandlers() {
1585
+ if (this._toolHandlersInitialized) return;
1586
+ this.server.assertCanSetRequestHandler("tools/list");
1587
+ this.server.assertCanSetRequestHandler("tools/call");
1588
+ this.server.registerCapabilities({ tools: { listChanged: this.server.getCapabilities().tools?.listChanged ?? true } });
1589
+ this.server.setRequestHandler("tools/list", () => ({ tools: Object.entries(this._registeredTools).filter(([, tool]) => tool.enabled).map(([name, tool]) => {
1590
+ const toolDefinition = {
1591
+ name,
1592
+ title: tool.title,
1593
+ description: tool.description,
1594
+ inputSchema: tool.inputSchema ? convertListedInputSchema(name, tool.inputSchema) : EMPTY_OBJECT_JSON_SCHEMA,
1595
+ annotations: tool.annotations,
1596
+ icons: tool.icons,
1597
+ execution: tool.execution,
1598
+ _meta: tool._meta
1599
+ };
1600
+ if (tool.outputSchema) toolDefinition.outputSchema = standardSchemaToJsonSchema(tool.outputSchema, "output");
1601
+ return toolDefinition;
1602
+ }) }));
1603
+ this.server.setRequestHandler("tools/call", async (request, ctx) => {
1604
+ const tool = this._registeredTools[request.params.name];
1605
+ if (!tool) throw new ProtocolError(ProtocolErrorCode.InvalidParams, `Tool ${request.params.name} not found`);
1606
+ if (!tool.enabled) throw new ProtocolError(ProtocolErrorCode.InvalidParams, `Tool ${request.params.name} disabled`);
1607
+ try {
1608
+ const args = await this.validateToolInput(tool, request.params.arguments, request.params.name);
1609
+ const result = await this.executeToolHandler(tool, args, ctx);
1610
+ await this.validateToolOutput(tool, result, request.params.name);
1611
+ if (isInputRequiredResult(result)) return result;
1612
+ return this.server.projectCallToolResult(result, tool.outputSchemaJson);
1613
+ } catch (error) {
1614
+ if (error instanceof ProtocolError && error.code === ProtocolErrorCode.UrlElicitationRequired) throw error;
1615
+ return this.createToolError(error instanceof Error ? error.message : String(error));
1616
+ }
1617
+ });
1618
+ this._toolHandlersInitialized = true;
1619
+ }
1620
+ /**
1621
+ * Creates a tool error result.
1622
+ *
1623
+ * @param errorMessage - The error message.
1624
+ * @returns The tool error result.
1625
+ */
1626
+ createToolError(errorMessage) {
1627
+ return {
1628
+ content: [{
1629
+ type: "text",
1630
+ text: errorMessage
1631
+ }],
1632
+ isError: true
1633
+ };
1634
+ }
1635
+ /**
1636
+ * Validates tool input arguments against the tool's input schema.
1637
+ */
1638
+ async validateToolInput(tool, args, toolName) {
1639
+ if (this._maxToolInputElements !== void 0 && toolInputElementCount(args, this._maxToolInputElements) > this._maxToolInputElements) throw new ProtocolError(ProtocolErrorCode.InvalidParams, `Invalid arguments for tool ${toolName}: arguments contain more than the maximum of ${this._maxToolInputElements} elements`);
1640
+ if (!tool.inputSchema) return;
1641
+ const parseResult = await validateStandardSchema(tool.inputSchema, args ?? {});
1642
+ if (!parseResult.success) throw new ProtocolError(ProtocolErrorCode.InvalidParams, `Input validation error: Invalid arguments for tool ${toolName}: ${parseResult.error}`);
1643
+ return parseResult.data;
1644
+ }
1645
+ /**
1646
+ * Validates tool output against the tool's output schema.
1647
+ */
1648
+ async validateToolOutput(tool, result, toolName) {
1649
+ if (!tool.outputSchema) return;
1650
+ if (isInputRequiredResult(result)) return;
1651
+ if (result.isError) return;
1652
+ if (result.structuredContent === void 0) throw new ProtocolError(ProtocolErrorCode.InvalidParams, `Output validation error: Tool ${toolName} has an output schema but no structured content was provided`);
1653
+ const parseResult = await validateStandardSchema(tool.outputSchema, result.structuredContent);
1654
+ if (!parseResult.success) throw new ProtocolError(ProtocolErrorCode.InvalidParams, `Output validation error: Invalid structured content for tool ${toolName}: ${parseResult.error}`);
1655
+ }
1656
+ /**
1657
+ * Executes a tool handler.
1658
+ */
1659
+ async executeToolHandler(tool, args, ctx) {
1660
+ return tool.executor(args, ctx);
1661
+ }
1662
+ _completionHandlerInitialized = false;
1663
+ setCompletionRequestHandler() {
1664
+ if (this._completionHandlerInitialized) return;
1665
+ this.server.assertCanSetRequestHandler("completion/complete");
1666
+ this.server.registerCapabilities({ completions: {} });
1667
+ this.server.setRequestHandler("completion/complete", async (request) => {
1668
+ switch (request.params.ref.type) {
1669
+ case "ref/prompt":
1670
+ assertCompleteRequestPrompt(request);
1671
+ return this.handlePromptCompletion(request, request.params.ref);
1672
+ case "ref/resource":
1673
+ assertCompleteRequestResourceTemplate(request);
1674
+ return this.handleResourceCompletion(request, request.params.ref);
1675
+ default: throw new ProtocolError(ProtocolErrorCode.InvalidParams, `Invalid completion reference: ${request.params.ref}`);
1676
+ }
1677
+ });
1678
+ this._completionHandlerInitialized = true;
1679
+ }
1680
+ async handlePromptCompletion(request, ref) {
1681
+ const prompt = this._registeredPrompts[ref.name];
1682
+ if (!prompt) throw new ProtocolError(ProtocolErrorCode.InvalidParams, `Prompt ${ref.name} not found`);
1683
+ if (!prompt.enabled) throw new ProtocolError(ProtocolErrorCode.InvalidParams, `Prompt ${ref.name} disabled`);
1684
+ if (!prompt.argsSchema) return EMPTY_COMPLETION_RESULT;
1685
+ const field = unwrapOptionalSchema(getSchemaShape(prompt.argsSchema)?.[request.params.argument.name]);
1686
+ if (!isCompletable(field)) return EMPTY_COMPLETION_RESULT;
1687
+ const completer = getCompleter(field);
1688
+ if (!completer) return EMPTY_COMPLETION_RESULT;
1689
+ return createCompletionResult(await completer(request.params.argument.value, request.params.context));
1690
+ }
1691
+ async handleResourceCompletion(request, ref) {
1692
+ const template = Object.values(this._registeredResourceTemplates).find((t) => t.resourceTemplate.uriTemplate.toString() === ref.uri);
1693
+ if (!template) {
1694
+ if (this._registeredResources[ref.uri]) return EMPTY_COMPLETION_RESULT;
1695
+ throw new ProtocolError(ProtocolErrorCode.InvalidParams, `Resource template ${request.params.ref.uri} not found`);
1696
+ }
1697
+ const completer = template.resourceTemplate.completeCallback(request.params.argument.name);
1698
+ if (!completer) return EMPTY_COMPLETION_RESULT;
1699
+ return createCompletionResult(await completer(request.params.argument.value, request.params.context));
1700
+ }
1701
+ _resourceHandlersInitialized = false;
1702
+ setResourceRequestHandlers() {
1703
+ if (this._resourceHandlersInitialized) return;
1704
+ this.server.assertCanSetRequestHandler("resources/list");
1705
+ this.server.assertCanSetRequestHandler("resources/templates/list");
1706
+ this.server.assertCanSetRequestHandler("resources/read");
1707
+ this.server.registerCapabilities({ resources: { listChanged: this.server.getCapabilities().resources?.listChanged ?? true } });
1708
+ this.server.setRequestHandler("resources/list", async (_request, ctx) => {
1709
+ const resources = Object.entries(this._registeredResources).filter(([_, resource]) => resource.enabled).map(([uri, resource]) => ({
1710
+ uri,
1711
+ name: resource.name,
1712
+ ...resource.metadata
1713
+ }));
1714
+ const templateResources = [];
1715
+ for (const template of Object.values(this._registeredResourceTemplates)) {
1716
+ if (!template.resourceTemplate.listCallback) continue;
1717
+ const result = await template.resourceTemplate.listCallback(ctx);
1718
+ for (const resource of result.resources) templateResources.push({
1719
+ ...template.metadata,
1720
+ ...resource
1721
+ });
1722
+ }
1723
+ return { resources: [...resources, ...templateResources] };
1724
+ });
1725
+ this.server.setRequestHandler("resources/templates/list", async () => {
1726
+ return { resourceTemplates: Object.entries(this._registeredResourceTemplates).map(([name, template]) => ({
1727
+ name,
1728
+ uriTemplate: template.resourceTemplate.uriTemplate.toString(),
1729
+ ...template.metadata
1730
+ })) };
1731
+ });
1732
+ this.server.setRequestHandler("resources/read", async (request, ctx) => {
1733
+ let uri;
1734
+ try {
1735
+ uri = new URL(request.params.uri);
1736
+ } catch {
1737
+ throw new ProtocolError(ProtocolErrorCode.InvalidParams, `Resource URI ${request.params.uri} is invalid`, {
1738
+ uri: request.params.uri,
1739
+ reason: "invalid_uri"
1740
+ });
1741
+ }
1742
+ const resource = this._registeredResources[uri.toString()];
1743
+ if (resource) {
1744
+ if (!resource.enabled) throw new ProtocolError(ProtocolErrorCode.InvalidParams, `Resource ${uri} disabled`);
1745
+ return attachCacheHintFallback(await resource.readCallback(uri, ctx), resource.cacheHint);
1746
+ }
1747
+ for (const template of Object.values(this._registeredResourceTemplates)) {
1748
+ const variables = template.resourceTemplate.uriTemplate.match(uri.toString());
1749
+ if (variables) {
1750
+ if (!template.enabled) throw new ProtocolError(ProtocolErrorCode.InvalidParams, `Resource template ${template.resourceTemplate.uriTemplate} disabled`);
1751
+ return attachCacheHintFallback(await template.readCallback(uri, variables, ctx), template.cacheHint);
1752
+ }
1753
+ }
1754
+ throw new ResourceNotFoundError(request.params.uri);
1755
+ });
1756
+ this._resourceHandlersInitialized = true;
1757
+ }
1758
+ _promptHandlersInitialized = false;
1759
+ setPromptRequestHandlers() {
1760
+ if (this._promptHandlersInitialized) return;
1761
+ this.server.assertCanSetRequestHandler("prompts/list");
1762
+ this.server.assertCanSetRequestHandler("prompts/get");
1763
+ this.server.registerCapabilities({ prompts: { listChanged: this.server.getCapabilities().prompts?.listChanged ?? true } });
1764
+ this.server.setRequestHandler("prompts/list", () => ({ prompts: Object.entries(this._registeredPrompts).filter(([, prompt]) => prompt.enabled).map(([name, prompt]) => {
1765
+ return {
1766
+ name,
1767
+ title: prompt.title,
1768
+ description: prompt.description,
1769
+ arguments: prompt.argsSchema ? promptArgumentsFromStandardSchema(prompt.argsSchema) : void 0,
1770
+ icons: prompt.icons,
1771
+ _meta: prompt._meta
1772
+ };
1773
+ }) }));
1774
+ this.server.setRequestHandler("prompts/get", async (request, ctx) => {
1775
+ const prompt = this._registeredPrompts[request.params.name];
1776
+ if (!prompt) throw new ProtocolError(ProtocolErrorCode.InvalidParams, `Prompt ${request.params.name} not found`);
1777
+ if (!prompt.enabled) throw new ProtocolError(ProtocolErrorCode.InvalidParams, `Prompt ${request.params.name} disabled`);
1778
+ return prompt.handler(request.params.arguments, ctx);
1779
+ });
1780
+ this._promptHandlersInitialized = true;
1781
+ }
1782
+ registerResource(name, uriOrTemplate, config, readCallback) {
1783
+ const { cacheHint, scopeChallenge, ...resourceMetadata } = config;
1784
+ const metadata = resourceMetadata;
1785
+ if (cacheHint !== void 0) assertValidCacheHint(cacheHint, `resource ${name}`);
1786
+ if (typeof uriOrTemplate === "string") {
1787
+ if (this._registeredResources[uriOrTemplate]) throw new Error(`Resource ${uriOrTemplate} is already registered`);
1788
+ const registeredResource = this._createRegisteredResource(name, config.title, uriOrTemplate, metadata, scopeChallenge, readCallback);
1789
+ if (cacheHint !== void 0) registeredResource.cacheHint = cacheHint;
1790
+ this.setResourceRequestHandlers();
1791
+ this.sendResourceListChanged();
1792
+ return registeredResource;
1793
+ } else {
1794
+ if (this._registeredResourceTemplates[name]) throw new Error(`Resource template ${name} is already registered`);
1795
+ const registeredResourceTemplate = this._createRegisteredResourceTemplate(name, config.title, uriOrTemplate, metadata, scopeChallenge, readCallback);
1796
+ if (cacheHint !== void 0) registeredResourceTemplate.cacheHint = cacheHint;
1797
+ this.setResourceRequestHandlers();
1798
+ this.sendResourceListChanged();
1799
+ return registeredResourceTemplate;
1800
+ }
1801
+ }
1802
+ _createRegisteredResource(name, title, uri, metadata, scopeChallenge, readCallback) {
1803
+ const registeredResource = {
1804
+ name,
1805
+ title,
1806
+ metadata,
1807
+ readCallback,
1808
+ scopeChallenge,
1809
+ enabled: true,
1810
+ disable: () => registeredResource.update({ enabled: false }),
1811
+ enable: () => registeredResource.update({ enabled: true }),
1812
+ remove: () => registeredResource.update({ uri: null }),
1813
+ update: (updates) => {
1814
+ if (updates.uri !== void 0 && updates.uri !== uri) {
1815
+ delete this._registeredResources[uri];
1816
+ if (updates.uri) this._registeredResources[updates.uri] = registeredResource;
1817
+ }
1818
+ if (updates.name !== void 0) registeredResource.name = updates.name;
1819
+ if (updates.metadata !== void 0) registeredResource.metadata = updates.metadata;
1820
+ if (updates.title !== void 0) {
1821
+ registeredResource.title = updates.title;
1822
+ registeredResource.metadata = {
1823
+ ...registeredResource.metadata,
1824
+ title: updates.title
1825
+ };
1826
+ }
1827
+ if (updates.callback !== void 0) registeredResource.readCallback = updates.callback;
1828
+ if (updates.scopeChallenge !== void 0) registeredResource.scopeChallenge = updates.scopeChallenge === null ? void 0 : updates.scopeChallenge;
1829
+ if (updates.enabled !== void 0) registeredResource.enabled = updates.enabled;
1830
+ this.sendResourceListChanged();
1831
+ }
1832
+ };
1833
+ this._registeredResources[uri] = registeredResource;
1834
+ return registeredResource;
1835
+ }
1836
+ _createRegisteredResourceTemplate(name, title, template, metadata, scopeChallenge, readCallback) {
1837
+ const registeredResourceTemplate = {
1838
+ resourceTemplate: template,
1839
+ title,
1840
+ metadata,
1841
+ readCallback,
1842
+ scopeChallenge,
1843
+ enabled: true,
1844
+ disable: () => registeredResourceTemplate.update({ enabled: false }),
1845
+ enable: () => registeredResourceTemplate.update({ enabled: true }),
1846
+ remove: () => registeredResourceTemplate.update({ name: null }),
1847
+ update: (updates) => {
1848
+ if (updates.name !== void 0 && updates.name !== name) {
1849
+ delete this._registeredResourceTemplates[name];
1850
+ if (updates.name) this._registeredResourceTemplates[updates.name] = registeredResourceTemplate;
1851
+ }
1852
+ if (updates.template !== void 0) registeredResourceTemplate.resourceTemplate = updates.template;
1853
+ if (updates.metadata !== void 0) registeredResourceTemplate.metadata = updates.metadata;
1854
+ if (updates.title !== void 0) {
1855
+ registeredResourceTemplate.title = updates.title;
1856
+ registeredResourceTemplate.metadata = {
1857
+ ...registeredResourceTemplate.metadata,
1858
+ title: updates.title
1859
+ };
1860
+ }
1861
+ if (updates.callback !== void 0) registeredResourceTemplate.readCallback = updates.callback;
1862
+ if (updates.scopeChallenge !== void 0) registeredResourceTemplate.scopeChallenge = updates.scopeChallenge === null ? void 0 : updates.scopeChallenge;
1863
+ if (updates.enabled !== void 0) registeredResourceTemplate.enabled = updates.enabled;
1864
+ this.sendResourceListChanged();
1865
+ }
1866
+ };
1867
+ this._registeredResourceTemplates[name] = registeredResourceTemplate;
1868
+ const variableNames = template.uriTemplate.variableNames;
1869
+ if (Array.isArray(variableNames) && variableNames.some((v) => !!template.completeCallback(v))) this.setCompletionRequestHandler();
1870
+ return registeredResourceTemplate;
1871
+ }
1872
+ _createRegisteredPrompt(name, title, description, argsSchema, callback, icons, scopeChallenge, _meta) {
1873
+ let currentArgsSchema = argsSchema;
1874
+ let currentCallback = callback;
1875
+ const registeredPrompt = {
1876
+ title,
1877
+ description,
1878
+ argsSchema,
1879
+ icons,
1880
+ scopeChallenge,
1881
+ _meta,
1882
+ handler: createPromptHandler(name, argsSchema, callback),
1883
+ enabled: true,
1884
+ disable: () => registeredPrompt.update({ enabled: false }),
1885
+ enable: () => registeredPrompt.update({ enabled: true }),
1886
+ remove: () => registeredPrompt.update({ name: null }),
1887
+ update: (updates) => {
1888
+ if (updates.name !== void 0 && updates.name !== name) {
1889
+ delete this._registeredPrompts[name];
1890
+ if (updates.name) this._registeredPrompts[updates.name] = registeredPrompt;
1891
+ }
1892
+ if (updates.title !== void 0) registeredPrompt.title = updates.title;
1893
+ if (updates.description !== void 0) registeredPrompt.description = updates.description;
1894
+ if (updates.icons !== void 0) registeredPrompt.icons = updates.icons;
1895
+ if (updates.scopeChallenge !== void 0) registeredPrompt.scopeChallenge = updates.scopeChallenge === null ? void 0 : updates.scopeChallenge;
1896
+ if (updates._meta !== void 0) registeredPrompt._meta = updates._meta;
1897
+ let needsHandlerRegen = false;
1898
+ if (updates.argsSchema !== void 0) {
1899
+ registeredPrompt.argsSchema = updates.argsSchema;
1900
+ currentArgsSchema = updates.argsSchema;
1901
+ needsHandlerRegen = true;
1902
+ }
1903
+ if (updates.callback !== void 0) {
1904
+ currentCallback = updates.callback;
1905
+ needsHandlerRegen = true;
1906
+ }
1907
+ if (needsHandlerRegen) registeredPrompt.handler = createPromptHandler(name, currentArgsSchema, currentCallback);
1908
+ if (updates.enabled !== void 0) registeredPrompt.enabled = updates.enabled;
1909
+ this.sendPromptListChanged();
1910
+ }
1911
+ };
1912
+ this._registeredPrompts[name] = registeredPrompt;
1913
+ if (argsSchema) {
1914
+ const shape = getSchemaShape(argsSchema);
1915
+ if (shape) {
1916
+ if (Object.values(shape).some((field) => {
1917
+ return isCompletable(unwrapOptionalSchema(field));
1918
+ })) this.setCompletionRequestHandler();
1919
+ }
1920
+ }
1921
+ return registeredPrompt;
1922
+ }
1923
+ _createRegisteredTool(name, title, description, inputSchema, outputSchema, annotations, icons, execution, scopeChallenge, _meta, handler) {
1924
+ validateAndWarnToolName(name);
1925
+ let currentHandler = handler;
1926
+ let outputSchemaJson;
1927
+ const registeredTool = {
1928
+ title,
1929
+ description,
1930
+ inputSchema,
1931
+ outputSchema,
1932
+ get outputSchemaJson() {
1933
+ return outputSchemaJson ??= convertOutputSchemaJson(registeredTool.outputSchema);
1934
+ },
1935
+ set outputSchemaJson(value) {
1936
+ outputSchemaJson = value;
1937
+ },
1938
+ annotations,
1939
+ icons,
1940
+ execution,
1941
+ scopeChallenge,
1942
+ _meta,
1943
+ handler,
1944
+ executor: createToolExecutor(inputSchema, handler),
1945
+ enabled: true,
1946
+ disable: () => registeredTool.update({ enabled: false }),
1947
+ enable: () => registeredTool.update({ enabled: true }),
1948
+ remove: () => registeredTool.update({ name: null }),
1949
+ update: (updates) => {
1950
+ if (updates.name !== void 0 && updates.name !== name) {
1951
+ if (typeof updates.name === "string") validateAndWarnToolName(updates.name);
1952
+ delete this._registeredTools[name];
1953
+ delete this._toolInputSchemaJson[name];
1954
+ if (updates.name) {
1955
+ delete this._toolInputSchemaJson[updates.name];
1956
+ this._registeredTools[updates.name] = registeredTool;
1957
+ name = updates.name;
1958
+ }
1959
+ }
1960
+ if (updates.title !== void 0) registeredTool.title = updates.title;
1961
+ if (updates.description !== void 0) registeredTool.description = updates.description;
1962
+ let needsExecutorRegen = false;
1963
+ if (updates.paramsSchema !== void 0) {
1964
+ registeredTool.inputSchema = updates.paramsSchema;
1965
+ delete this._toolInputSchemaJson[name];
1966
+ needsExecutorRegen = true;
1967
+ }
1968
+ if (updates.callback !== void 0) {
1969
+ registeredTool.handler = updates.callback;
1970
+ currentHandler = updates.callback;
1971
+ needsExecutorRegen = true;
1972
+ }
1973
+ if (needsExecutorRegen) registeredTool.executor = createToolExecutor(registeredTool.inputSchema, currentHandler);
1974
+ if (updates.outputSchema !== void 0) {
1975
+ registeredTool.outputSchema = updates.outputSchema;
1976
+ registeredTool.outputSchemaJson = convertOutputSchemaJson(updates.outputSchema);
1977
+ }
1978
+ if (updates.annotations !== void 0) registeredTool.annotations = updates.annotations;
1979
+ if (updates.icons !== void 0) registeredTool.icons = updates.icons;
1980
+ if (updates.scopeChallenge !== void 0) registeredTool.scopeChallenge = updates.scopeChallenge === null ? void 0 : updates.scopeChallenge;
1981
+ if (updates._meta !== void 0) registeredTool._meta = updates._meta;
1982
+ if (updates.enabled !== void 0) registeredTool.enabled = updates.enabled;
1983
+ this.sendToolListChanged();
1984
+ }
1985
+ };
1986
+ this._registeredTools[name] = registeredTool;
1987
+ this.setToolRequestHandlers();
1988
+ this.sendToolListChanged();
1989
+ return registeredTool;
1990
+ }
1991
+ registerTool(name, config, cb) {
1992
+ if (this._registeredTools[name]) throw new Error(`Tool ${name} is already registered`);
1993
+ const { title, description, inputSchema, outputSchema, annotations, icons, scopeChallenge, _meta } = config;
1994
+ return this._createRegisteredTool(name, title, description, normalizeRawShapeSchema(inputSchema), normalizeRawShapeSchema(outputSchema), annotations, icons, void 0, scopeChallenge, _meta, cb);
1995
+ }
1996
+ registerPrompt(name, config, cb) {
1997
+ if (this._registeredPrompts[name]) throw new Error(`Prompt ${name} is already registered`);
1998
+ const { title, description, argsSchema, icons, scopeChallenge, _meta } = config;
1999
+ const registeredPrompt = this._createRegisteredPrompt(name, title, description, normalizeRawShapeSchema(argsSchema), cb, icons, scopeChallenge, _meta);
2000
+ this.setPromptRequestHandlers();
2001
+ this.sendPromptListChanged();
2002
+ return registeredPrompt;
2003
+ }
2004
+ /**
2005
+ * Checks if the server is connected to a transport.
2006
+ * @returns `true` if the server is connected
2007
+ */
2008
+ isConnected() {
2009
+ return this.server.transport !== void 0;
2010
+ }
2011
+ /**
2012
+ * Sends a logging message to the client, if connected.
2013
+ * Note: You only need to send the parameters object, not the entire JSON-RPC message.
2014
+ * @see {@linkcode LoggingMessageNotification}
2015
+ * @param params
2016
+ * @param sessionId Optional for stateless transports and backward compatibility.
2017
+ *
2018
+ * @example
2019
+ * ```ts source="./mcp.examples.ts#McpServer_sendLoggingMessage_basic"
2020
+ * await server.sendLoggingMessage({
2021
+ * level: 'info',
2022
+ * data: 'Processing complete'
2023
+ * });
2024
+ * ```
2025
+ *
2026
+ * @deprecated Deprecated as of protocol version 2026-07-28 (SEP-2577).
2027
+ * Remains functional during the deprecation window (at least twelve months).
2028
+ * Migrate to stderr logging (STDIO servers) or OpenTelemetry.
2029
+ */
2030
+ async sendLoggingMessage(params, sessionId) {
2031
+ return this.server.sendLoggingMessage(params, sessionId);
2032
+ }
2033
+ /**
2034
+ * Sends a resource list changed event to the client, if connected.
2035
+ */
2036
+ sendResourceListChanged() {
2037
+ if (this.isConnected()) this.server.sendResourceListChanged();
2038
+ }
2039
+ /**
2040
+ * Sends a tool list changed event to the client, if connected.
2041
+ */
2042
+ sendToolListChanged() {
2043
+ if (this.isConnected()) this.server.sendToolListChanged();
2044
+ }
2045
+ /**
2046
+ * Sends a prompt list changed event to the client, if connected.
2047
+ */
2048
+ sendPromptListChanged() {
2049
+ if (this.isConnected()) this.server.sendPromptListChanged();
2050
+ }
2051
+ };
2052
+ /**
2053
+ * A resource template combines a URI pattern with optional functionality to enumerate
2054
+ * all resources matching that pattern.
2055
+ */
2056
+ var ResourceTemplate = class {
2057
+ _uriTemplate;
2058
+ constructor(uriTemplate, _callbacks) {
2059
+ this._callbacks = _callbacks;
2060
+ this._uriTemplate = typeof uriTemplate === "string" ? new UriTemplate(uriTemplate) : uriTemplate;
2061
+ }
2062
+ /**
2063
+ * Gets the URI template pattern.
2064
+ */
2065
+ get uriTemplate() {
2066
+ return this._uriTemplate;
2067
+ }
2068
+ /**
2069
+ * Gets the list callback, if one was provided.
2070
+ */
2071
+ get listCallback() {
2072
+ return this._callbacks.list;
2073
+ }
2074
+ /**
2075
+ * Gets the callback for completing a specific URI template variable, if one was provided.
2076
+ */
2077
+ completeCallback(variable) {
2078
+ return this._callbacks.complete?.[variable];
2079
+ }
2080
+ };
2081
+ /**
2082
+ * Creates an executor that invokes the handler with the appropriate arguments.
2083
+ * When `inputSchema` is defined, the handler is called with `(args, ctx)`.
2084
+ * When `inputSchema` is undefined, the handler is called with just `(ctx)`.
2085
+ */
2086
+ function createToolExecutor(inputSchema, handler) {
2087
+ if (inputSchema) {
2088
+ const callback$1 = handler;
2089
+ return async (args, ctx) => callback$1(args, ctx);
2090
+ }
2091
+ const callback = handler;
2092
+ return async (_args, ctx) => callback(ctx);
2093
+ }
2094
+ const EMPTY_OBJECT_JSON_SCHEMA = {
2095
+ type: "object",
2096
+ properties: {}
2097
+ };
2098
+ /** Converts a tool's `inputSchema` for `tools/list` and warns on an invalid SEP-2243 `x-mcp-header` declaration. */
2099
+ function convertListedInputSchema(name, inputSchema) {
2100
+ const json = standardSchemaToJsonSchema(inputSchema, "input");
2101
+ const scan = scanXMcpHeaderDeclarations(json);
2102
+ if (!scan.valid) console.warn(`[mcp-sdk] tool '${name}' carries an invalid x-mcp-header declaration and will be excluded by conforming Streamable HTTP clients: ${scan.reason}`);
2103
+ return json;
2104
+ }
2105
+ /**
2106
+ * Convert a registered `outputSchema` to JSON Schema, memoised on {@link RegisteredTool.outputSchemaJson}
2107
+ * so `tools/call` passes the SAME advertised schema to the wire codec's `projectCallToolResult` that
2108
+ * `tools/list` emits (and that the 2025 codec's `encodeResult('tools/list', …)` may wrap). A conversion
2109
+ * failure yields `undefined` so the failure surfaces where it always has (`tools/list`).
2110
+ */
2111
+ function convertOutputSchemaJson(outputSchema) {
2112
+ if (outputSchema === void 0) return void 0;
2113
+ try {
2114
+ return standardSchemaToJsonSchema(outputSchema, "output");
2115
+ } catch {
2116
+ return;
2117
+ }
2118
+ }
2119
+ /**
2120
+ * Creates a type-safe prompt handler that captures the schema and callback in a closure.
2121
+ * This eliminates the need for type assertions at the call site.
2122
+ */
2123
+ function createPromptHandler(name, argsSchema, callback) {
2124
+ if (argsSchema) {
2125
+ const typedCallback = callback;
2126
+ return async (args, ctx) => {
2127
+ const parseResult = await validateStandardSchema(argsSchema, args ?? {});
2128
+ if (!parseResult.success) throw new ProtocolError(ProtocolErrorCode.InvalidParams, `Invalid arguments for prompt ${name}: ${parseResult.error}`);
2129
+ return typedCallback(parseResult.data, ctx);
2130
+ };
2131
+ } else {
2132
+ const typedCallback = callback;
2133
+ return async (_args, ctx) => {
2134
+ return typedCallback(ctx);
2135
+ };
2136
+ }
2137
+ }
2138
+ function createCompletionResult(suggestions) {
2139
+ return { completion: {
2140
+ values: suggestions.map(String).slice(0, 100),
2141
+ total: suggestions.length,
2142
+ hasMore: suggestions.length > 100
2143
+ } };
2144
+ }
2145
+ const EMPTY_COMPLETION_RESULT = { completion: {
2146
+ values: [],
2147
+ hasMore: false
2148
+ } };
2149
+ /** @internal Gets the shape of a Zod object schema */
2150
+ function getSchemaShape(schema) {
2151
+ const candidate = schema;
2152
+ if (candidate.shape && typeof candidate.shape === "object") return candidate.shape;
2153
+ }
2154
+ /** @internal Checks if a Zod schema is optional */
2155
+ function isOptionalSchema(schema) {
2156
+ return schema?.type === "optional";
2157
+ }
2158
+ /** @internal Unwraps an optional Zod schema */
2159
+ function unwrapOptionalSchema(schema) {
2160
+ if (!isOptionalSchema(schema)) return schema;
2161
+ return schema.def?.innerType ?? schema;
2162
+ }
2163
+
2164
+ //#endregion
2165
+ export { PerRequestHTTPServerTransport as _, seedClientIdentityFromEnvelope as a, completable as b, findScopeChallenge as c, buildOAuthProtectedResourceMetadata as d, getOAuthProtectedResourceMetadataUrl as f, verifyBearerToken as g, requireBearerAuth as h, installModernOnlyHandlers as i, requireScopes as l, bearerAuthChallengeResponse as m, ResourceTemplate as n, serverIdentityOf as o, oauthMetadataResponse as p, Server as r, createScopeChallengeResponse as s, McpServer as t, scopeChallengeResourceMetadataUrl as u, DEFAULT_SSE_KEEP_ALIVE_MS as v, isCompletable as x, armSseKeepAlive as y };
2166
+ //# sourceMappingURL=mcp-oHn3ureC.mjs.map