@daniel.stefan/metalink 1.3.1

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 (333) hide show
  1. package/README.md +160 -0
  2. package/package.json +96 -0
  3. package/packages/cli/dist/bin/cli.d.ts +3 -0
  4. package/packages/cli/dist/bin/cli.d.ts.map +1 -0
  5. package/packages/cli/dist/bin/cli.js +4 -0
  6. package/packages/cli/dist/bin/cli.js.map +1 -0
  7. package/packages/cli/dist/commands/config/init.d.ts +9 -0
  8. package/packages/cli/dist/commands/config/init.d.ts.map +1 -0
  9. package/packages/cli/dist/commands/config/init.js +38 -0
  10. package/packages/cli/dist/commands/config/init.js.map +1 -0
  11. package/packages/cli/dist/commands/config/validate.d.ts +9 -0
  12. package/packages/cli/dist/commands/config/validate.d.ts.map +1 -0
  13. package/packages/cli/dist/commands/config/validate.js +34 -0
  14. package/packages/cli/dist/commands/config/validate.js.map +1 -0
  15. package/packages/cli/dist/commands/daemon/restart.d.ts +15 -0
  16. package/packages/cli/dist/commands/daemon/restart.d.ts.map +1 -0
  17. package/packages/cli/dist/commands/daemon/restart.js +184 -0
  18. package/packages/cli/dist/commands/daemon/restart.js.map +1 -0
  19. package/packages/cli/dist/commands/daemon/start.d.ts +7 -0
  20. package/packages/cli/dist/commands/daemon/start.d.ts.map +1 -0
  21. package/packages/cli/dist/commands/daemon/start.js +85 -0
  22. package/packages/cli/dist/commands/daemon/start.js.map +1 -0
  23. package/packages/cli/dist/commands/daemon/status.d.ts +7 -0
  24. package/packages/cli/dist/commands/daemon/status.d.ts.map +1 -0
  25. package/packages/cli/dist/commands/daemon/status.js +69 -0
  26. package/packages/cli/dist/commands/daemon/status.js.map +1 -0
  27. package/packages/cli/dist/commands/daemon/stop.d.ts +8 -0
  28. package/packages/cli/dist/commands/daemon/stop.d.ts.map +1 -0
  29. package/packages/cli/dist/commands/daemon/stop.js +77 -0
  30. package/packages/cli/dist/commands/daemon/stop.js.map +1 -0
  31. package/packages/cli/dist/commands/import/mcpm.d.ts +10 -0
  32. package/packages/cli/dist/commands/import/mcpm.d.ts.map +1 -0
  33. package/packages/cli/dist/commands/import/mcpm.js +58 -0
  34. package/packages/cli/dist/commands/import/mcpm.js.map +1 -0
  35. package/packages/cli/dist/commands/safety/add-risky-pattern.d.ts +16 -0
  36. package/packages/cli/dist/commands/safety/add-risky-pattern.d.ts.map +1 -0
  37. package/packages/cli/dist/commands/safety/add-risky-pattern.js +72 -0
  38. package/packages/cli/dist/commands/safety/add-risky-pattern.js.map +1 -0
  39. package/packages/cli/dist/commands/safety/add-risky.d.ts +12 -0
  40. package/packages/cli/dist/commands/safety/add-risky.d.ts.map +1 -0
  41. package/packages/cli/dist/commands/safety/add-risky.js +52 -0
  42. package/packages/cli/dist/commands/safety/add-risky.js.map +1 -0
  43. package/packages/cli/dist/commands/safety/add-safe-pattern.d.ts +16 -0
  44. package/packages/cli/dist/commands/safety/add-safe-pattern.d.ts.map +1 -0
  45. package/packages/cli/dist/commands/safety/add-safe-pattern.js +72 -0
  46. package/packages/cli/dist/commands/safety/add-safe-pattern.js.map +1 -0
  47. package/packages/cli/dist/commands/safety/add-safe.d.ts +12 -0
  48. package/packages/cli/dist/commands/safety/add-safe.d.ts.map +1 -0
  49. package/packages/cli/dist/commands/safety/add-safe.js +52 -0
  50. package/packages/cli/dist/commands/safety/add-safe.js.map +1 -0
  51. package/packages/cli/dist/commands/safety/check.d.ts +9 -0
  52. package/packages/cli/dist/commands/safety/check.d.ts.map +1 -0
  53. package/packages/cli/dist/commands/safety/check.js +36 -0
  54. package/packages/cli/dist/commands/safety/check.js.map +1 -0
  55. package/packages/cli/dist/commands/safety/export.d.ts +10 -0
  56. package/packages/cli/dist/commands/safety/export.d.ts.map +1 -0
  57. package/packages/cli/dist/commands/safety/export.js +48 -0
  58. package/packages/cli/dist/commands/safety/export.js.map +1 -0
  59. package/packages/cli/dist/commands/safety/import.d.ts +12 -0
  60. package/packages/cli/dist/commands/safety/import.d.ts.map +1 -0
  61. package/packages/cli/dist/commands/safety/import.js +78 -0
  62. package/packages/cli/dist/commands/safety/import.js.map +1 -0
  63. package/packages/cli/dist/commands/safety/index.d.ts +8 -0
  64. package/packages/cli/dist/commands/safety/index.d.ts.map +1 -0
  65. package/packages/cli/dist/commands/safety/index.js +46 -0
  66. package/packages/cli/dist/commands/safety/index.js.map +1 -0
  67. package/packages/cli/dist/commands/safety/list.d.ts +6 -0
  68. package/packages/cli/dist/commands/safety/list.d.ts.map +1 -0
  69. package/packages/cli/dist/commands/safety/list.js +77 -0
  70. package/packages/cli/dist/commands/safety/list.js.map +1 -0
  71. package/packages/cli/dist/commands/safety/remove.d.ts +9 -0
  72. package/packages/cli/dist/commands/safety/remove.d.ts.map +1 -0
  73. package/packages/cli/dist/commands/safety/remove.js +46 -0
  74. package/packages/cli/dist/commands/safety/remove.js.map +1 -0
  75. package/packages/cli/dist/commands/safety/reset.d.ts +9 -0
  76. package/packages/cli/dist/commands/safety/reset.d.ts.map +1 -0
  77. package/packages/cli/dist/commands/safety/reset.js +46 -0
  78. package/packages/cli/dist/commands/safety/reset.js.map +1 -0
  79. package/packages/cli/dist/commands/safety/validate.d.ts +9 -0
  80. package/packages/cli/dist/commands/safety/validate.d.ts.map +1 -0
  81. package/packages/cli/dist/commands/safety/validate.js +51 -0
  82. package/packages/cli/dist/commands/safety/validate.js.map +1 -0
  83. package/packages/cli/dist/commands/secret/get.d.ts +9 -0
  84. package/packages/cli/dist/commands/secret/get.d.ts.map +1 -0
  85. package/packages/cli/dist/commands/secret/get.js +26 -0
  86. package/packages/cli/dist/commands/secret/get.js.map +1 -0
  87. package/packages/cli/dist/commands/secret/set.d.ts +10 -0
  88. package/packages/cli/dist/commands/secret/set.d.ts.map +1 -0
  89. package/packages/cli/dist/commands/secret/set.js +22 -0
  90. package/packages/cli/dist/commands/secret/set.js.map +1 -0
  91. package/packages/cli/dist/commands/server/__tests__/server-management-e2e.test.d.ts +2 -0
  92. package/packages/cli/dist/commands/server/__tests__/server-management-e2e.test.d.ts.map +1 -0
  93. package/packages/cli/dist/commands/server/__tests__/server-management-e2e.test.js +234 -0
  94. package/packages/cli/dist/commands/server/__tests__/server-management-e2e.test.js.map +1 -0
  95. package/packages/cli/dist/commands/server/add.d.ts +14 -0
  96. package/packages/cli/dist/commands/server/add.d.ts.map +1 -0
  97. package/packages/cli/dist/commands/server/add.js +86 -0
  98. package/packages/cli/dist/commands/server/add.js.map +1 -0
  99. package/packages/cli/dist/commands/server/available.d.ts +10 -0
  100. package/packages/cli/dist/commands/server/available.d.ts.map +1 -0
  101. package/packages/cli/dist/commands/server/available.js +62 -0
  102. package/packages/cli/dist/commands/server/available.js.map +1 -0
  103. package/packages/cli/dist/commands/server/debug.d.ts +18 -0
  104. package/packages/cli/dist/commands/server/debug.d.ts.map +1 -0
  105. package/packages/cli/dist/commands/server/debug.js +165 -0
  106. package/packages/cli/dist/commands/server/debug.js.map +1 -0
  107. package/packages/cli/dist/commands/server/info.d.ts +13 -0
  108. package/packages/cli/dist/commands/server/info.d.ts.map +1 -0
  109. package/packages/cli/dist/commands/server/info.js +62 -0
  110. package/packages/cli/dist/commands/server/info.js.map +1 -0
  111. package/packages/cli/dist/commands/server/list.d.ts +10 -0
  112. package/packages/cli/dist/commands/server/list.d.ts.map +1 -0
  113. package/packages/cli/dist/commands/server/list.js +105 -0
  114. package/packages/cli/dist/commands/server/list.js.map +1 -0
  115. package/packages/cli/dist/commands/server/refresh-tools.d.ts +13 -0
  116. package/packages/cli/dist/commands/server/refresh-tools.d.ts.map +1 -0
  117. package/packages/cli/dist/commands/server/refresh-tools.js +46 -0
  118. package/packages/cli/dist/commands/server/refresh-tools.js.map +1 -0
  119. package/packages/cli/dist/commands/server/remove.d.ts +12 -0
  120. package/packages/cli/dist/commands/server/remove.d.ts.map +1 -0
  121. package/packages/cli/dist/commands/server/remove.js +39 -0
  122. package/packages/cli/dist/commands/server/remove.js.map +1 -0
  123. package/packages/cli/dist/commands/server/restart.d.ts +9 -0
  124. package/packages/cli/dist/commands/server/restart.d.ts.map +1 -0
  125. package/packages/cli/dist/commands/server/restart.js +30 -0
  126. package/packages/cli/dist/commands/server/restart.js.map +1 -0
  127. package/packages/cli/dist/commands/server/start.d.ts +9 -0
  128. package/packages/cli/dist/commands/server/start.d.ts.map +1 -0
  129. package/packages/cli/dist/commands/server/start.js +37 -0
  130. package/packages/cli/dist/commands/server/start.js.map +1 -0
  131. package/packages/cli/dist/commands/server/status.d.ts +9 -0
  132. package/packages/cli/dist/commands/server/status.d.ts.map +1 -0
  133. package/packages/cli/dist/commands/server/status.js +30 -0
  134. package/packages/cli/dist/commands/server/status.js.map +1 -0
  135. package/packages/cli/dist/commands/server/stop.d.ts +9 -0
  136. package/packages/cli/dist/commands/server/stop.d.ts.map +1 -0
  137. package/packages/cli/dist/commands/server/stop.js +31 -0
  138. package/packages/cli/dist/commands/server/stop.js.map +1 -0
  139. package/packages/cli/dist/commands/server/validate.d.ts +15 -0
  140. package/packages/cli/dist/commands/server/validate.d.ts.map +1 -0
  141. package/packages/cli/dist/commands/server/validate.js +87 -0
  142. package/packages/cli/dist/commands/server/validate.js.map +1 -0
  143. package/packages/cli/dist/commands/stdio.d.ts +36 -0
  144. package/packages/cli/dist/commands/stdio.d.ts.map +1 -0
  145. package/packages/cli/dist/commands/stdio.js +85 -0
  146. package/packages/cli/dist/commands/stdio.js.map +1 -0
  147. package/packages/cli/dist/commands/tool/execute-confirm.d.ts +12 -0
  148. package/packages/cli/dist/commands/tool/execute-confirm.d.ts.map +1 -0
  149. package/packages/cli/dist/commands/tool/execute-confirm.js +98 -0
  150. package/packages/cli/dist/commands/tool/execute-confirm.js.map +1 -0
  151. package/packages/cli/dist/commands/tool/execute.d.ts +12 -0
  152. package/packages/cli/dist/commands/tool/execute.d.ts.map +1 -0
  153. package/packages/cli/dist/commands/tool/execute.js +55 -0
  154. package/packages/cli/dist/commands/tool/execute.js.map +1 -0
  155. package/packages/cli/dist/commands/tool/list.d.ts +13 -0
  156. package/packages/cli/dist/commands/tool/list.d.ts.map +1 -0
  157. package/packages/cli/dist/commands/tool/list.js +91 -0
  158. package/packages/cli/dist/commands/tool/list.js.map +1 -0
  159. package/packages/cli/dist/commands/tool/search.d.ts +12 -0
  160. package/packages/cli/dist/commands/tool/search.d.ts.map +1 -0
  161. package/packages/cli/dist/commands/tool/search.js +87 -0
  162. package/packages/cli/dist/commands/tool/search.js.map +1 -0
  163. package/packages/cli/dist/index.d.ts +2 -0
  164. package/packages/cli/dist/index.d.ts.map +1 -0
  165. package/packages/cli/dist/index.js +9 -0
  166. package/packages/cli/dist/index.js.map +1 -0
  167. package/packages/cli/dist/utils/daemon-checker.d.ts +18 -0
  168. package/packages/cli/dist/utils/daemon-checker.d.ts.map +1 -0
  169. package/packages/cli/dist/utils/daemon-checker.js +69 -0
  170. package/packages/cli/dist/utils/daemon-checker.js.map +1 -0
  171. package/packages/cli/dist/utils/daemon-endpoint.d.ts +7 -0
  172. package/packages/cli/dist/utils/daemon-endpoint.d.ts.map +1 -0
  173. package/packages/cli/dist/utils/daemon-endpoint.js +13 -0
  174. package/packages/cli/dist/utils/daemon-endpoint.js.map +1 -0
  175. package/packages/cli/dist/utils/get-configured-port.d.ts +43 -0
  176. package/packages/cli/dist/utils/get-configured-port.d.ts.map +1 -0
  177. package/packages/cli/dist/utils/get-configured-port.js +141 -0
  178. package/packages/cli/dist/utils/get-configured-port.js.map +1 -0
  179. package/packages/cli/dist/utils/stdio-bridge.d.ts +48 -0
  180. package/packages/cli/dist/utils/stdio-bridge.d.ts.map +1 -0
  181. package/packages/cli/dist/utils/stdio-bridge.js +181 -0
  182. package/packages/cli/dist/utils/stdio-bridge.js.map +1 -0
  183. package/packages/cli/package.json +48 -0
  184. package/packages/core/dist/config/defaults.d.ts +36 -0
  185. package/packages/core/dist/config/defaults.d.ts.map +1 -0
  186. package/packages/core/dist/config/defaults.js +324 -0
  187. package/packages/core/dist/config/defaults.js.map +1 -0
  188. package/packages/core/dist/config/index.d.ts +9 -0
  189. package/packages/core/dist/config/index.d.ts.map +1 -0
  190. package/packages/core/dist/config/index.js +14 -0
  191. package/packages/core/dist/config/index.js.map +1 -0
  192. package/packages/core/dist/config/loader.d.ts +269 -0
  193. package/packages/core/dist/config/loader.d.ts.map +1 -0
  194. package/packages/core/dist/config/loader.js +777 -0
  195. package/packages/core/dist/config/loader.js.map +1 -0
  196. package/packages/core/dist/config/registry.d.ts +212 -0
  197. package/packages/core/dist/config/registry.d.ts.map +1 -0
  198. package/packages/core/dist/config/registry.js +754 -0
  199. package/packages/core/dist/config/registry.js.map +1 -0
  200. package/packages/core/dist/config/schema.d.ts +4352 -0
  201. package/packages/core/dist/config/schema.d.ts.map +1 -0
  202. package/packages/core/dist/config/schema.js +267 -0
  203. package/packages/core/dist/config/schema.js.map +1 -0
  204. package/packages/core/dist/daemon.d.ts +7 -0
  205. package/packages/core/dist/daemon.d.ts.map +1 -0
  206. package/packages/core/dist/daemon.js +116 -0
  207. package/packages/core/dist/daemon.js.map +1 -0
  208. package/packages/core/dist/http-client-retry.d.ts +67 -0
  209. package/packages/core/dist/http-client-retry.d.ts.map +1 -0
  210. package/packages/core/dist/http-client-retry.js +133 -0
  211. package/packages/core/dist/http-client-retry.js.map +1 -0
  212. package/packages/core/dist/http-client-updated.d.ts +147 -0
  213. package/packages/core/dist/http-client-updated.d.ts.map +1 -0
  214. package/packages/core/dist/http-client-updated.js +452 -0
  215. package/packages/core/dist/http-client-updated.js.map +1 -0
  216. package/packages/core/dist/http-client.d.ts +207 -0
  217. package/packages/core/dist/http-client.d.ts.map +1 -0
  218. package/packages/core/dist/http-client.js +704 -0
  219. package/packages/core/dist/http-client.js.map +1 -0
  220. package/packages/core/dist/index.d.ts +13 -0
  221. package/packages/core/dist/index.d.ts.map +1 -0
  222. package/packages/core/dist/index.js +23 -0
  223. package/packages/core/dist/index.js.map +1 -0
  224. package/packages/core/dist/logging/index.d.ts +46 -0
  225. package/packages/core/dist/logging/index.d.ts.map +1 -0
  226. package/packages/core/dist/logging/index.js +74 -0
  227. package/packages/core/dist/logging/index.js.map +1 -0
  228. package/packages/core/dist/metrics/index.d.ts +339 -0
  229. package/packages/core/dist/metrics/index.d.ts.map +1 -0
  230. package/packages/core/dist/metrics/index.js +792 -0
  231. package/packages/core/dist/metrics/index.js.map +1 -0
  232. package/packages/core/dist/plugins/index.d.ts +49 -0
  233. package/packages/core/dist/plugins/index.d.ts.map +1 -0
  234. package/packages/core/dist/plugins/index.js +82 -0
  235. package/packages/core/dist/plugins/index.js.map +1 -0
  236. package/packages/core/dist/secrets/index.d.ts +6 -0
  237. package/packages/core/dist/secrets/index.d.ts.map +1 -0
  238. package/packages/core/dist/secrets/index.js +5 -0
  239. package/packages/core/dist/secrets/index.js.map +1 -0
  240. package/packages/core/dist/secrets/keyring.d.ts +54 -0
  241. package/packages/core/dist/secrets/keyring.d.ts.map +1 -0
  242. package/packages/core/dist/secrets/keyring.js +141 -0
  243. package/packages/core/dist/secrets/keyring.js.map +1 -0
  244. package/packages/core/dist/server/batch-executor.d.ts +83 -0
  245. package/packages/core/dist/server/batch-executor.d.ts.map +1 -0
  246. package/packages/core/dist/server/batch-executor.js +291 -0
  247. package/packages/core/dist/server/batch-executor.js.map +1 -0
  248. package/packages/core/dist/server/circuit-breaker.d.ts +215 -0
  249. package/packages/core/dist/server/circuit-breaker.d.ts.map +1 -0
  250. package/packages/core/dist/server/circuit-breaker.js +330 -0
  251. package/packages/core/dist/server/circuit-breaker.js.map +1 -0
  252. package/packages/core/dist/server/client-detection.d.ts +40 -0
  253. package/packages/core/dist/server/client-detection.d.ts.map +1 -0
  254. package/packages/core/dist/server/client-detection.js +242 -0
  255. package/packages/core/dist/server/client-detection.js.map +1 -0
  256. package/packages/core/dist/server/client-profiles.d.ts +102 -0
  257. package/packages/core/dist/server/client-profiles.d.ts.map +1 -0
  258. package/packages/core/dist/server/client-profiles.js +254 -0
  259. package/packages/core/dist/server/client-profiles.js.map +1 -0
  260. package/packages/core/dist/server/http.d.ts +386 -0
  261. package/packages/core/dist/server/http.d.ts.map +1 -0
  262. package/packages/core/dist/server/http.js +4253 -0
  263. package/packages/core/dist/server/http.js.map +1 -0
  264. package/packages/core/dist/server/index.d.ts +7 -0
  265. package/packages/core/dist/server/index.d.ts.map +1 -0
  266. package/packages/core/dist/server/index.js +6 -0
  267. package/packages/core/dist/server/index.js.map +1 -0
  268. package/packages/core/dist/server/manager.d.ts +458 -0
  269. package/packages/core/dist/server/manager.d.ts.map +1 -0
  270. package/packages/core/dist/server/manager.js +3255 -0
  271. package/packages/core/dist/server/manager.js.map +1 -0
  272. package/packages/core/dist/server/managers/HttpConnectionManager.d.ts +69 -0
  273. package/packages/core/dist/server/managers/HttpConnectionManager.d.ts.map +1 -0
  274. package/packages/core/dist/server/managers/HttpConnectionManager.js +214 -0
  275. package/packages/core/dist/server/managers/HttpConnectionManager.js.map +1 -0
  276. package/packages/core/dist/server/managers/ProcessManager.d.ts +128 -0
  277. package/packages/core/dist/server/managers/ProcessManager.d.ts.map +1 -0
  278. package/packages/core/dist/server/managers/ProcessManager.js +443 -0
  279. package/packages/core/dist/server/managers/ProcessManager.js.map +1 -0
  280. package/packages/core/dist/server/managers/SchemaCacheManager.d.ts +152 -0
  281. package/packages/core/dist/server/managers/SchemaCacheManager.d.ts.map +1 -0
  282. package/packages/core/dist/server/managers/SchemaCacheManager.js +426 -0
  283. package/packages/core/dist/server/managers/SchemaCacheManager.js.map +1 -0
  284. package/packages/core/dist/server/managers/index.d.ts +9 -0
  285. package/packages/core/dist/server/managers/index.d.ts.map +1 -0
  286. package/packages/core/dist/server/managers/index.js +9 -0
  287. package/packages/core/dist/server/managers/index.js.map +1 -0
  288. package/packages/core/dist/server/metrics.d.ts +134 -0
  289. package/packages/core/dist/server/metrics.d.ts.map +1 -0
  290. package/packages/core/dist/server/metrics.js +273 -0
  291. package/packages/core/dist/server/metrics.js.map +1 -0
  292. package/packages/core/dist/server/prompts.d.ts +58 -0
  293. package/packages/core/dist/server/prompts.d.ts.map +1 -0
  294. package/packages/core/dist/server/prompts.js +405 -0
  295. package/packages/core/dist/server/prompts.js.map +1 -0
  296. package/packages/core/dist/server/protocol-versions.d.ts +49 -0
  297. package/packages/core/dist/server/protocol-versions.d.ts.map +1 -0
  298. package/packages/core/dist/server/protocol-versions.js +173 -0
  299. package/packages/core/dist/server/protocol-versions.js.map +1 -0
  300. package/packages/core/dist/server/resources.d.ts +64 -0
  301. package/packages/core/dist/server/resources.d.ts.map +1 -0
  302. package/packages/core/dist/server/resources.js +243 -0
  303. package/packages/core/dist/server/resources.js.map +1 -0
  304. package/packages/core/dist/server/schema-store.d.ts +84 -0
  305. package/packages/core/dist/server/schema-store.d.ts.map +1 -0
  306. package/packages/core/dist/server/schema-store.js +234 -0
  307. package/packages/core/dist/server/schema-store.js.map +1 -0
  308. package/packages/core/dist/server/schema-validator.d.ts +51 -0
  309. package/packages/core/dist/server/schema-validator.d.ts.map +1 -0
  310. package/packages/core/dist/server/schema-validator.js +208 -0
  311. package/packages/core/dist/server/schema-validator.js.map +1 -0
  312. package/packages/core/dist/server/token-calculator.d.ts +44 -0
  313. package/packages/core/dist/server/token-calculator.d.ts.map +1 -0
  314. package/packages/core/dist/server/token-calculator.js +53 -0
  315. package/packages/core/dist/server/token-calculator.js.map +1 -0
  316. package/packages/core/dist/server/types.d.ts +45 -0
  317. package/packages/core/dist/server/types.d.ts.map +1 -0
  318. package/packages/core/dist/server/types.js +5 -0
  319. package/packages/core/dist/server/types.js.map +1 -0
  320. package/packages/core/dist/utils/file-lock.d.ts +73 -0
  321. package/packages/core/dist/utils/file-lock.d.ts.map +1 -0
  322. package/packages/core/dist/utils/file-lock.js +235 -0
  323. package/packages/core/dist/utils/file-lock.js.map +1 -0
  324. package/packages/core/package.json +36 -0
  325. package/packages/dashboard/dist/assets/index-B7hvkCMu.css +1 -0
  326. package/packages/dashboard/dist/assets/index-yZhLPpzr.js +1 -0
  327. package/packages/dashboard/dist/index.html +14 -0
  328. package/packages/dashboard/package.json +24 -0
  329. package/packages/shared/dist/version.d.ts +2 -0
  330. package/packages/shared/dist/version.d.ts.map +1 -0
  331. package/packages/shared/dist/version.js +2 -0
  332. package/packages/shared/dist/version.js.map +1 -0
  333. package/packages/shared/package.json +18 -0
