@metamask/client-mcp-core 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (486) hide show
  1. package/CHANGELOG.md +17 -0
  2. package/LICENSE +6 -0
  3. package/LICENSE.APACHE2 +201 -0
  4. package/LICENSE.MIT +21 -0
  5. package/README.md +1459 -0
  6. package/dist/capabilities/context.cjs +34 -0
  7. package/dist/capabilities/context.cjs.map +1 -0
  8. package/dist/capabilities/context.d.cts +101 -0
  9. package/dist/capabilities/context.d.cts.map +1 -0
  10. package/dist/capabilities/context.d.mts +101 -0
  11. package/dist/capabilities/context.d.mts.map +1 -0
  12. package/dist/capabilities/context.mjs +29 -0
  13. package/dist/capabilities/context.mjs.map +1 -0
  14. package/dist/capabilities/index.cjs +18 -0
  15. package/dist/capabilities/index.cjs.map +1 -0
  16. package/dist/capabilities/index.d.cts +3 -0
  17. package/dist/capabilities/index.d.cts.map +1 -0
  18. package/dist/capabilities/index.d.mts +3 -0
  19. package/dist/capabilities/index.d.mts.map +1 -0
  20. package/dist/capabilities/index.mjs +2 -0
  21. package/dist/capabilities/index.mjs.map +1 -0
  22. package/dist/capabilities/types.cjs +3 -0
  23. package/dist/capabilities/types.cjs.map +1 -0
  24. package/dist/capabilities/types.d.cts +152 -0
  25. package/dist/capabilities/types.d.cts.map +1 -0
  26. package/dist/capabilities/types.d.mts +152 -0
  27. package/dist/capabilities/types.d.mts.map +1 -0
  28. package/dist/capabilities/types.mjs +2 -0
  29. package/dist/capabilities/types.mjs.map +1 -0
  30. package/dist/index.cjs +59 -0
  31. package/dist/index.cjs.map +1 -0
  32. package/dist/index.d.cts +33 -0
  33. package/dist/index.d.cts.map +1 -0
  34. package/dist/index.d.mts +33 -0
  35. package/dist/index.d.mts.map +1 -0
  36. package/dist/index.mjs +43 -0
  37. package/dist/index.mjs.map +1 -0
  38. package/dist/launcher/console-error-buffer.cjs +72 -0
  39. package/dist/launcher/console-error-buffer.cjs.map +1 -0
  40. package/dist/launcher/console-error-buffer.d.cts +43 -0
  41. package/dist/launcher/console-error-buffer.d.cts.map +1 -0
  42. package/dist/launcher/console-error-buffer.d.mts +43 -0
  43. package/dist/launcher/console-error-buffer.d.mts.map +1 -0
  44. package/dist/launcher/console-error-buffer.mjs +68 -0
  45. package/dist/launcher/console-error-buffer.mjs.map +1 -0
  46. package/dist/launcher/extension-id-resolver.cjs +177 -0
  47. package/dist/launcher/extension-id-resolver.cjs.map +1 -0
  48. package/dist/launcher/extension-id-resolver.d.cts +32 -0
  49. package/dist/launcher/extension-id-resolver.d.cts.map +1 -0
  50. package/dist/launcher/extension-id-resolver.d.mts +32 -0
  51. package/dist/launcher/extension-id-resolver.d.mts.map +1 -0
  52. package/dist/launcher/extension-id-resolver.mjs +173 -0
  53. package/dist/launcher/extension-id-resolver.mjs.map +1 -0
  54. package/dist/launcher/extension-readiness.cjs +50 -0
  55. package/dist/launcher/extension-readiness.cjs.map +1 -0
  56. package/dist/launcher/extension-readiness.d.cts +37 -0
  57. package/dist/launcher/extension-readiness.d.cts.map +1 -0
  58. package/dist/launcher/extension-readiness.d.mts +37 -0
  59. package/dist/launcher/extension-readiness.d.mts.map +1 -0
  60. package/dist/launcher/extension-readiness.mjs +43 -0
  61. package/dist/launcher/extension-readiness.mjs.map +1 -0
  62. package/dist/launcher/index.cjs +21 -0
  63. package/dist/launcher/index.cjs.map +1 -0
  64. package/dist/launcher/index.d.cts +5 -0
  65. package/dist/launcher/index.d.cts.map +1 -0
  66. package/dist/launcher/index.d.mts +5 -0
  67. package/dist/launcher/index.d.mts.map +1 -0
  68. package/dist/launcher/index.mjs +5 -0
  69. package/dist/launcher/index.mjs.map +1 -0
  70. package/dist/launcher/retry.cjs +35 -0
  71. package/dist/launcher/retry.cjs.map +1 -0
  72. package/dist/launcher/retry.d.cts +20 -0
  73. package/dist/launcher/retry.d.cts.map +1 -0
  74. package/dist/launcher/retry.d.mts +20 -0
  75. package/dist/launcher/retry.d.mts.map +1 -0
  76. package/dist/launcher/retry.mjs +31 -0
  77. package/dist/launcher/retry.mjs.map +1 -0
  78. package/dist/mcp-server/constants.cjs +22 -0
  79. package/dist/mcp-server/constants.cjs.map +1 -0
  80. package/dist/mcp-server/constants.d.cts +13 -0
  81. package/dist/mcp-server/constants.d.cts.map +1 -0
  82. package/dist/mcp-server/constants.d.mts +13 -0
  83. package/dist/mcp-server/constants.d.mts.map +1 -0
  84. package/dist/mcp-server/constants.mjs +19 -0
  85. package/dist/mcp-server/constants.mjs.map +1 -0
  86. package/dist/mcp-server/discovery.cjs +299 -0
  87. package/dist/mcp-server/discovery.cjs.map +1 -0
  88. package/dist/mcp-server/discovery.d.cts +56 -0
  89. package/dist/mcp-server/discovery.d.cts.map +1 -0
  90. package/dist/mcp-server/discovery.d.mts +56 -0
  91. package/dist/mcp-server/discovery.d.mts.map +1 -0
  92. package/dist/mcp-server/discovery.mjs +292 -0
  93. package/dist/mcp-server/discovery.mjs.map +1 -0
  94. package/dist/mcp-server/knowledge-store.cjs +1196 -0
  95. package/dist/mcp-server/knowledge-store.cjs.map +1 -0
  96. package/dist/mcp-server/knowledge-store.d.cts +249 -0
  97. package/dist/mcp-server/knowledge-store.d.cts.map +1 -0
  98. package/dist/mcp-server/knowledge-store.d.mts +249 -0
  99. package/dist/mcp-server/knowledge-store.d.mts.map +1 -0
  100. package/dist/mcp-server/knowledge-store.mjs +1154 -0
  101. package/dist/mcp-server/knowledge-store.mjs.map +1 -0
  102. package/dist/mcp-server/schemas.cjs +433 -0
  103. package/dist/mcp-server/schemas.cjs.map +1 -0
  104. package/dist/mcp-server/schemas.d.cts +557 -0
  105. package/dist/mcp-server/schemas.d.cts.map +1 -0
  106. package/dist/mcp-server/schemas.d.mts +557 -0
  107. package/dist/mcp-server/schemas.d.mts.map +1 -0
  108. package/dist/mcp-server/schemas.mjs +430 -0
  109. package/dist/mcp-server/schemas.mjs.map +1 -0
  110. package/dist/mcp-server/server.cjs +161 -0
  111. package/dist/mcp-server/server.cjs.map +1 -0
  112. package/dist/mcp-server/server.d.cts +24 -0
  113. package/dist/mcp-server/server.d.cts.map +1 -0
  114. package/dist/mcp-server/server.d.mts +24 -0
  115. package/dist/mcp-server/server.d.mts.map +1 -0
  116. package/dist/mcp-server/server.mjs +158 -0
  117. package/dist/mcp-server/server.mjs.map +1 -0
  118. package/dist/mcp-server/session-manager.cjs +53 -0
  119. package/dist/mcp-server/session-manager.cjs.map +1 -0
  120. package/dist/mcp-server/session-manager.d.cts +240 -0
  121. package/dist/mcp-server/session-manager.d.cts.map +1 -0
  122. package/dist/mcp-server/session-manager.d.mts +240 -0
  123. package/dist/mcp-server/session-manager.d.mts.map +1 -0
  124. package/dist/mcp-server/session-manager.mjs +48 -0
  125. package/dist/mcp-server/session-manager.mjs.map +1 -0
  126. package/dist/mcp-server/test-utils/flush-promises.cjs +10 -0
  127. package/dist/mcp-server/test-utils/flush-promises.cjs.map +1 -0
  128. package/dist/mcp-server/test-utils/flush-promises.d.cts +2 -0
  129. package/dist/mcp-server/test-utils/flush-promises.d.cts.map +1 -0
  130. package/dist/mcp-server/test-utils/flush-promises.d.mts +2 -0
  131. package/dist/mcp-server/test-utils/flush-promises.d.mts.map +1 -0
  132. package/dist/mcp-server/test-utils/flush-promises.mjs +7 -0
  133. package/dist/mcp-server/test-utils/flush-promises.mjs.map +1 -0
  134. package/dist/mcp-server/test-utils/index.cjs +13 -0
  135. package/dist/mcp-server/test-utils/index.cjs.map +1 -0
  136. package/dist/mcp-server/test-utils/index.d.cts +4 -0
  137. package/dist/mcp-server/test-utils/index.d.cts.map +1 -0
  138. package/dist/mcp-server/test-utils/index.d.mts +4 -0
  139. package/dist/mcp-server/test-utils/index.d.mts.map +1 -0
  140. package/dist/mcp-server/test-utils/index.mjs +4 -0
  141. package/dist/mcp-server/test-utils/index.mjs.map +1 -0
  142. package/dist/mcp-server/test-utils/mock-factories.cjs +129 -0
  143. package/dist/mcp-server/test-utils/mock-factories.cjs.map +1 -0
  144. package/dist/mcp-server/test-utils/mock-factories.d.cts +89 -0
  145. package/dist/mcp-server/test-utils/mock-factories.d.cts.map +1 -0
  146. package/dist/mcp-server/test-utils/mock-factories.d.mts +89 -0
  147. package/dist/mcp-server/test-utils/mock-factories.d.mts.map +1 -0
  148. package/dist/mcp-server/test-utils/mock-factories.mjs +125 -0
  149. package/dist/mcp-server/test-utils/mock-factories.mjs.map +1 -0
  150. package/dist/mcp-server/test-utils/mock-playwright.cjs +205 -0
  151. package/dist/mcp-server/test-utils/mock-playwright.cjs.map +1 -0
  152. package/dist/mcp-server/test-utils/mock-playwright.d.cts +69 -0
  153. package/dist/mcp-server/test-utils/mock-playwright.d.cts.map +1 -0
  154. package/dist/mcp-server/test-utils/mock-playwright.d.mts +69 -0
  155. package/dist/mcp-server/test-utils/mock-playwright.d.mts.map +1 -0
  156. package/dist/mcp-server/test-utils/mock-playwright.mjs +200 -0
  157. package/dist/mcp-server/test-utils/mock-playwright.mjs.map +1 -0
  158. package/dist/mcp-server/tokenization.cjs +117 -0
  159. package/dist/mcp-server/tokenization.cjs.map +1 -0
  160. package/dist/mcp-server/tokenization.d.cts +22 -0
  161. package/dist/mcp-server/tokenization.d.cts.map +1 -0
  162. package/dist/mcp-server/tokenization.d.mts +22 -0
  163. package/dist/mcp-server/tokenization.d.mts.map +1 -0
  164. package/dist/mcp-server/tokenization.mjs +112 -0
  165. package/dist/mcp-server/tokenization.mjs.map +1 -0
  166. package/dist/mcp-server/tools/batch.cjs +199 -0
  167. package/dist/mcp-server/tools/batch.cjs.map +1 -0
  168. package/dist/mcp-server/tools/batch.d.cts +81 -0
  169. package/dist/mcp-server/tools/batch.d.cts.map +1 -0
  170. package/dist/mcp-server/tools/batch.d.mts +81 -0
  171. package/dist/mcp-server/tools/batch.d.mts.map +1 -0
  172. package/dist/mcp-server/tools/batch.mjs +191 -0
  173. package/dist/mcp-server/tools/batch.mjs.map +1 -0
  174. package/dist/mcp-server/tools/build.cjs +47 -0
  175. package/dist/mcp-server/tools/build.cjs.map +1 -0
  176. package/dist/mcp-server/tools/build.d.cts +22 -0
  177. package/dist/mcp-server/tools/build.d.cts.map +1 -0
  178. package/dist/mcp-server/tools/build.d.mts +22 -0
  179. package/dist/mcp-server/tools/build.d.mts.map +1 -0
  180. package/dist/mcp-server/tools/build.mjs +44 -0
  181. package/dist/mcp-server/tools/build.mjs.map +1 -0
  182. package/dist/mcp-server/tools/cleanup.cjs +20 -0
  183. package/dist/mcp-server/tools/cleanup.cjs.map +1 -0
  184. package/dist/mcp-server/tools/cleanup.d.cts +10 -0
  185. package/dist/mcp-server/tools/cleanup.d.cts.map +1 -0
  186. package/dist/mcp-server/tools/cleanup.d.mts +10 -0
  187. package/dist/mcp-server/tools/cleanup.d.mts.map +1 -0
  188. package/dist/mcp-server/tools/cleanup.mjs +17 -0
  189. package/dist/mcp-server/tools/cleanup.mjs.map +1 -0
  190. package/dist/mcp-server/tools/clipboard.cjs +100 -0
  191. package/dist/mcp-server/tools/clipboard.cjs.map +1 -0
  192. package/dist/mcp-server/tools/clipboard.d.cts +16 -0
  193. package/dist/mcp-server/tools/clipboard.d.cts.map +1 -0
  194. package/dist/mcp-server/tools/clipboard.d.mts +16 -0
  195. package/dist/mcp-server/tools/clipboard.d.mts.map +1 -0
  196. package/dist/mcp-server/tools/clipboard.mjs +97 -0
  197. package/dist/mcp-server/tools/clipboard.mjs.map +1 -0
  198. package/dist/mcp-server/tools/context.cjs +66 -0
  199. package/dist/mcp-server/tools/context.cjs.map +1 -0
  200. package/dist/mcp-server/tools/context.d.cts +35 -0
  201. package/dist/mcp-server/tools/context.d.cts.map +1 -0
  202. package/dist/mcp-server/tools/context.d.mts +35 -0
  203. package/dist/mcp-server/tools/context.d.mts.map +1 -0
  204. package/dist/mcp-server/tools/context.mjs +62 -0
  205. package/dist/mcp-server/tools/context.mjs.map +1 -0
  206. package/dist/mcp-server/tools/definitions.cjs +463 -0
  207. package/dist/mcp-server/tools/definitions.cjs.map +1 -0
  208. package/dist/mcp-server/tools/definitions.d.cts +97 -0
  209. package/dist/mcp-server/tools/definitions.d.cts.map +1 -0
  210. package/dist/mcp-server/tools/definitions.d.mts +97 -0
  211. package/dist/mcp-server/tools/definitions.d.mts.map +1 -0
  212. package/dist/mcp-server/tools/definitions.mjs +451 -0
  213. package/dist/mcp-server/tools/definitions.mjs.map +1 -0
  214. package/dist/mcp-server/tools/discovery-tools.cjs +162 -0
  215. package/dist/mcp-server/tools/discovery-tools.cjs.map +1 -0
  216. package/dist/mcp-server/tools/discovery-tools.d.cts +26 -0
  217. package/dist/mcp-server/tools/discovery-tools.d.cts.map +1 -0
  218. package/dist/mcp-server/tools/discovery-tools.d.mts +26 -0
  219. package/dist/mcp-server/tools/discovery-tools.d.mts.map +1 -0
  220. package/dist/mcp-server/tools/discovery-tools.mjs +157 -0
  221. package/dist/mcp-server/tools/discovery-tools.mjs.map +1 -0
  222. package/dist/mcp-server/tools/error-classification.cjs +296 -0
  223. package/dist/mcp-server/tools/error-classification.cjs.map +1 -0
  224. package/dist/mcp-server/tools/error-classification.d.cts +135 -0
  225. package/dist/mcp-server/tools/error-classification.d.cts.map +1 -0
  226. package/dist/mcp-server/tools/error-classification.d.mts +135 -0
  227. package/dist/mcp-server/tools/error-classification.d.mts.map +1 -0
  228. package/dist/mcp-server/tools/error-classification.mjs +281 -0
  229. package/dist/mcp-server/tools/error-classification.mjs.map +1 -0
  230. package/dist/mcp-server/tools/helpers.cjs +149 -0
  231. package/dist/mcp-server/tools/helpers.cjs.map +1 -0
  232. package/dist/mcp-server/tools/helpers.d.cts +149 -0
  233. package/dist/mcp-server/tools/helpers.d.cts.map +1 -0
  234. package/dist/mcp-server/tools/helpers.d.mts +149 -0
  235. package/dist/mcp-server/tools/helpers.d.mts.map +1 -0
  236. package/dist/mcp-server/tools/helpers.mjs +141 -0
  237. package/dist/mcp-server/tools/helpers.mjs.map +1 -0
  238. package/dist/mcp-server/tools/index.cjs +27 -0
  239. package/dist/mcp-server/tools/index.cjs.map +1 -0
  240. package/dist/mcp-server/tools/index.d.cts +11 -0
  241. package/dist/mcp-server/tools/index.d.cts.map +1 -0
  242. package/dist/mcp-server/tools/index.d.mts +11 -0
  243. package/dist/mcp-server/tools/index.d.mts.map +1 -0
  244. package/dist/mcp-server/tools/index.mjs +11 -0
  245. package/dist/mcp-server/tools/index.mjs.map +1 -0
  246. package/dist/mcp-server/tools/interaction.cjs +190 -0
  247. package/dist/mcp-server/tools/interaction.cjs.map +1 -0
  248. package/dist/mcp-server/tools/interaction.d.cts +26 -0
  249. package/dist/mcp-server/tools/interaction.d.cts.map +1 -0
  250. package/dist/mcp-server/tools/interaction.d.mts +26 -0
  251. package/dist/mcp-server/tools/interaction.d.mts.map +1 -0
  252. package/dist/mcp-server/tools/interaction.mjs +185 -0
  253. package/dist/mcp-server/tools/interaction.mjs.map +1 -0
  254. package/dist/mcp-server/tools/knowledge.cjs +120 -0
  255. package/dist/mcp-server/tools/knowledge.cjs.map +1 -0
  256. package/dist/mcp-server/tools/knowledge.d.cts +34 -0
  257. package/dist/mcp-server/tools/knowledge.d.cts.map +1 -0
  258. package/dist/mcp-server/tools/knowledge.d.mts +34 -0
  259. package/dist/mcp-server/tools/knowledge.d.mts.map +1 -0
  260. package/dist/mcp-server/tools/knowledge.mjs +114 -0
  261. package/dist/mcp-server/tools/knowledge.mjs.map +1 -0
  262. package/dist/mcp-server/tools/launch.cjs +51 -0
  263. package/dist/mcp-server/tools/launch.cjs.map +1 -0
  264. package/dist/mcp-server/tools/launch.d.cts +10 -0
  265. package/dist/mcp-server/tools/launch.d.cts.map +1 -0
  266. package/dist/mcp-server/tools/launch.d.mts +10 -0
  267. package/dist/mcp-server/tools/launch.d.mts.map +1 -0
  268. package/dist/mcp-server/tools/launch.mjs +48 -0
  269. package/dist/mcp-server/tools/launch.mjs.map +1 -0
  270. package/dist/mcp-server/tools/navigation.cjs +242 -0
  271. package/dist/mcp-server/tools/navigation.cjs.map +1 -0
  272. package/dist/mcp-server/tools/navigation.d.cts +34 -0
  273. package/dist/mcp-server/tools/navigation.d.cts.map +1 -0
  274. package/dist/mcp-server/tools/navigation.d.mts +34 -0
  275. package/dist/mcp-server/tools/navigation.d.mts.map +1 -0
  276. package/dist/mcp-server/tools/navigation.mjs +236 -0
  277. package/dist/mcp-server/tools/navigation.mjs.map +1 -0
  278. package/dist/mcp-server/tools/registry.cjs +10 -0
  279. package/dist/mcp-server/tools/registry.cjs.map +1 -0
  280. package/dist/mcp-server/tools/registry.d.cts +4 -0
  281. package/dist/mcp-server/tools/registry.d.cts.map +1 -0
  282. package/dist/mcp-server/tools/registry.d.mts +4 -0
  283. package/dist/mcp-server/tools/registry.d.mts.map +1 -0
  284. package/dist/mcp-server/tools/registry.mjs +4 -0
  285. package/dist/mcp-server/tools/registry.mjs.map +1 -0
  286. package/dist/mcp-server/tools/run-tool.cjs +140 -0
  287. package/dist/mcp-server/tools/run-tool.cjs.map +1 -0
  288. package/dist/mcp-server/tools/run-tool.d.cts +39 -0
  289. package/dist/mcp-server/tools/run-tool.d.cts.map +1 -0
  290. package/dist/mcp-server/tools/run-tool.d.mts +39 -0
  291. package/dist/mcp-server/tools/run-tool.d.mts.map +1 -0
  292. package/dist/mcp-server/tools/run-tool.mjs +137 -0
  293. package/dist/mcp-server/tools/run-tool.mjs.map +1 -0
  294. package/dist/mcp-server/tools/screenshot.cjs +55 -0
  295. package/dist/mcp-server/tools/screenshot.cjs.map +1 -0
  296. package/dist/mcp-server/tools/screenshot.d.cts +10 -0
  297. package/dist/mcp-server/tools/screenshot.d.cts.map +1 -0
  298. package/dist/mcp-server/tools/screenshot.d.mts +10 -0
  299. package/dist/mcp-server/tools/screenshot.d.mts.map +1 -0
  300. package/dist/mcp-server/tools/screenshot.mjs +52 -0
  301. package/dist/mcp-server/tools/screenshot.mjs.map +1 -0
  302. package/dist/mcp-server/tools/seeding.cjs +214 -0
  303. package/dist/mcp-server/tools/seeding.cjs.map +1 -0
  304. package/dist/mcp-server/tools/seeding.d.cts +38 -0
  305. package/dist/mcp-server/tools/seeding.d.cts.map +1 -0
  306. package/dist/mcp-server/tools/seeding.d.mts +38 -0
  307. package/dist/mcp-server/tools/seeding.d.mts.map +1 -0
  308. package/dist/mcp-server/tools/seeding.mjs +208 -0
  309. package/dist/mcp-server/tools/seeding.mjs.map +1 -0
  310. package/dist/mcp-server/tools/state.cjs +69 -0
  311. package/dist/mcp-server/tools/state.cjs.map +1 -0
  312. package/dist/mcp-server/tools/state.d.cts +19 -0
  313. package/dist/mcp-server/tools/state.d.cts.map +1 -0
  314. package/dist/mcp-server/tools/state.d.mts +19 -0
  315. package/dist/mcp-server/tools/state.d.mts.map +1 -0
  316. package/dist/mcp-server/tools/state.mjs +66 -0
  317. package/dist/mcp-server/tools/state.mjs.map +1 -0
  318. package/dist/mcp-server/types/discovery.cjs +24 -0
  319. package/dist/mcp-server/types/discovery.cjs.map +1 -0
  320. package/dist/mcp-server/types/discovery.d.cts +30 -0
  321. package/dist/mcp-server/types/discovery.d.cts.map +1 -0
  322. package/dist/mcp-server/types/discovery.d.mts +30 -0
  323. package/dist/mcp-server/types/discovery.d.mts.map +1 -0
  324. package/dist/mcp-server/types/discovery.mjs +21 -0
  325. package/dist/mcp-server/types/discovery.mjs.map +1 -0
  326. package/dist/mcp-server/types/errors.cjs +33 -0
  327. package/dist/mcp-server/types/errors.cjs.map +1 -0
  328. package/dist/mcp-server/types/errors.d.cts +31 -0
  329. package/dist/mcp-server/types/errors.d.cts.map +1 -0
  330. package/dist/mcp-server/types/errors.d.mts +31 -0
  331. package/dist/mcp-server/types/errors.d.mts.map +1 -0
  332. package/dist/mcp-server/types/errors.mjs +30 -0
  333. package/dist/mcp-server/types/errors.mjs.map +1 -0
  334. package/dist/mcp-server/types/index.cjs +21 -0
  335. package/dist/mcp-server/types/index.cjs.map +1 -0
  336. package/dist/mcp-server/types/index.d.cts +10 -0
  337. package/dist/mcp-server/types/index.d.cts.map +1 -0
  338. package/dist/mcp-server/types/index.d.mts +10 -0
  339. package/dist/mcp-server/types/index.d.mts.map +1 -0
  340. package/dist/mcp-server/types/index.mjs +5 -0
  341. package/dist/mcp-server/types/index.mjs.map +1 -0
  342. package/dist/mcp-server/types/knowledge.cjs +3 -0
  343. package/dist/mcp-server/types/knowledge.cjs.map +1 -0
  344. package/dist/mcp-server/types/knowledge.d.cts +116 -0
  345. package/dist/mcp-server/types/knowledge.d.cts.map +1 -0
  346. package/dist/mcp-server/types/knowledge.d.mts +116 -0
  347. package/dist/mcp-server/types/knowledge.d.mts.map +1 -0
  348. package/dist/mcp-server/types/knowledge.mjs +2 -0
  349. package/dist/mcp-server/types/knowledge.mjs.map +1 -0
  350. package/dist/mcp-server/types/responses.cjs +3 -0
  351. package/dist/mcp-server/types/responses.cjs.map +1 -0
  352. package/dist/mcp-server/types/responses.d.cts +22 -0
  353. package/dist/mcp-server/types/responses.d.cts.map +1 -0
  354. package/dist/mcp-server/types/responses.d.mts +22 -0
  355. package/dist/mcp-server/types/responses.d.mts.map +1 -0
  356. package/dist/mcp-server/types/responses.mjs +2 -0
  357. package/dist/mcp-server/types/responses.mjs.map +1 -0
  358. package/dist/mcp-server/types/seeding.cjs +34 -0
  359. package/dist/mcp-server/types/seeding.cjs.map +1 -0
  360. package/dist/mcp-server/types/seeding.d.cts +40 -0
  361. package/dist/mcp-server/types/seeding.d.cts.map +1 -0
  362. package/dist/mcp-server/types/seeding.d.mts +40 -0
  363. package/dist/mcp-server/types/seeding.d.mts.map +1 -0
  364. package/dist/mcp-server/types/seeding.mjs +31 -0
  365. package/dist/mcp-server/types/seeding.mjs.map +1 -0
  366. package/dist/mcp-server/types/session.cjs +3 -0
  367. package/dist/mcp-server/types/session.cjs.map +1 -0
  368. package/dist/mcp-server/types/session.d.cts +11 -0
  369. package/dist/mcp-server/types/session.d.cts.map +1 -0
  370. package/dist/mcp-server/types/session.d.mts +11 -0
  371. package/dist/mcp-server/types/session.d.mts.map +1 -0
  372. package/dist/mcp-server/types/session.mjs +2 -0
  373. package/dist/mcp-server/types/session.mjs.map +1 -0
  374. package/dist/mcp-server/types/step-record.cjs +20 -0
  375. package/dist/mcp-server/types/step-record.cjs.map +1 -0
  376. package/dist/mcp-server/types/step-record.d.cts +86 -0
  377. package/dist/mcp-server/types/step-record.d.cts.map +1 -0
  378. package/dist/mcp-server/types/step-record.d.mts +86 -0
  379. package/dist/mcp-server/types/step-record.d.mts.map +1 -0
  380. package/dist/mcp-server/types/step-record.mjs +17 -0
  381. package/dist/mcp-server/types/step-record.mjs.map +1 -0
  382. package/dist/mcp-server/types/tool-inputs.cjs +3 -0
  383. package/dist/mcp-server/types/tool-inputs.cjs.map +1 -0
  384. package/dist/mcp-server/types/tool-inputs.d.cts +118 -0
  385. package/dist/mcp-server/types/tool-inputs.d.cts.map +1 -0
  386. package/dist/mcp-server/types/tool-inputs.d.mts +118 -0
  387. package/dist/mcp-server/types/tool-inputs.d.mts.map +1 -0
  388. package/dist/mcp-server/types/tool-inputs.mjs +2 -0
  389. package/dist/mcp-server/types/tool-inputs.mjs.map +1 -0
  390. package/dist/mcp-server/types/tool-outputs.cjs +3 -0
  391. package/dist/mcp-server/types/tool-outputs.cjs.map +1 -0
  392. package/dist/mcp-server/types/tool-outputs.d.cts +121 -0
  393. package/dist/mcp-server/types/tool-outputs.d.cts.map +1 -0
  394. package/dist/mcp-server/types/tool-outputs.d.mts +121 -0
  395. package/dist/mcp-server/types/tool-outputs.d.mts.map +1 -0
  396. package/dist/mcp-server/types/tool-outputs.mjs +2 -0
  397. package/dist/mcp-server/types/tool-outputs.mjs.map +1 -0
  398. package/dist/mcp-server/utils/errors.cjs +14 -0
  399. package/dist/mcp-server/utils/errors.cjs.map +1 -0
  400. package/dist/mcp-server/utils/errors.d.cts +9 -0
  401. package/dist/mcp-server/utils/errors.d.cts.map +1 -0
  402. package/dist/mcp-server/utils/errors.d.mts +9 -0
  403. package/dist/mcp-server/utils/errors.d.mts.map +1 -0
  404. package/dist/mcp-server/utils/errors.mjs +11 -0
  405. package/dist/mcp-server/utils/errors.mjs.map +1 -0
  406. package/dist/mcp-server/utils/index.cjs +22 -0
  407. package/dist/mcp-server/utils/index.cjs.map +1 -0
  408. package/dist/mcp-server/utils/index.d.cts +8 -0
  409. package/dist/mcp-server/utils/index.d.cts.map +1 -0
  410. package/dist/mcp-server/utils/index.d.mts +8 -0
  411. package/dist/mcp-server/utils/index.d.mts.map +1 -0
  412. package/dist/mcp-server/utils/index.mjs +8 -0
  413. package/dist/mcp-server/utils/index.mjs.map +1 -0
  414. package/dist/mcp-server/utils/logger.cjs +25 -0
  415. package/dist/mcp-server/utils/logger.cjs.map +1 -0
  416. package/dist/mcp-server/utils/logger.d.cts +9 -0
  417. package/dist/mcp-server/utils/logger.d.cts.map +1 -0
  418. package/dist/mcp-server/utils/logger.d.mts +9 -0
  419. package/dist/mcp-server/utils/logger.d.mts.map +1 -0
  420. package/dist/mcp-server/utils/logger.mjs +22 -0
  421. package/dist/mcp-server/utils/logger.mjs.map +1 -0
  422. package/dist/mcp-server/utils/redaction.cjs +24 -0
  423. package/dist/mcp-server/utils/redaction.cjs.map +1 -0
  424. package/dist/mcp-server/utils/redaction.d.cts +9 -0
  425. package/dist/mcp-server/utils/redaction.d.cts.map +1 -0
  426. package/dist/mcp-server/utils/redaction.d.mts +9 -0
  427. package/dist/mcp-server/utils/redaction.d.mts.map +1 -0
  428. package/dist/mcp-server/utils/redaction.mjs +20 -0
  429. package/dist/mcp-server/utils/redaction.mjs.map +1 -0
  430. package/dist/mcp-server/utils/response.cjs +49 -0
  431. package/dist/mcp-server/utils/response.cjs.map +1 -0
  432. package/dist/mcp-server/utils/response.d.cts +22 -0
  433. package/dist/mcp-server/utils/response.d.cts.map +1 -0
  434. package/dist/mcp-server/utils/response.d.mts +22 -0
  435. package/dist/mcp-server/utils/response.d.mts.map +1 -0
  436. package/dist/mcp-server/utils/response.mjs +45 -0
  437. package/dist/mcp-server/utils/response.mjs.map +1 -0
  438. package/dist/mcp-server/utils/targets.cjs +32 -0
  439. package/dist/mcp-server/utils/targets.cjs.map +1 -0
  440. package/dist/mcp-server/utils/targets.d.cts +25 -0
  441. package/dist/mcp-server/utils/targets.d.cts.map +1 -0
  442. package/dist/mcp-server/utils/targets.d.mts +25 -0
  443. package/dist/mcp-server/utils/targets.d.mts.map +1 -0
  444. package/dist/mcp-server/utils/targets.mjs +29 -0
  445. package/dist/mcp-server/utils/targets.mjs.map +1 -0
  446. package/dist/mcp-server/utils/time.cjs +39 -0
  447. package/dist/mcp-server/utils/time.cjs.map +1 -0
  448. package/dist/mcp-server/utils/time.d.cts +15 -0
  449. package/dist/mcp-server/utils/time.d.cts.map +1 -0
  450. package/dist/mcp-server/utils/time.d.mts +15 -0
  451. package/dist/mcp-server/utils/time.d.mts.map +1 -0
  452. package/dist/mcp-server/utils/time.mjs +35 -0
  453. package/dist/mcp-server/utils/time.mjs.map +1 -0
  454. package/dist/mcp-server/utils/type-guards.cjs +42 -0
  455. package/dist/mcp-server/utils/type-guards.cjs.map +1 -0
  456. package/dist/mcp-server/utils/type-guards.d.cts +30 -0
  457. package/dist/mcp-server/utils/type-guards.d.cts.map +1 -0
  458. package/dist/mcp-server/utils/type-guards.d.mts +30 -0
  459. package/dist/mcp-server/utils/type-guards.d.mts.map +1 -0
  460. package/dist/mcp-server/utils/type-guards.mjs +38 -0
  461. package/dist/mcp-server/utils/type-guards.mjs.map +1 -0
  462. package/dist/utils/fetch.cjs +36 -0
  463. package/dist/utils/fetch.cjs.map +1 -0
  464. package/dist/utils/fetch.d.cts +20 -0
  465. package/dist/utils/fetch.d.cts.map +1 -0
  466. package/dist/utils/fetch.d.mts +20 -0
  467. package/dist/utils/fetch.d.mts.map +1 -0
  468. package/dist/utils/fetch.mjs +33 -0
  469. package/dist/utils/fetch.mjs.map +1 -0
  470. package/dist/utils/index.cjs +11 -0
  471. package/dist/utils/index.cjs.map +1 -0
  472. package/dist/utils/index.d.cts +6 -0
  473. package/dist/utils/index.d.cts.map +1 -0
  474. package/dist/utils/index.d.mts +6 -0
  475. package/dist/utils/index.d.mts.map +1 -0
  476. package/dist/utils/index.mjs +6 -0
  477. package/dist/utils/index.mjs.map +1 -0
  478. package/dist/utils/service-readiness.cjs +75 -0
  479. package/dist/utils/service-readiness.cjs.map +1 -0
  480. package/dist/utils/service-readiness.d.cts +61 -0
  481. package/dist/utils/service-readiness.d.cts.map +1 -0
  482. package/dist/utils/service-readiness.d.mts +61 -0
  483. package/dist/utils/service-readiness.d.mts.map +1 -0
  484. package/dist/utils/service-readiness.mjs +72 -0
  485. package/dist/utils/service-readiness.mjs.map +1 -0
  486. package/package.json +119 -0
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.fetchWithTimeout = fetchWithTimeout;
4
+ /**
5
+ * Fetch with configurable timeout using AbortController
6
+ *
7
+ * @param url - The URL to fetch
8
+ * @param options - Standard fetch options (method, headers, body, etc.)
9
+ * @param timeoutMs - Timeout in milliseconds (default: 5000ms)
10
+ * @returns Promise resolving to the fetch Response
11
+ * @throws Error if the request times out or fails
12
+ *
13
+ * @example
14
+ * ```typescript
15
+ * const response = await fetchWithTimeout(
16
+ * 'http://localhost:8545',
17
+ * { method: 'GET' },
18
+ * 3000
19
+ * );
20
+ * ```
21
+ */
22
+ async function fetchWithTimeout(url, options = {}, timeoutMs = 5000) {
23
+ const controller = new AbortController();
24
+ const timeoutId = setTimeout(() => controller.abort(), timeoutMs);
25
+ try {
26
+ const response = await fetch(url, {
27
+ ...options,
28
+ signal: controller.signal,
29
+ });
30
+ return response;
31
+ }
32
+ finally {
33
+ clearTimeout(timeoutId);
34
+ }
35
+ }
36
+ //# sourceMappingURL=fetch.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fetch.cjs","sourceRoot":"","sources":["../../src/utils/fetch.ts"],"names":[],"mappings":";;AAkBA,4CAiBC;AAnCD;;;;;;;;;;;;;;;;;GAiBG;AACI,KAAK,UAAU,gBAAgB,CACpC,GAAW,EACX,UAAuB,EAAE,EACzB,SAAS,GAAG,IAAI;IAEhB,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;IACzC,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,EAAE,SAAS,CAAC,CAAC;IAElE,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;YAChC,GAAG,OAAO;YACV,MAAM,EAAE,UAAU,CAAC,MAAM;SAC1B,CAAC,CAAC;QACH,OAAO,QAAQ,CAAC;IAClB,CAAC;YAAS,CAAC;QACT,YAAY,CAAC,SAAS,CAAC,CAAC;IAC1B,CAAC;AACH,CAAC","sourcesContent":["/**\n * Fetch with configurable timeout using AbortController\n *\n * @param url - The URL to fetch\n * @param options - Standard fetch options (method, headers, body, etc.)\n * @param timeoutMs - Timeout in milliseconds (default: 5000ms)\n * @returns Promise resolving to the fetch Response\n * @throws Error if the request times out or fails\n *\n * @example\n * ```typescript\n * const response = await fetchWithTimeout(\n * 'http://localhost:8545',\n * { method: 'GET' },\n * 3000\n * );\n * ```\n */\nexport async function fetchWithTimeout(\n url: string,\n options: RequestInit = {},\n timeoutMs = 5000,\n): Promise<Response> {\n const controller = new AbortController();\n const timeoutId = setTimeout(() => controller.abort(), timeoutMs);\n\n try {\n const response = await fetch(url, {\n ...options,\n signal: controller.signal,\n });\n return response;\n } finally {\n clearTimeout(timeoutId);\n }\n}\n"]}
@@ -0,0 +1,20 @@
1
+ /**
2
+ * Fetch with configurable timeout using AbortController
3
+ *
4
+ * @param url - The URL to fetch
5
+ * @param options - Standard fetch options (method, headers, body, etc.)
6
+ * @param timeoutMs - Timeout in milliseconds (default: 5000ms)
7
+ * @returns Promise resolving to the fetch Response
8
+ * @throws Error if the request times out or fails
9
+ *
10
+ * @example
11
+ * ```typescript
12
+ * const response = await fetchWithTimeout(
13
+ * 'http://localhost:8545',
14
+ * { method: 'GET' },
15
+ * 3000
16
+ * );
17
+ * ```
18
+ */
19
+ export declare function fetchWithTimeout(url: string, options?: RequestInit, timeoutMs?: number): Promise<Response>;
20
+ //# sourceMappingURL=fetch.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fetch.d.cts","sourceRoot":"","sources":["../../src/utils/fetch.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,gBAAgB,CACpC,GAAG,EAAE,MAAM,EACX,OAAO,GAAE,WAAgB,EACzB,SAAS,SAAO,GACf,OAAO,CAAC,QAAQ,CAAC,CAanB"}
@@ -0,0 +1,20 @@
1
+ /**
2
+ * Fetch with configurable timeout using AbortController
3
+ *
4
+ * @param url - The URL to fetch
5
+ * @param options - Standard fetch options (method, headers, body, etc.)
6
+ * @param timeoutMs - Timeout in milliseconds (default: 5000ms)
7
+ * @returns Promise resolving to the fetch Response
8
+ * @throws Error if the request times out or fails
9
+ *
10
+ * @example
11
+ * ```typescript
12
+ * const response = await fetchWithTimeout(
13
+ * 'http://localhost:8545',
14
+ * { method: 'GET' },
15
+ * 3000
16
+ * );
17
+ * ```
18
+ */
19
+ export declare function fetchWithTimeout(url: string, options?: RequestInit, timeoutMs?: number): Promise<Response>;
20
+ //# sourceMappingURL=fetch.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fetch.d.mts","sourceRoot":"","sources":["../../src/utils/fetch.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,gBAAgB,CACpC,GAAG,EAAE,MAAM,EACX,OAAO,GAAE,WAAgB,EACzB,SAAS,SAAO,GACf,OAAO,CAAC,QAAQ,CAAC,CAanB"}
@@ -0,0 +1,33 @@
1
+ /**
2
+ * Fetch with configurable timeout using AbortController
3
+ *
4
+ * @param url - The URL to fetch
5
+ * @param options - Standard fetch options (method, headers, body, etc.)
6
+ * @param timeoutMs - Timeout in milliseconds (default: 5000ms)
7
+ * @returns Promise resolving to the fetch Response
8
+ * @throws Error if the request times out or fails
9
+ *
10
+ * @example
11
+ * ```typescript
12
+ * const response = await fetchWithTimeout(
13
+ * 'http://localhost:8545',
14
+ * { method: 'GET' },
15
+ * 3000
16
+ * );
17
+ * ```
18
+ */
19
+ export async function fetchWithTimeout(url, options = {}, timeoutMs = 5000) {
20
+ const controller = new AbortController();
21
+ const timeoutId = setTimeout(() => controller.abort(), timeoutMs);
22
+ try {
23
+ const response = await fetch(url, {
24
+ ...options,
25
+ signal: controller.signal,
26
+ });
27
+ return response;
28
+ }
29
+ finally {
30
+ clearTimeout(timeoutId);
31
+ }
32
+ }
33
+ //# sourceMappingURL=fetch.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fetch.mjs","sourceRoot":"","sources":["../../src/utils/fetch.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,GAAW,EACX,UAAuB,EAAE,EACzB,SAAS,GAAG,IAAI;IAEhB,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;IACzC,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,EAAE,SAAS,CAAC,CAAC;IAElE,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;YAChC,GAAG,OAAO;YACV,MAAM,EAAE,UAAU,CAAC,MAAM;SAC1B,CAAC,CAAC;QACH,OAAO,QAAQ,CAAC;IAClB,CAAC;YAAS,CAAC;QACT,YAAY,CAAC,SAAS,CAAC,CAAC;IAC1B,CAAC;AACH,CAAC","sourcesContent":["/**\n * Fetch with configurable timeout using AbortController\n *\n * @param url - The URL to fetch\n * @param options - Standard fetch options (method, headers, body, etc.)\n * @param timeoutMs - Timeout in milliseconds (default: 5000ms)\n * @returns Promise resolving to the fetch Response\n * @throws Error if the request times out or fails\n *\n * @example\n * ```typescript\n * const response = await fetchWithTimeout(\n * 'http://localhost:8545',\n * { method: 'GET' },\n * 3000\n * );\n * ```\n */\nexport async function fetchWithTimeout(\n url: string,\n options: RequestInit = {},\n timeoutMs = 5000,\n): Promise<Response> {\n const controller = new AbortController();\n const timeoutId = setTimeout(() => controller.abort(), timeoutMs);\n\n try {\n const response = await fetch(url, {\n ...options,\n signal: controller.signal,\n });\n return response;\n } finally {\n clearTimeout(timeoutId);\n }\n}\n"]}
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ /**
3
+ * Shared utility functions
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.waitForServiceReady = exports.fetchWithTimeout = void 0;
7
+ var fetch_js_1 = require("./fetch.cjs");
8
+ Object.defineProperty(exports, "fetchWithTimeout", { enumerable: true, get: function () { return fetch_js_1.fetchWithTimeout; } });
9
+ var service_readiness_js_1 = require("./service-readiness.cjs");
10
+ Object.defineProperty(exports, "waitForServiceReady", { enumerable: true, get: function () { return service_readiness_js_1.waitForServiceReady; } });
11
+ //# sourceMappingURL=index.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.cjs","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAEH,wCAA8C;AAArC,4GAAA,gBAAgB,OAAA;AACzB,gEAGgC;AAF9B,2HAAA,mBAAmB,OAAA","sourcesContent":["/**\n * Shared utility functions\n */\n\nexport { fetchWithTimeout } from './fetch.js';\nexport {\n waitForServiceReady,\n type WaitForServiceReadyOptions,\n} from './service-readiness.js';\n"]}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Shared utility functions
3
+ */
4
+ export { fetchWithTimeout } from "./fetch.cjs";
5
+ export { waitForServiceReady, type WaitForServiceReadyOptions, } from "./service-readiness.cjs";
6
+ //# sourceMappingURL=index.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.cts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,gBAAgB,EAAE,oBAAmB;AAC9C,OAAO,EACL,mBAAmB,EACnB,KAAK,0BAA0B,GAChC,gCAA+B"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Shared utility functions
3
+ */
4
+ export { fetchWithTimeout } from "./fetch.mjs";
5
+ export { waitForServiceReady, type WaitForServiceReadyOptions, } from "./service-readiness.mjs";
6
+ //# sourceMappingURL=index.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.mts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,gBAAgB,EAAE,oBAAmB;AAC9C,OAAO,EACL,mBAAmB,EACnB,KAAK,0BAA0B,GAChC,gCAA+B"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Shared utility functions
3
+ */
4
+ export { fetchWithTimeout } from "./fetch.mjs";
5
+ export { waitForServiceReady } from "./service-readiness.mjs";
6
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,gBAAgB,EAAE,oBAAmB;AAC9C,OAAO,EACL,mBAAmB,EAEpB,gCAA+B","sourcesContent":["/**\n * Shared utility functions\n */\n\nexport { fetchWithTimeout } from './fetch.js';\nexport {\n waitForServiceReady,\n type WaitForServiceReadyOptions,\n} from './service-readiness.js';\n"]}
@@ -0,0 +1,75 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.waitForServiceReady = waitForServiceReady;
4
+ const fetch_js_1 = require("./fetch.cjs");
5
+ /**
6
+ * Wait for a service to become ready by polling an endpoint
7
+ *
8
+ * Repeatedly attempts to fetch from the given URL until either:
9
+ * - The service responds with a successful status (2xx or 503)
10
+ * - Maximum attempts are reached (throws error)
11
+ *
12
+ * @param url - The URL to poll for service readiness
13
+ * @param options - Configuration options
14
+ * @throws Error if service doesn't become ready within maxAttempts
15
+ *
16
+ * @example
17
+ * ```typescript
18
+ * // Wait for fixture server to be ready
19
+ * await waitForServiceReady('http://localhost:12345/state.json', {
20
+ * maxAttempts: 10,
21
+ * delayMs: 500,
22
+ * timeoutMs: 3000,
23
+ * });
24
+ * ```
25
+ *
26
+ * @example
27
+ * ```typescript
28
+ * // With custom fetch function
29
+ * await waitForServiceReady('http://localhost:8545', {
30
+ * fetchFn: customFetch,
31
+ * maxAttempts: 5,
32
+ * });
33
+ * ```
34
+ */
35
+ async function waitForServiceReady(url, options = {}) {
36
+ const { maxAttempts = 10, delayMs = 500, fetchFn = fetch_js_1.fetchWithTimeout, timeoutMs = 3000, } = options;
37
+ for (let attempt = 0; attempt < maxAttempts; attempt++) {
38
+ try {
39
+ const response = await fetchFn(url, {}, timeoutMs);
40
+ // Service is ready if it responds with 2xx or 503 (service unavailable but responding)
41
+ if (response.ok || response.status === 503) {
42
+ return;
43
+ }
44
+ }
45
+ catch (error) {
46
+ const caughtError = error;
47
+ // Connection refused - service not yet started, retry
48
+ if (caughtError.cause &&
49
+ JSON.stringify(caughtError.cause).includes('ECONNREFUSED')) {
50
+ await delay(delayMs);
51
+ continue;
52
+ }
53
+ // Timeout - service slow to respond, retry
54
+ if (caughtError.name === 'AbortError') {
55
+ await delay(delayMs);
56
+ continue;
57
+ }
58
+ // Other errors (e.g., self-signed cert accepted) - consider service ready
59
+ return;
60
+ }
61
+ // Response received but not ok/503 - retry
62
+ await delay(delayMs);
63
+ }
64
+ throw new Error(`Service at ${url} failed to become ready after ${maxAttempts} attempts`);
65
+ }
66
+ /**
67
+ * Delay helper function.
68
+ *
69
+ * @param ms - The delay in milliseconds.
70
+ * @returns A promise that resolves after the delay.
71
+ */
72
+ async function delay(ms) {
73
+ return new Promise((resolve) => setTimeout(resolve, ms));
74
+ }
75
+ //# sourceMappingURL=service-readiness.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"service-readiness.cjs","sourceRoot":"","sources":["../../src/utils/service-readiness.ts"],"names":[],"mappings":";;AAiEA,kDAgDC;AAjHD,0CAA8C;AAmC9C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACI,KAAK,UAAU,mBAAmB,CACvC,GAAW,EACX,UAAsC,EAAE;IAExC,MAAM,EACJ,WAAW,GAAG,EAAE,EAChB,OAAO,GAAG,GAAG,EACb,OAAO,GAAG,2BAAgB,EAC1B,SAAS,GAAG,IAAI,GACjB,GAAG,OAAO,CAAC;IAEZ,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,GAAG,WAAW,EAAE,OAAO,EAAE,EAAE,CAAC;QACvD,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,GAAG,EAAE,EAAE,EAAE,SAAS,CAAC,CAAC;YAEnD,uFAAuF;YACvF,IAAI,QAAQ,CAAC,EAAE,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;gBAC3C,OAAO;YACT,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,WAAW,GAAG,KAAc,CAAC;YAEnC,sDAAsD;YACtD,IACE,WAAW,CAAC,KAAK;gBACjB,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,cAAc,CAAC,EAC1D,CAAC;gBACD,MAAM,KAAK,CAAC,OAAO,CAAC,CAAC;gBACrB,SAAS;YACX,CAAC;YAED,2CAA2C;YAC3C,IAAI,WAAW,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;gBACtC,MAAM,KAAK,CAAC,OAAO,CAAC,CAAC;gBACrB,SAAS;YACX,CAAC;YAED,0EAA0E;YAC1E,OAAO;QACT,CAAC;QAED,2CAA2C;QAC3C,MAAM,KAAK,CAAC,OAAO,CAAC,CAAC;IACvB,CAAC;IAED,MAAM,IAAI,KAAK,CACb,cAAc,GAAG,iCAAiC,WAAW,WAAW,CACzE,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,KAAK,UAAU,KAAK,CAAC,EAAU;IAC7B,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;AAC3D,CAAC","sourcesContent":["import { fetchWithTimeout } from './fetch.js';\n\n/**\n * Options for waitForServiceReady\n */\nexport type WaitForServiceReadyOptions = {\n /**\n * Maximum number of attempts to check service readiness\n *\n * @default 10\n */\n maxAttempts?: number;\n\n /**\n * Delay in milliseconds between attempts\n *\n * @default 500\n */\n delayMs?: number;\n\n /**\n * Custom fetch function (useful for testing or custom timeout behavior)\n *\n * @default fetchWithTimeout\n */\n fetchFn?: typeof fetch;\n\n /**\n * Timeout in milliseconds for each fetch attempt\n *\n * @default 3000\n */\n timeoutMs?: number;\n};\n\n/**\n * Wait for a service to become ready by polling an endpoint\n *\n * Repeatedly attempts to fetch from the given URL until either:\n * - The service responds with a successful status (2xx or 503)\n * - Maximum attempts are reached (throws error)\n *\n * @param url - The URL to poll for service readiness\n * @param options - Configuration options\n * @throws Error if service doesn't become ready within maxAttempts\n *\n * @example\n * ```typescript\n * // Wait for fixture server to be ready\n * await waitForServiceReady('http://localhost:12345/state.json', {\n * maxAttempts: 10,\n * delayMs: 500,\n * timeoutMs: 3000,\n * });\n * ```\n *\n * @example\n * ```typescript\n * // With custom fetch function\n * await waitForServiceReady('http://localhost:8545', {\n * fetchFn: customFetch,\n * maxAttempts: 5,\n * });\n * ```\n */\nexport async function waitForServiceReady(\n url: string,\n options: WaitForServiceReadyOptions = {},\n): Promise<void> {\n const {\n maxAttempts = 10,\n delayMs = 500,\n fetchFn = fetchWithTimeout,\n timeoutMs = 3000,\n } = options;\n\n for (let attempt = 0; attempt < maxAttempts; attempt++) {\n try {\n const response = await fetchFn(url, {}, timeoutMs);\n\n // Service is ready if it responds with 2xx or 503 (service unavailable but responding)\n if (response.ok || response.status === 503) {\n return;\n }\n } catch (error) {\n const caughtError = error as Error;\n\n // Connection refused - service not yet started, retry\n if (\n caughtError.cause &&\n JSON.stringify(caughtError.cause).includes('ECONNREFUSED')\n ) {\n await delay(delayMs);\n continue;\n }\n\n // Timeout - service slow to respond, retry\n if (caughtError.name === 'AbortError') {\n await delay(delayMs);\n continue;\n }\n\n // Other errors (e.g., self-signed cert accepted) - consider service ready\n return;\n }\n\n // Response received but not ok/503 - retry\n await delay(delayMs);\n }\n\n throw new Error(\n `Service at ${url} failed to become ready after ${maxAttempts} attempts`,\n );\n}\n\n/**\n * Delay helper function.\n *\n * @param ms - The delay in milliseconds.\n * @returns A promise that resolves after the delay.\n */\nasync function delay(ms: number): Promise<void> {\n return new Promise((resolve) => setTimeout(resolve, ms));\n}\n"]}
@@ -0,0 +1,61 @@
1
+ /**
2
+ * Options for waitForServiceReady
3
+ */
4
+ export type WaitForServiceReadyOptions = {
5
+ /**
6
+ * Maximum number of attempts to check service readiness
7
+ *
8
+ * @default 10
9
+ */
10
+ maxAttempts?: number;
11
+ /**
12
+ * Delay in milliseconds between attempts
13
+ *
14
+ * @default 500
15
+ */
16
+ delayMs?: number;
17
+ /**
18
+ * Custom fetch function (useful for testing or custom timeout behavior)
19
+ *
20
+ * @default fetchWithTimeout
21
+ */
22
+ fetchFn?: typeof fetch;
23
+ /**
24
+ * Timeout in milliseconds for each fetch attempt
25
+ *
26
+ * @default 3000
27
+ */
28
+ timeoutMs?: number;
29
+ };
30
+ /**
31
+ * Wait for a service to become ready by polling an endpoint
32
+ *
33
+ * Repeatedly attempts to fetch from the given URL until either:
34
+ * - The service responds with a successful status (2xx or 503)
35
+ * - Maximum attempts are reached (throws error)
36
+ *
37
+ * @param url - The URL to poll for service readiness
38
+ * @param options - Configuration options
39
+ * @throws Error if service doesn't become ready within maxAttempts
40
+ *
41
+ * @example
42
+ * ```typescript
43
+ * // Wait for fixture server to be ready
44
+ * await waitForServiceReady('http://localhost:12345/state.json', {
45
+ * maxAttempts: 10,
46
+ * delayMs: 500,
47
+ * timeoutMs: 3000,
48
+ * });
49
+ * ```
50
+ *
51
+ * @example
52
+ * ```typescript
53
+ * // With custom fetch function
54
+ * await waitForServiceReady('http://localhost:8545', {
55
+ * fetchFn: customFetch,
56
+ * maxAttempts: 5,
57
+ * });
58
+ * ```
59
+ */
60
+ export declare function waitForServiceReady(url: string, options?: WaitForServiceReadyOptions): Promise<void>;
61
+ //# sourceMappingURL=service-readiness.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"service-readiness.d.cts","sourceRoot":"","sources":["../../src/utils/service-readiness.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,MAAM,0BAA0B,GAAG;IACvC;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;;;OAIG;IACH,OAAO,CAAC,EAAE,OAAO,KAAK,CAAC;IAEvB;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,wBAAsB,mBAAmB,CACvC,GAAG,EAAE,MAAM,EACX,OAAO,GAAE,0BAA+B,GACvC,OAAO,CAAC,IAAI,CAAC,CA6Cf"}
@@ -0,0 +1,61 @@
1
+ /**
2
+ * Options for waitForServiceReady
3
+ */
4
+ export type WaitForServiceReadyOptions = {
5
+ /**
6
+ * Maximum number of attempts to check service readiness
7
+ *
8
+ * @default 10
9
+ */
10
+ maxAttempts?: number;
11
+ /**
12
+ * Delay in milliseconds between attempts
13
+ *
14
+ * @default 500
15
+ */
16
+ delayMs?: number;
17
+ /**
18
+ * Custom fetch function (useful for testing or custom timeout behavior)
19
+ *
20
+ * @default fetchWithTimeout
21
+ */
22
+ fetchFn?: typeof fetch;
23
+ /**
24
+ * Timeout in milliseconds for each fetch attempt
25
+ *
26
+ * @default 3000
27
+ */
28
+ timeoutMs?: number;
29
+ };
30
+ /**
31
+ * Wait for a service to become ready by polling an endpoint
32
+ *
33
+ * Repeatedly attempts to fetch from the given URL until either:
34
+ * - The service responds with a successful status (2xx or 503)
35
+ * - Maximum attempts are reached (throws error)
36
+ *
37
+ * @param url - The URL to poll for service readiness
38
+ * @param options - Configuration options
39
+ * @throws Error if service doesn't become ready within maxAttempts
40
+ *
41
+ * @example
42
+ * ```typescript
43
+ * // Wait for fixture server to be ready
44
+ * await waitForServiceReady('http://localhost:12345/state.json', {
45
+ * maxAttempts: 10,
46
+ * delayMs: 500,
47
+ * timeoutMs: 3000,
48
+ * });
49
+ * ```
50
+ *
51
+ * @example
52
+ * ```typescript
53
+ * // With custom fetch function
54
+ * await waitForServiceReady('http://localhost:8545', {
55
+ * fetchFn: customFetch,
56
+ * maxAttempts: 5,
57
+ * });
58
+ * ```
59
+ */
60
+ export declare function waitForServiceReady(url: string, options?: WaitForServiceReadyOptions): Promise<void>;
61
+ //# sourceMappingURL=service-readiness.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"service-readiness.d.mts","sourceRoot":"","sources":["../../src/utils/service-readiness.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,MAAM,0BAA0B,GAAG;IACvC;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;;;OAIG;IACH,OAAO,CAAC,EAAE,OAAO,KAAK,CAAC;IAEvB;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,wBAAsB,mBAAmB,CACvC,GAAG,EAAE,MAAM,EACX,OAAO,GAAE,0BAA+B,GACvC,OAAO,CAAC,IAAI,CAAC,CA6Cf"}
@@ -0,0 +1,72 @@
1
+ import { fetchWithTimeout } from "./fetch.mjs";
2
+ /**
3
+ * Wait for a service to become ready by polling an endpoint
4
+ *
5
+ * Repeatedly attempts to fetch from the given URL until either:
6
+ * - The service responds with a successful status (2xx or 503)
7
+ * - Maximum attempts are reached (throws error)
8
+ *
9
+ * @param url - The URL to poll for service readiness
10
+ * @param options - Configuration options
11
+ * @throws Error if service doesn't become ready within maxAttempts
12
+ *
13
+ * @example
14
+ * ```typescript
15
+ * // Wait for fixture server to be ready
16
+ * await waitForServiceReady('http://localhost:12345/state.json', {
17
+ * maxAttempts: 10,
18
+ * delayMs: 500,
19
+ * timeoutMs: 3000,
20
+ * });
21
+ * ```
22
+ *
23
+ * @example
24
+ * ```typescript
25
+ * // With custom fetch function
26
+ * await waitForServiceReady('http://localhost:8545', {
27
+ * fetchFn: customFetch,
28
+ * maxAttempts: 5,
29
+ * });
30
+ * ```
31
+ */
32
+ export async function waitForServiceReady(url, options = {}) {
33
+ const { maxAttempts = 10, delayMs = 500, fetchFn = fetchWithTimeout, timeoutMs = 3000, } = options;
34
+ for (let attempt = 0; attempt < maxAttempts; attempt++) {
35
+ try {
36
+ const response = await fetchFn(url, {}, timeoutMs);
37
+ // Service is ready if it responds with 2xx or 503 (service unavailable but responding)
38
+ if (response.ok || response.status === 503) {
39
+ return;
40
+ }
41
+ }
42
+ catch (error) {
43
+ const caughtError = error;
44
+ // Connection refused - service not yet started, retry
45
+ if (caughtError.cause &&
46
+ JSON.stringify(caughtError.cause).includes('ECONNREFUSED')) {
47
+ await delay(delayMs);
48
+ continue;
49
+ }
50
+ // Timeout - service slow to respond, retry
51
+ if (caughtError.name === 'AbortError') {
52
+ await delay(delayMs);
53
+ continue;
54
+ }
55
+ // Other errors (e.g., self-signed cert accepted) - consider service ready
56
+ return;
57
+ }
58
+ // Response received but not ok/503 - retry
59
+ await delay(delayMs);
60
+ }
61
+ throw new Error(`Service at ${url} failed to become ready after ${maxAttempts} attempts`);
62
+ }
63
+ /**
64
+ * Delay helper function.
65
+ *
66
+ * @param ms - The delay in milliseconds.
67
+ * @returns A promise that resolves after the delay.
68
+ */
69
+ async function delay(ms) {
70
+ return new Promise((resolve) => setTimeout(resolve, ms));
71
+ }
72
+ //# sourceMappingURL=service-readiness.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"service-readiness.mjs","sourceRoot":"","sources":["../../src/utils/service-readiness.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,oBAAmB;AAmC9C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,GAAW,EACX,UAAsC,EAAE;IAExC,MAAM,EACJ,WAAW,GAAG,EAAE,EAChB,OAAO,GAAG,GAAG,EACb,OAAO,GAAG,gBAAgB,EAC1B,SAAS,GAAG,IAAI,GACjB,GAAG,OAAO,CAAC;IAEZ,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,GAAG,WAAW,EAAE,OAAO,EAAE,EAAE,CAAC;QACvD,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,GAAG,EAAE,EAAE,EAAE,SAAS,CAAC,CAAC;YAEnD,uFAAuF;YACvF,IAAI,QAAQ,CAAC,EAAE,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;gBAC3C,OAAO;YACT,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,WAAW,GAAG,KAAc,CAAC;YAEnC,sDAAsD;YACtD,IACE,WAAW,CAAC,KAAK;gBACjB,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,cAAc,CAAC,EAC1D,CAAC;gBACD,MAAM,KAAK,CAAC,OAAO,CAAC,CAAC;gBACrB,SAAS;YACX,CAAC;YAED,2CAA2C;YAC3C,IAAI,WAAW,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;gBACtC,MAAM,KAAK,CAAC,OAAO,CAAC,CAAC;gBACrB,SAAS;YACX,CAAC;YAED,0EAA0E;YAC1E,OAAO;QACT,CAAC;QAED,2CAA2C;QAC3C,MAAM,KAAK,CAAC,OAAO,CAAC,CAAC;IACvB,CAAC;IAED,MAAM,IAAI,KAAK,CACb,cAAc,GAAG,iCAAiC,WAAW,WAAW,CACzE,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,KAAK,UAAU,KAAK,CAAC,EAAU;IAC7B,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;AAC3D,CAAC","sourcesContent":["import { fetchWithTimeout } from './fetch.js';\n\n/**\n * Options for waitForServiceReady\n */\nexport type WaitForServiceReadyOptions = {\n /**\n * Maximum number of attempts to check service readiness\n *\n * @default 10\n */\n maxAttempts?: number;\n\n /**\n * Delay in milliseconds between attempts\n *\n * @default 500\n */\n delayMs?: number;\n\n /**\n * Custom fetch function (useful for testing or custom timeout behavior)\n *\n * @default fetchWithTimeout\n */\n fetchFn?: typeof fetch;\n\n /**\n * Timeout in milliseconds for each fetch attempt\n *\n * @default 3000\n */\n timeoutMs?: number;\n};\n\n/**\n * Wait for a service to become ready by polling an endpoint\n *\n * Repeatedly attempts to fetch from the given URL until either:\n * - The service responds with a successful status (2xx or 503)\n * - Maximum attempts are reached (throws error)\n *\n * @param url - The URL to poll for service readiness\n * @param options - Configuration options\n * @throws Error if service doesn't become ready within maxAttempts\n *\n * @example\n * ```typescript\n * // Wait for fixture server to be ready\n * await waitForServiceReady('http://localhost:12345/state.json', {\n * maxAttempts: 10,\n * delayMs: 500,\n * timeoutMs: 3000,\n * });\n * ```\n *\n * @example\n * ```typescript\n * // With custom fetch function\n * await waitForServiceReady('http://localhost:8545', {\n * fetchFn: customFetch,\n * maxAttempts: 5,\n * });\n * ```\n */\nexport async function waitForServiceReady(\n url: string,\n options: WaitForServiceReadyOptions = {},\n): Promise<void> {\n const {\n maxAttempts = 10,\n delayMs = 500,\n fetchFn = fetchWithTimeout,\n timeoutMs = 3000,\n } = options;\n\n for (let attempt = 0; attempt < maxAttempts; attempt++) {\n try {\n const response = await fetchFn(url, {}, timeoutMs);\n\n // Service is ready if it responds with 2xx or 503 (service unavailable but responding)\n if (response.ok || response.status === 503) {\n return;\n }\n } catch (error) {\n const caughtError = error as Error;\n\n // Connection refused - service not yet started, retry\n if (\n caughtError.cause &&\n JSON.stringify(caughtError.cause).includes('ECONNREFUSED')\n ) {\n await delay(delayMs);\n continue;\n }\n\n // Timeout - service slow to respond, retry\n if (caughtError.name === 'AbortError') {\n await delay(delayMs);\n continue;\n }\n\n // Other errors (e.g., self-signed cert accepted) - consider service ready\n return;\n }\n\n // Response received but not ok/503 - retry\n await delay(delayMs);\n }\n\n throw new Error(\n `Service at ${url} failed to become ready after ${maxAttempts} attempts`,\n );\n}\n\n/**\n * Delay helper function.\n *\n * @param ms - The delay in milliseconds.\n * @returns A promise that resolves after the delay.\n */\nasync function delay(ms: number): Promise<void> {\n return new Promise((resolve) => setTimeout(resolve, ms));\n}\n"]}
package/package.json ADDED
@@ -0,0 +1,119 @@
1
+ {
2
+ "name": "@metamask/client-mcp-core",
3
+ "version": "0.1.0",
4
+ "description": "MCP server for MetaMask Extension visual testing with LLM agents",
5
+ "keywords": [
6
+ "mcp",
7
+ "playwright",
8
+ "llm",
9
+ "visual-testing",
10
+ "browser-extension"
11
+ ],
12
+ "homepage": "https://github.com/MetaMask/client-mcp-core#readme",
13
+ "bugs": {
14
+ "url": "https://github.com/MetaMask/client-mcp-core/issues"
15
+ },
16
+ "repository": {
17
+ "type": "git",
18
+ "url": "https://github.com/MetaMask/client-mcp-core.git"
19
+ },
20
+ "license": "(MIT OR Apache-2.0)",
21
+ "sideEffects": false,
22
+ "exports": {
23
+ ".": {
24
+ "import": {
25
+ "types": "./dist/index.d.mts",
26
+ "default": "./dist/index.mjs"
27
+ },
28
+ "require": {
29
+ "types": "./dist/index.d.cts",
30
+ "default": "./dist/index.cjs"
31
+ }
32
+ },
33
+ "./package.json": "./package.json"
34
+ },
35
+ "main": "./dist/index.cjs",
36
+ "module": "./dist/index.mjs",
37
+ "types": "./dist/index.d.cts",
38
+ "files": [
39
+ "dist"
40
+ ],
41
+ "scripts": {
42
+ "build": "ts-bridge --project tsconfig.build.json --clean",
43
+ "build:docs": "typedoc",
44
+ "lint": "yarn lint:eslint && yarn lint:constraints && yarn lint:misc --check && yarn lint:dependencies --check && yarn lint:changelog",
45
+ "lint:changelog": "auto-changelog validate --prettier",
46
+ "lint:constraints": "yarn constraints",
47
+ "lint:dependencies": "depcheck && yarn dedupe --check",
48
+ "lint:dependencies:fix": "depcheck && yarn dedupe",
49
+ "lint:eslint": "eslint .",
50
+ "lint:fix": "yarn lint:eslint --fix && yarn lint:constraints --fix && yarn lint:misc --write && yarn lint:dependencies:fix && yarn lint:changelog",
51
+ "lint:misc": "prettier '**/*.json' '**/*.md' '**/*.yml' '!.yarnrc.yml' --ignore-path .gitignore --no-error-on-unmatched-pattern",
52
+ "prepack": "./scripts/prepack.sh",
53
+ "test": "vitest && attw --pack",
54
+ "test:watch": "vitest --watch"
55
+ },
56
+ "resolutions": {
57
+ "@isaacs/brace-expansion": "5.0.1"
58
+ },
59
+ "dependencies": {
60
+ "@modelcontextprotocol/sdk": "^1.26.0",
61
+ "zod": "^4.3.5"
62
+ },
63
+ "devDependencies": {
64
+ "@arethetypeswrong/cli": "^0.15.3",
65
+ "@lavamoat/allow-scripts": "^3.0.4",
66
+ "@lavamoat/preinstall-always-fail": "^2.0.0",
67
+ "@metamask/auto-changelog": "^5.3.0",
68
+ "@metamask/eslint-config": "^15.0.0",
69
+ "@metamask/eslint-config-nodejs": "^15.0.0",
70
+ "@metamask/eslint-config-typescript": "^15.0.0",
71
+ "@metamask/eslint-config-vitest": "^15.0.0",
72
+ "@playwright/test": "^1.49.0",
73
+ "@ts-bridge/cli": "^0.6.3",
74
+ "@types/node": "^20.0.0",
75
+ "@typescript-eslint/utils": "^8.6.0",
76
+ "@vitest/coverage-istanbul": "^3.0.7",
77
+ "@vitest/eslint-plugin": "^1.1.4",
78
+ "@yarnpkg/types": "^4.0.0-rc.52",
79
+ "depcheck": "^1.4.3",
80
+ "eslint": "^9.11.0",
81
+ "eslint-config-prettier": "^9.1.0",
82
+ "eslint-import-resolver-typescript": "^3.6.3",
83
+ "eslint-plugin-import-x": "^4.3.0",
84
+ "eslint-plugin-jsdoc": "^50.2.4",
85
+ "eslint-plugin-n": "^17.10.3",
86
+ "eslint-plugin-prettier": "^5.2.1",
87
+ "eslint-plugin-promise": "^7.1.0",
88
+ "playwright": "^1.49.0",
89
+ "prettier": "^3.3.3",
90
+ "prettier-plugin-packagejson": "^2.5.8",
91
+ "ts-node": "^10.7.0",
92
+ "typedoc": "^0.26.11",
93
+ "typescript": "~5.7.3",
94
+ "typescript-eslint": "^8.48.1",
95
+ "vite": "^6.4.1",
96
+ "vitest": "^3.0.7"
97
+ },
98
+ "peerDependencies": {
99
+ "@playwright/test": "^1.49.0",
100
+ "playwright": "^1.49.0"
101
+ },
102
+ "packageManager": "yarn@4.11.0",
103
+ "engines": {
104
+ "node": "^20 || ^22 || >=24"
105
+ },
106
+ "publishConfig": {
107
+ "access": "public",
108
+ "registry": "https://registry.npmjs.org/"
109
+ },
110
+ "lavamoat": {
111
+ "allowScripts": {
112
+ "@lavamoat/preinstall-always-fail": false,
113
+ "eslint-plugin-import-x>unrs-resolver": false,
114
+ "vite>esbuild": false,
115
+ "vitest>vite-node>vite>esbuild": false,
116
+ "vitest>vite>esbuild": false
117
+ }
118
+ }
119
+ }