@@ -0,0 +1,386 @@
1
+ /**
2
+ * HTTP Server - Express-based API for MetaLink
3
+ */
4
+ import { ConfigLoader } from '../config/index.js';
5
+ import { ServerManager } from './manager.js';
6
+ export declare class HttpServer {
7
+ private app;
8
+ private server;
9
+ private serverManager;
10
+ private configLoader;
11
+ private config;
12
+ private eventClients;
13
+ private metricsPersistence;
14
+ private metricsAggregator;
15
+ private sessions;
16
+ private readonly SESSION_TIMEOUT;
17
+ private sessionCleanupInterval;
18
+ private readonly sessionPersistPath;
19
+ private sseConnections;
20
+ private sseEventBuffer;
21
+ private sseEventCounter;
22
+ private readonly MAX_EVENTS_PER_SESSION;
23
+ private toolExecutionRateLimiter;
24
+ private readonly TOOL_RATE_LIMIT_WINDOW_MS;
25
+ private readonly TOOL_RATE_LIMIT_MAX_CALLS;
26
+ private discoveryRateLimiter;
27
+ private readonly DISCOVERY_RATE_LIMIT_WINDOW_MS;
28
+ private readonly DISCOVERY_RATE_LIMIT_MAX_CALLS;
29
+ private readonly startTime;
30
+ constructor(configLoader: ConfigLoader);
31
+ /**
32
+ * Get server manager instance
33
+ */
34
+ getServerManager(): ServerManager;
35
+ /**
36
+ * Pagination support - Encode cursor data to opaque base64 string
37
+ */
38
+ private encodeCursor;
39
+ /**
40
+ * Pagination support - Decode cursor from base64 string
41
+ */
42
+ private decodeCursor;
43
+ /**
44
+ * Pagination support - Truncate string to character limit
45
+ */
46
+ private truncateToChars;
47
+ /**
48
+ * Pagination support - Apply pagination to tool result
49
+ *
50
+ * @param result - Tool execution result (any type)
51
+ * @param params - Pagination parameters from request
52
+ * @returns Paginated result with metadata
53
+ */
54
+ private paginateResult;
55
+ /**
56
+ * Setup Express middleware
57
+ */
58
+ private setupMiddleware;
59
+ /**
60
+ * Authentication middleware
61
+ */
62
+ private authMiddleware;
63
+ /**
64
+ * Setup API routes
65
+ */
66
+ private setupRoutes;
67
+ /**
68
+ * SECURITY: Sanitize error messages to prevent credential/path leakage.
69
+ *
70
+ * This function removes or masks sensitive information from error messages
71
+ * before they are sent to clients.
72
+ *
73
+ * OWASP Reference: A3:2017-Sensitive Data Exposure
74
+ *
75
+ * @param message - Original error message
76
+ * @returns Sanitized message safe for client exposure
77
+ */
78
+ private sanitizeErrorMessage;
79
+ /**
80
+ * Setup Server-Sent Events
81
+ */
82
+ private setupSSE;
83
+ /**
84
+ * Broadcast event to all SSE clients
85
+ */
86
+ private broadcastEvent;
87
+ /**
88
+ * List all servers
89
+ */
90
+ private listServers;
91
+ /**
92
+ * List all available servers (including disabled ones)
93
+ */
94
+ private listAvailableServers;
95
+ /**
96
+ * Enable a server (add to EXPOSE_SERVERS)
97
+ */
98
+ private enableServer;
99
+ /**
100
+ * Disable a server (remove from EXPOSE_SERVERS)
101
+ */
102
+ private disableServer;
103
+ /**
104
+ * Start a server
105
+ */
106
+ private startServer;
107
+ /**
108
+ * Stop a server
109
+ */
110
+ private stopServer;
111
+ /**
112
+ * Restart a server
113
+ */
114
+ private restartServer;
115
+ /**
116
+ * Force refresh tools for a server
117
+ * v1.4.2: Clears cache and re-discovers tools from the MCP server
118
+ */
119
+ private refreshServerTools;
120
+ /**
121
+ * Get server status
122
+ */
123
+ private getServerStatus;
124
+ /**
125
+ * Get full server information including configuration and runtime status
126
+ * v1.1.29: Include tools list and support ?forceDiscovery=true to rediscover
127
+ */
128
+ private getServerInfo;
129
+ /**
130
+ * Get server tools (stub - Phase 2)
131
+ */
132
+ private getServerTools;
133
+ /**
134
+ * Execute tool (stub - Phase 2)
135
+ */
136
+ private executeTool;
137
+ /**
138
+ * Get configuration
139
+ */
140
+ private getConfig;
141
+ /**
142
+ * Update configuration (stub - Phase 2)
143
+ */
144
+ private updateConfig;
145
+ /**
146
+ * Health check endpoint
147
+ */
148
+ private healthCheck;
149
+ /**
150
+ * Get MetaLink version
151
+ */
152
+ private getVersion;
153
+ /**
154
+ * GET /api/v1/metrics - JSON metrics endpoint
155
+ */
156
+ private getMetrics;
157
+ /**
158
+ * GET /api/v1/metrics/prometheus - Prometheus export endpoint
159
+ */
160
+ private getPrometheusMetrics;
161
+ /**
162
+ * GET /api/v1/metrics/api - API-level metrics
163
+ */
164
+ private getApiMetrics;
165
+ /**
166
+ * GET /api/v1/metrics/servers/:name - Server-specific metrics
167
+ */
168
+ private getServerMetrics;
169
+ /**
170
+ * GET /api/v1/metrics/hourly - Hourly aggregation
171
+ */
172
+ private getHourlyMetrics;
173
+ /**
174
+ * GET /api/v1/metrics/daily - Daily aggregation
175
+ */
176
+ private getDailyMetrics;
177
+ /**
178
+ * GET /api/v1/metrics/weekly - Weekly aggregation
179
+ */
180
+ private getWeeklyMetrics;
181
+ /**
182
+ * GET /api/v1/metrics/errors - Error analytics across all tools
183
+ */
184
+ private getErrorAnalytics;
185
+ /**
186
+ * GET /api/v1/metrics/errors/:toolName - Per-tool error analytics
187
+ * Query params: ?serverName=<name> (optional)
188
+ */
189
+ private getToolErrorMetrics;
190
+ /**
191
+ * GET /api/v1/metrics/tools - Granular tool-specific metrics (Test 187)
192
+ * Query params:
193
+ * ?serverName=<name> - Filter by server
194
+ * ?slow=<limit> - Get slowest tools (by p95 latency)
195
+ * ?errors=<threshold> - Get tools with high error rates (default: 5%)
196
+ */
197
+ private getToolMetrics;
198
+ /**
199
+ * Load persisted metrics on startup (Phase 4 - v1.4.0)
200
+ */
201
+ private loadPersistedMetrics;
202
+ /**
203
+ * Start periodic metrics persistence (Phase 4 - v1.4.0)
204
+ */
205
+ private startMetricsPersistence;
206
+ /**
207
+ * Track SSE event for Last-Event-ID resumption
208
+ */
209
+ private trackSseEvent;
210
+ /**
211
+ * Get events for resumption after Last-Event-ID
212
+ */
213
+ private getEventsForResumption;
214
+ private createSession;
215
+ /**
216
+ * Get and update session activity with validation logging
217
+ */
218
+ private getSession;
219
+ /**
220
+ * Clean up expired sessions
221
+ */
222
+ private cleanupSessions;
223
+ /**
224
+ * Start session cleanup timer
225
+ */
226
+ private startSessionCleanup;
227
+ /**
228
+ * Stop session cleanup timer
229
+ */
230
+ private stopSessionCleanup;
231
+ /**
232
+ * Session persistence file format
233
+ */
234
+ private readonly SESSION_PERSIST_VERSION;
235
+ /**
236
+ * Persist sessions to disk with atomic write (temp file + rename)
237
+ * Called after session creation and cleanup
238
+ */
239
+ private persistSessions;
240
+ /**
241
+ * Load sessions from disk on startup
242
+ * Filters out expired sessions during load
243
+ */
244
+ private loadSessions;
245
+ /**
246
+ * Handle Streamable HTTP request (MCP 2025-03-26)
247
+ * Returns tuple of [response, sessionId] for session tracking
248
+ */
249
+ private handleStreamableRequest;
250
+ /**
251
+ * Handle MCP JSON-RPC requests over HTTP
252
+ */
253
+ private handleMcpRequest;
254
+ /**
255
+ * Handle JSON-RPC method routing
256
+ */
257
+ private handleJsonRpcRequest;
258
+ /**
259
+ * Generate execute_tool description
260
+ * v1.3.x: Simplified - removed "Safe by default" list that caused confusion.
261
+ * Now relies solely on annotations.safety from search_tools results.
262
+ */
263
+ private getExecuteToolDescription;
264
+ /**
265
+ * MCP: tools/list - return available tools
266
+ *
267
+ * SPEAKEASY-INSPIRED 4-TOOL APPROACH (v1.3.52):
268
+ * 1. search_tools - Fuzzy search across all servers
269
+ * 2. describe_tool - Get full schema for specific tool
270
+ * 3. execute_tool - Execute safe/read-only tools (BLOCKS risky tools)
271
+ * 4. execute_tool_confirm - Execute risky/write tools (user confirmed)
272
+ *
273
+ * Optional: Base server tools (if dynamicToolExposure=true in config)
274
+ */
275
+ private mcpListTools;
276
+ /**
277
+ * MCP: tools/call - route tool calls
278
+ *
279
+ * SECURITY: Includes per-server rate limiting to prevent DOS attacks.
280
+ * Rate limit: 100 calls per server per minute (configurable).
281
+ * Discovery endpoints (search_tools, describe_tool) have separate rate limiting.
282
+ */
283
+ private mcpCallTool;
284
+ /**
285
+ * SECURITY: Extract server name from tool call for rate limiting.
286
+ *
287
+ * @param name - Tool name (e.g., "execute_tool", "memory-search_nodes")
288
+ * @param args - Tool arguments
289
+ * @returns Server name or null for meta-tools without server context
290
+ */
291
+ private extractServerNameForRateLimit;
292
+ /**
293
+ * SECURITY: Check and enforce per-server rate limiting.
294
+ *
295
+ * OWASP Reference: A6:2017-Security Misconfiguration - DOS Prevention
296
+ *
297
+ * @param serverName - Name of the server to check rate limit for
298
+ * @throws Error if rate limit exceeded
299
+ */
300
+ private checkToolRateLimit;
301
+ /**
302
+ * SECURITY: Check discovery endpoint rate limit (P1 - OWASP DOS Prevention)
303
+ * Prevents abuse of search_tools and describe_tool endpoints
304
+ *
305
+ * @param sessionId - Session ID to track rate limit for
306
+ * @throws Error if rate limit exceeded
307
+ */
308
+ private checkDiscoveryRateLimit;
309
+ /**
310
+ * Execute tool call logic (extracted for metrics tracking)
311
+ */
312
+ private executeToolCall;
313
+ /**
314
+ * Add a new server to the registry
315
+ */
316
+ private addServer;
317
+ /**
318
+ * Remove a server from the registry
319
+ */
320
+ private removeServer;
321
+ /**
322
+ * Validate a server configuration without saving
323
+ */
324
+ private validateServer;
325
+ /**
326
+ * Start the HTTP server
327
+ * NOTE: This Promise never resolves - it keeps the event loop alive for background mode
328
+ */
329
+ listen(port: number, host: string): Promise<void>;
330
+ /**
331
+ * Send message via SSE to connected client
332
+ */
333
+ private sendSSEMessage;
334
+ /**
335
+ * Send notifications/tools/list_changed to all connected SSE clients
336
+ * Throttled to max 1 notification per second
337
+ */
338
+ private lastToolsListNotification;
339
+ private readonly TOOLS_LIST_NOTIFICATION_THROTTLE_MS;
340
+ private notifyToolsListChanged;
341
+ /**
342
+ * Send response via callback URL (MCP callback protocol for bidirectional communication)
343
+ */
344
+ private sendViaCallback;
345
+ /**
346
+ * Cleanup
347
+ */
348
+ /**
349
+ * Get all safety rules
350
+ */
351
+ private getSafetyRules;
352
+ /**
353
+ * Check if a specific tool is safe or risky
354
+ */
355
+ private checkToolSafety;
356
+ /**
357
+ * Add a safe tool override
358
+ */
359
+ private addSafeToolOverride;
360
+ /**
361
+ * Add a risky tool override
362
+ */
363
+ private addRiskyToolOverride;
364
+ /**
365
+ * Add a safe pattern
366
+ */
367
+ private addSafePattern;
368
+ /**
369
+ * Add a risky pattern
370
+ */
371
+ private addRiskyPattern;
372
+ /**
373
+ * Remove a rule (tool override or pattern)
374
+ */
375
+ private removeRule;
376
+ /**
377
+ * Reset safety rules to defaults
378
+ */
379
+ private resetSafetyRules;
380
+ /**
381
+ * Import safety rules from JSON
382
+ */
383
+ private importSafetyRules;
384
+ cleanup(): Promise<void>;
385
+ }
386
+ //# sourceMappingURL=http.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../src/server/http.ts"],"names":[],"mappings":"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"}