@1mcp/agent 0.32.1 → 0.33.0-beta1

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 (365) hide show
  1. package/build/auth/oauthAuthorizationFlow.d.ts +145 -0
  2. package/build/auth/oauthAuthorizationFlow.d.ts.map +1 -0
  3. package/build/auth/oauthAuthorizationFlow.js +257 -0
  4. package/build/auth/oauthAuthorizationFlow.js.map +1 -0
  5. package/build/auth/sdkOAuthServerProvider.d.ts +4 -0
  6. package/build/auth/sdkOAuthServerProvider.d.ts.map +1 -1
  7. package/build/auth/sdkOAuthServerProvider.js +4 -0
  8. package/build/auth/sdkOAuthServerProvider.js.map +1 -1
  9. package/build/auth/storage/fileStorageService.d.ts.map +1 -1
  10. package/build/auth/storage/fileStorageService.js +9 -5
  11. package/build/auth/storage/fileStorageService.js.map +1 -1
  12. package/build/commands/cliSetup/setupFiles.d.ts +2 -4
  13. package/build/commands/cliSetup/setupFiles.d.ts.map +1 -1
  14. package/build/commands/cliSetup/setupFiles.js +8 -46
  15. package/build/commands/cliSetup/setupFiles.js.map +1 -1
  16. package/build/commands/inspect/inspect.d.ts +3 -0
  17. package/build/commands/inspect/inspect.d.ts.map +1 -1
  18. package/build/commands/inspect/inspect.js +90 -83
  19. package/build/commands/inspect/inspect.js.map +1 -1
  20. package/build/commands/instructions/instructions.d.ts.map +1 -1
  21. package/build/commands/instructions/instructions.js +11 -68
  22. package/build/commands/instructions/instructions.js.map +1 -1
  23. package/build/commands/mcp/install.d.ts.map +1 -1
  24. package/build/commands/mcp/install.js +62 -145
  25. package/build/commands/mcp/install.js.map +1 -1
  26. package/build/commands/mcp/installSource.d.ts +13 -0
  27. package/build/commands/mcp/installSource.d.ts.map +1 -0
  28. package/build/commands/mcp/installSource.js +69 -0
  29. package/build/commands/mcp/installSource.js.map +1 -0
  30. package/build/commands/mcp/uninstall.d.ts.map +1 -1
  31. package/build/commands/mcp/uninstall.js +20 -15
  32. package/build/commands/mcp/uninstall.js.map +1 -1
  33. package/build/commands/preset/edit.d.ts.map +1 -1
  34. package/build/commands/preset/edit.js +2 -0
  35. package/build/commands/preset/edit.js.map +1 -1
  36. package/build/commands/preset/interactive.d.ts.map +1 -1
  37. package/build/commands/preset/interactive.js +2 -0
  38. package/build/commands/preset/interactive.js.map +1 -1
  39. package/build/commands/preset/show.d.ts.map +1 -1
  40. package/build/commands/preset/show.js +2 -0
  41. package/build/commands/preset/show.js.map +1 -1
  42. package/build/commands/preset/test.d.ts.map +1 -1
  43. package/build/commands/preset/test.js +2 -0
  44. package/build/commands/preset/test.js.map +1 -1
  45. package/build/commands/proxy/proxy.d.ts.map +1 -1
  46. package/build/commands/proxy/proxy.js +11 -22
  47. package/build/commands/proxy/proxy.js.map +1 -1
  48. package/build/commands/registry/options.d.ts +14 -7
  49. package/build/commands/registry/options.d.ts.map +1 -1
  50. package/build/commands/registry/options.js +14 -7
  51. package/build/commands/registry/options.js.map +1 -1
  52. package/build/commands/run/run.d.ts +1 -0
  53. package/build/commands/run/run.d.ts.map +1 -1
  54. package/build/commands/run/run.js +124 -156
  55. package/build/commands/run/run.js.map +1 -1
  56. package/build/commands/serve/index.d.ts +5 -0
  57. package/build/commands/serve/index.d.ts.map +1 -1
  58. package/build/commands/serve/index.js +6 -1
  59. package/build/commands/serve/index.js.map +1 -1
  60. package/build/commands/serve/serve.d.ts +1 -0
  61. package/build/commands/serve/serve.d.ts.map +1 -1
  62. package/build/commands/serve/serve.js +5 -103
  63. package/build/commands/serve/serve.js.map +1 -1
  64. package/build/commands/serve/serveOptions.d.ts +6 -0
  65. package/build/commands/serve/serveOptions.d.ts.map +1 -0
  66. package/build/commands/serve/serveOptions.js +90 -0
  67. package/build/commands/serve/serveOptions.js.map +1 -0
  68. package/build/commands/shared/baseConfigUtils.d.ts +1 -25
  69. package/build/commands/shared/baseConfigUtils.d.ts.map +1 -1
  70. package/build/commands/shared/baseConfigUtils.js +3 -193
  71. package/build/commands/shared/baseConfigUtils.js.map +1 -1
  72. package/build/commands/shared/clientSurfaceAttachment.d.ts +131 -0
  73. package/build/commands/shared/clientSurfaceAttachment.d.ts.map +1 -0
  74. package/build/commands/shared/clientSurfaceAttachment.js +205 -0
  75. package/build/commands/shared/clientSurfaceAttachment.js.map +1 -0
  76. package/build/commands/shared/configParsingUtils.d.ts +9 -0
  77. package/build/commands/shared/configParsingUtils.d.ts.map +1 -0
  78. package/build/commands/shared/configParsingUtils.js +179 -0
  79. package/build/commands/shared/configParsingUtils.js.map +1 -0
  80. package/build/commands/shared/serveClient.d.ts.map +1 -1
  81. package/build/commands/shared/serveClient.js +35 -12
  82. package/build/commands/shared/serveClient.js.map +1 -1
  83. package/build/commands/shared/serveTargetResolver.d.ts.map +1 -1
  84. package/build/commands/shared/serveTargetResolver.js +42 -3
  85. package/build/commands/shared/serveTargetResolver.js.map +1 -1
  86. package/build/config/configLoader.d.ts +0 -1
  87. package/build/config/configLoader.d.ts.map +1 -1
  88. package/build/config/configLoader.js +12 -7
  89. package/build/config/configLoader.js.map +1 -1
  90. package/build/config/envProcessor.d.ts +3 -8
  91. package/build/config/envProcessor.d.ts.map +1 -1
  92. package/build/config/envProcessor.js +17 -34
  93. package/build/config/envProcessor.js.map +1 -1
  94. package/build/config/mcpConfigMerge.d.ts.map +1 -1
  95. package/build/config/mcpConfigMerge.js +15 -8
  96. package/build/config/mcpConfigMerge.js.map +1 -1
  97. package/build/constants/mcp.d.ts +1 -1
  98. package/build/constants/mcp.d.ts.map +1 -1
  99. package/build/constants/mcp.js +1 -1
  100. package/build/constants/mcp.js.map +1 -1
  101. package/build/core/capabilities/asyncLoadingOrchestrator.d.ts +2 -1
  102. package/build/core/capabilities/asyncLoadingOrchestrator.d.ts.map +1 -1
  103. package/build/core/capabilities/asyncLoadingOrchestrator.js +4 -1
  104. package/build/core/capabilities/asyncLoadingOrchestrator.js.map +1 -1
  105. package/build/core/capabilities/capabilityCatalog.d.ts +88 -0
  106. package/build/core/capabilities/capabilityCatalog.d.ts.map +1 -0
  107. package/build/core/capabilities/capabilityCatalog.js +235 -0
  108. package/build/core/capabilities/capabilityCatalog.js.map +1 -0
  109. package/build/core/capabilities/capabilityNotificationFacts.d.ts +9 -0
  110. package/build/core/capabilities/capabilityNotificationFacts.d.ts.map +1 -0
  111. package/build/core/capabilities/capabilityNotificationFacts.js +11 -0
  112. package/build/core/capabilities/capabilityNotificationFacts.js.map +1 -0
  113. package/build/core/capabilities/metaToolProvider.d.ts +2 -0
  114. package/build/core/capabilities/metaToolProvider.d.ts.map +1 -1
  115. package/build/core/capabilities/metaToolProvider.js +37 -77
  116. package/build/core/capabilities/metaToolProvider.js.map +1 -1
  117. package/build/core/capabilities/toolRegistry.d.ts +2 -1
  118. package/build/core/capabilities/toolRegistry.d.ts.map +1 -1
  119. package/build/core/capabilities/toolRegistry.js +2 -0
  120. package/build/core/capabilities/toolRegistry.js.map +1 -1
  121. package/build/core/configChangeHandler.d.ts +7 -2
  122. package/build/core/configChangeHandler.d.ts.map +1 -1
  123. package/build/core/configChangeHandler.js +47 -23
  124. package/build/core/configChangeHandler.js.map +1 -1
  125. package/build/core/filtering/filterSelection.d.ts +72 -0
  126. package/build/core/filtering/filterSelection.d.ts.map +1 -0
  127. package/build/core/filtering/filterSelection.js +262 -0
  128. package/build/core/filtering/filterSelection.js.map +1 -0
  129. package/build/core/instructions/instructionsDistribution.d.ts +52 -0
  130. package/build/core/instructions/instructionsDistribution.d.ts.map +1 -0
  131. package/build/core/instructions/instructionsDistribution.js +124 -0
  132. package/build/core/instructions/instructionsDistribution.js.map +1 -0
  133. package/build/core/loading/loadingStateTracker.d.ts +19 -0
  134. package/build/core/loading/loadingStateTracker.d.ts.map +1 -1
  135. package/build/core/loading/loadingStateTracker.js +37 -0
  136. package/build/core/loading/loadingStateTracker.js.map +1 -1
  137. package/build/core/loading/mcpLoadingManager.d.ts +103 -8
  138. package/build/core/loading/mcpLoadingManager.d.ts.map +1 -1
  139. package/build/core/loading/mcpLoadingManager.js +301 -31
  140. package/build/core/loading/mcpLoadingManager.js.map +1 -1
  141. package/build/core/protocol/notificationHandlers.js +2 -2
  142. package/build/core/protocol/notificationHandlers.js.map +1 -1
  143. package/build/core/protocol/promptRequestHandlers.d.ts +4 -0
  144. package/build/core/protocol/promptRequestHandlers.d.ts.map +1 -0
  145. package/build/core/protocol/promptRequestHandlers.js +64 -0
  146. package/build/core/protocol/promptRequestHandlers.js.map +1 -0
  147. package/build/core/protocol/requestHandlerUtils.d.ts +8 -0
  148. package/build/core/protocol/requestHandlerUtils.d.ts.map +1 -0
  149. package/build/core/protocol/requestHandlerUtils.js +48 -0
  150. package/build/core/protocol/requestHandlerUtils.js.map +1 -0
  151. package/build/core/protocol/requestHandlers.d.ts +2 -0
  152. package/build/core/protocol/requestHandlers.d.ts.map +1 -1
  153. package/build/core/protocol/requestHandlers.js +7 -391
  154. package/build/core/protocol/requestHandlers.js.map +1 -1
  155. package/build/core/protocol/resourceRequestHandlers.d.ts +3 -0
  156. package/build/core/protocol/resourceRequestHandlers.d.ts.map +1 -0
  157. package/build/core/protocol/resourceRequestHandlers.js +76 -0
  158. package/build/core/protocol/resourceRequestHandlers.js.map +1 -0
  159. package/build/core/protocol/toolRequestHandlers.d.ts +4 -0
  160. package/build/core/protocol/toolRequestHandlers.d.ts.map +1 -0
  161. package/build/core/protocol/toolRequestHandlers.js +132 -0
  162. package/build/core/protocol/toolRequestHandlers.js.map +1 -0
  163. package/build/core/server/adapters/TemplateServerAdapter.d.ts +0 -5
  164. package/build/core/server/adapters/TemplateServerAdapter.d.ts.map +1 -1
  165. package/build/core/server/adapters/TemplateServerAdapter.js +7 -30
  166. package/build/core/server/adapters/TemplateServerAdapter.js.map +1 -1
  167. package/build/core/server/clientInstanceFactory.d.ts +13 -0
  168. package/build/core/server/clientInstanceFactory.d.ts.map +1 -0
  169. package/build/core/server/clientInstanceFactory.js +32 -0
  170. package/build/core/server/clientInstanceFactory.js.map +1 -0
  171. package/build/core/server/clientInstancePool.d.ts +8 -49
  172. package/build/core/server/clientInstancePool.d.ts.map +1 -1
  173. package/build/core/server/clientInstancePool.js +61 -72
  174. package/build/core/server/clientInstancePool.js.map +1 -1
  175. package/build/core/server/clientInstancePoolTypes.d.ts +52 -0
  176. package/build/core/server/clientInstancePoolTypes.d.ts.map +1 -0
  177. package/build/core/server/clientInstancePoolTypes.js +10 -0
  178. package/build/core/server/clientInstancePoolTypes.js.map +1 -0
  179. package/build/core/server/connectionResolver.d.ts.map +1 -1
  180. package/build/core/server/connectionResolver.js +34 -31
  181. package/build/core/server/connectionResolver.js.map +1 -1
  182. package/build/core/server/mcpServerLifecycleManager.d.ts +9 -1
  183. package/build/core/server/mcpServerLifecycleManager.d.ts.map +1 -1
  184. package/build/core/server/mcpServerLifecycleManager.js +22 -0
  185. package/build/core/server/mcpServerLifecycleManager.js.map +1 -1
  186. package/build/core/server/requestContextPreparation.d.ts +38 -0
  187. package/build/core/server/requestContextPreparation.d.ts.map +1 -0
  188. package/build/core/server/requestContextPreparation.js +49 -0
  189. package/build/core/server/requestContextPreparation.js.map +1 -0
  190. package/build/core/server/serverManager.d.ts +8 -0
  191. package/build/core/server/serverManager.d.ts.map +1 -1
  192. package/build/core/server/serverManager.js +84 -2
  193. package/build/core/server/serverManager.js.map +1 -1
  194. package/build/core/server/templateIdentity.d.ts +44 -0
  195. package/build/core/server/templateIdentity.d.ts.map +1 -0
  196. package/build/core/server/templateIdentity.js +95 -0
  197. package/build/core/server/templateIdentity.js.map +1 -0
  198. package/build/core/server/templateServerCleanup.d.ts +23 -0
  199. package/build/core/server/templateServerCleanup.d.ts.map +1 -0
  200. package/build/core/server/templateServerCleanup.js +155 -0
  201. package/build/core/server/templateServerCleanup.js.map +1 -0
  202. package/build/core/server/templateServerManager.d.ts +12 -3
  203. package/build/core/server/templateServerManager.d.ts.map +1 -1
  204. package/build/core/server/templateServerManager.js +82 -127
  205. package/build/core/server/templateServerManager.js.map +1 -1
  206. package/build/core/tools/internal/adapters/installation/types.d.ts +16 -11
  207. package/build/core/tools/internal/adapters/installation/types.d.ts.map +1 -1
  208. package/build/core/tools/internal/adapters/installationAdapter.d.ts +3 -13
  209. package/build/core/tools/internal/adapters/installationAdapter.d.ts.map +1 -1
  210. package/build/core/tools/internal/adapters/installationAdapter.js +85 -69
  211. package/build/core/tools/internal/adapters/installationAdapter.js.map +1 -1
  212. package/build/core/tools/internal/installationHandlers.d.ts.map +1 -1
  213. package/build/core/tools/internal/installationHandlers.js +10 -4
  214. package/build/core/tools/internal/installationHandlers.js.map +1 -1
  215. package/build/core/tools/internal/integration.domainMocks.testSetup.d.ts +2 -0
  216. package/build/core/tools/internal/integration.domainMocks.testSetup.d.ts.map +1 -0
  217. package/build/core/tools/internal/integration.domainMocks.testSetup.js +66 -0
  218. package/build/core/tools/internal/integration.domainMocks.testSetup.js.map +1 -0
  219. package/build/core/tools/internal/integration.testSetup.d.ts +2 -0
  220. package/build/core/tools/internal/integration.testSetup.d.ts.map +1 -0
  221. package/build/core/tools/internal/integration.testSetup.js +469 -0
  222. package/build/core/tools/internal/integration.testSetup.js.map +1 -0
  223. package/build/core/tools/internal/schemas/index.d.ts +6 -0
  224. package/build/core/tools/internal/schemas/index.d.ts.map +1 -1
  225. package/build/core/tools/internal/schemas/installation.d.ts +6 -0
  226. package/build/core/tools/internal/schemas/installation.d.ts.map +1 -1
  227. package/build/core/tools/internal/schemas/installation.js +13 -1
  228. package/build/core/tools/internal/schemas/installation.js.map +1 -1
  229. package/build/domains/config-change/backupRetention.d.ts +14 -0
  230. package/build/domains/config-change/backupRetention.d.ts.map +1 -0
  231. package/build/domains/config-change/backupRetention.js +36 -0
  232. package/build/domains/config-change/backupRetention.js.map +1 -0
  233. package/build/domains/config-change/configChange.d.ts +4 -0
  234. package/build/domains/config-change/configChange.d.ts.map +1 -0
  235. package/build/domains/config-change/configChange.js +346 -0
  236. package/build/domains/config-change/configChange.js.map +1 -0
  237. package/build/domains/config-change/configLock.d.ts +6 -0
  238. package/build/domains/config-change/configLock.d.ts.map +1 -0
  239. package/build/domains/config-change/configLock.js +62 -0
  240. package/build/domains/config-change/configLock.js.map +1 -0
  241. package/build/domains/config-change/types.d.ts +64 -0
  242. package/build/domains/config-change/types.d.ts.map +1 -0
  243. package/build/domains/config-change/types.js +2 -0
  244. package/build/domains/config-change/types.js.map +1 -0
  245. package/build/domains/installation/index.d.ts +4 -3
  246. package/build/domains/installation/index.d.ts.map +1 -1
  247. package/build/domains/installation/index.js +5 -3
  248. package/build/domains/installation/index.js.map +1 -1
  249. package/build/domains/installation/serverInstallationSourceResolution.d.ts +6 -0
  250. package/build/domains/installation/serverInstallationSourceResolution.d.ts.map +1 -0
  251. package/build/domains/installation/serverInstallationSourceResolution.js +210 -0
  252. package/build/domains/installation/serverInstallationSourceResolution.js.map +1 -0
  253. package/build/domains/installation/serverInstallationTypes.d.ts +105 -0
  254. package/build/domains/installation/serverInstallationTypes.d.ts.map +1 -0
  255. package/build/domains/installation/serverInstallationTypes.js +2 -0
  256. package/build/domains/installation/serverInstallationTypes.js.map +1 -0
  257. package/build/domains/installation/serverInstallationWorkflow.d.ts +4 -0
  258. package/build/domains/installation/serverInstallationWorkflow.d.ts.map +1 -0
  259. package/build/domains/installation/serverInstallationWorkflow.js +148 -0
  260. package/build/domains/installation/serverInstallationWorkflow.js.map +1 -0
  261. package/build/domains/preset/manager/presetManager.d.ts +0 -4
  262. package/build/domains/preset/manager/presetManager.d.ts.map +1 -1
  263. package/build/domains/preset/manager/presetManager.js +19 -153
  264. package/build/domains/preset/manager/presetManager.js.map +1 -1
  265. package/build/domains/preset/manager/presetManagerCleanup.d.ts +15 -0
  266. package/build/domains/preset/manager/presetManagerCleanup.d.ts.map +1 -0
  267. package/build/domains/preset/manager/presetManagerCleanup.js +34 -0
  268. package/build/domains/preset/manager/presetManagerCleanup.js.map +1 -0
  269. package/build/domains/preset/manager/presetStorage.d.ts +4 -0
  270. package/build/domains/preset/manager/presetStorage.d.ts.map +1 -0
  271. package/build/domains/preset/manager/presetStorage.js +27 -0
  272. package/build/domains/preset/manager/presetStorage.js.map +1 -0
  273. package/build/domains/preset/manager/presetTesting.d.ts +8 -0
  274. package/build/domains/preset/manager/presetTesting.d.ts.map +1 -0
  275. package/build/domains/preset/manager/presetTesting.js +38 -0
  276. package/build/domains/preset/manager/presetTesting.js.map +1 -0
  277. package/build/domains/preset/manager/presetValidation.d.ts +3 -0
  278. package/build/domains/preset/manager/presetValidation.d.ts.map +1 -0
  279. package/build/domains/preset/manager/presetValidation.js +41 -0
  280. package/build/domains/preset/manager/presetValidation.js.map +1 -0
  281. package/build/domains/registry/cacheManager.d.ts.map +1 -1
  282. package/build/domains/registry/cacheManager.js +1 -0
  283. package/build/domains/registry/cacheManager.js.map +1 -1
  284. package/build/domains/registry/mcpRegistryClient.d.ts.map +1 -1
  285. package/build/domains/registry/mcpRegistryClient.js +2 -1
  286. package/build/domains/registry/mcpRegistryClient.js.map +1 -1
  287. package/build/server.d.ts.map +1 -1
  288. package/build/server.js +1 -0
  289. package/build/server.js.map +1 -1
  290. package/build/transport/http/middlewares/scopeAuthMiddleware.d.ts +3 -0
  291. package/build/transport/http/middlewares/scopeAuthMiddleware.d.ts.map +1 -1
  292. package/build/transport/http/middlewares/scopeAuthMiddleware.js +18 -28
  293. package/build/transport/http/middlewares/scopeAuthMiddleware.js.map +1 -1
  294. package/build/transport/http/middlewares/tagsExtractor.d.ts.map +1 -1
  295. package/build/transport/http/middlewares/tagsExtractor.js +46 -255
  296. package/build/transport/http/middlewares/tagsExtractor.js.map +1 -1
  297. package/build/transport/http/routes/cliTokenRoute.d.ts.map +1 -1
  298. package/build/transport/http/routes/cliTokenRoute.js +20 -14
  299. package/build/transport/http/routes/cliTokenRoute.js.map +1 -1
  300. package/build/transport/http/routes/inspectRequestContext.d.ts +5 -0
  301. package/build/transport/http/routes/inspectRequestContext.d.ts.map +1 -0
  302. package/build/transport/http/routes/inspectRequestContext.js +59 -0
  303. package/build/transport/http/routes/inspectRequestContext.js.map +1 -0
  304. package/build/transport/http/routes/inspectRoutes.d.ts +3 -3
  305. package/build/transport/http/routes/inspectRoutes.d.ts.map +1 -1
  306. package/build/transport/http/routes/inspectRoutes.js +60 -83
  307. package/build/transport/http/routes/inspectRoutes.js.map +1 -1
  308. package/build/transport/http/routes/oauthRoutes.d.ts.map +1 -1
  309. package/build/transport/http/routes/oauthRoutes.js +99 -223
  310. package/build/transport/http/routes/oauthRoutes.js.map +1 -1
  311. package/build/transport/http/routes/streamableHttpRoutes.d.ts +2 -2
  312. package/build/transport/http/routes/streamableHttpRoutes.d.ts.map +1 -1
  313. package/build/transport/http/routes/streamableHttpRoutes.js +39 -84
  314. package/build/transport/http/routes/streamableHttpRoutes.js.map +1 -1
  315. package/build/transport/http/routes/toolRoutes.d.ts.map +1 -1
  316. package/build/transport/http/routes/toolRoutes.js +138 -39
  317. package/build/transport/http/routes/toolRoutes.js.map +1 -1
  318. package/build/transport/http/server.d.ts.map +1 -1
  319. package/build/transport/http/server.js +93 -0
  320. package/build/transport/http/server.js.map +1 -1
  321. package/build/transport/http/streamableSessionLifecycle.d.ts +90 -0
  322. package/build/transport/http/streamableSessionLifecycle.d.ts.map +1 -0
  323. package/build/transport/http/streamableSessionLifecycle.js +348 -0
  324. package/build/transport/http/streamableSessionLifecycle.js.map +1 -0
  325. package/build/transport/http/utils/contextExtractor.d.ts +1 -1
  326. package/build/transport/http/utils/contextExtractor.d.ts.map +1 -1
  327. package/build/transport/http/utils/contextExtractor.js +1 -33
  328. package/build/transport/http/utils/contextExtractor.js.map +1 -1
  329. package/build/transport/stdioProxyTransport.d.ts +1 -0
  330. package/build/transport/stdioProxyTransport.d.ts.map +1 -1
  331. package/build/transport/stdioProxyTransport.js +3 -0
  332. package/build/transport/stdioProxyTransport.js.map +1 -1
  333. package/build/transport/transportFactory.d.ts +1 -2
  334. package/build/transport/transportFactory.d.ts.map +1 -1
  335. package/build/transport/transportFactory.js +54 -4
  336. package/build/transport/transportFactory.js.map +1 -1
  337. package/build/transport/transportFactory.testSetup.d.ts +2 -0
  338. package/build/transport/transportFactory.testSetup.d.ts.map +1 -0
  339. package/build/transport/transportFactory.testSetup.js +83 -0
  340. package/build/transport/transportFactory.testSetup.js.map +1 -0
  341. package/build/utils/context/sessionIdentity.d.ts +9 -0
  342. package/build/utils/context/sessionIdentity.d.ts.map +1 -0
  343. package/build/utils/context/sessionIdentity.js +39 -0
  344. package/build/utils/context/sessionIdentity.js.map +1 -0
  345. package/build/utils/ui/interactiveSelector.d.ts +0 -25
  346. package/build/utils/ui/interactiveSelector.d.ts.map +1 -1
  347. package/build/utils/ui/interactiveSelector.js +12 -329
  348. package/build/utils/ui/interactiveSelector.js.map +1 -1
  349. package/build/utils/ui/interactiveSelectorPrompts.d.ts +7 -0
  350. package/build/utils/ui/interactiveSelectorPrompts.d.ts.map +1 -0
  351. package/build/utils/ui/interactiveSelectorPrompts.js +60 -0
  352. package/build/utils/ui/interactiveSelectorPrompts.js.map +1 -0
  353. package/build/utils/ui/interactiveSelectorQuery.d.ts +5 -0
  354. package/build/utils/ui/interactiveSelectorQuery.d.ts.map +1 -0
  355. package/build/utils/ui/interactiveSelectorQuery.js +67 -0
  356. package/build/utils/ui/interactiveSelectorQuery.js.map +1 -0
  357. package/build/utils/ui/interactiveSelectorTagUi.d.ts +7 -0
  358. package/build/utils/ui/interactiveSelectorTagUi.d.ts.map +1 -0
  359. package/build/utils/ui/interactiveSelectorTagUi.js +129 -0
  360. package/build/utils/ui/interactiveSelectorTagUi.js.map +1 -0
  361. package/package.json +2 -2
  362. package/build/transport/http/utils/sessionService.d.ts +0 -106
  363. package/build/transport/http/utils/sessionService.d.ts.map +0 -1
  364. package/build/transport/http/utils/sessionService.js +0 -342
  365. package/build/transport/http/utils/sessionService.js.map +0 -1
@@ -0,0 +1,124 @@
1
+ import path from 'node:path';
2
+ const LEGACY_MANAGED_BLOCK_PATTERN = /<!-- BEGIN 1MCP MANAGED STARTUP DOCS -->[\s\S]*?<!-- END 1MCP MANAGED STARTUP DOCS -->\n?/gm;
3
+ export function shouldEagerlyInspectServer(server) {
4
+ if (server.type === 'template') {
5
+ return true;
6
+ }
7
+ return server.available !== false && server.status !== 'disconnected';
8
+ }
9
+ export function assembleInstructionDetail(input) {
10
+ const { summary, inspected } = input;
11
+ if (inspected) {
12
+ return {
13
+ server: inspected.server,
14
+ type: inspected.type,
15
+ status: inspected.status,
16
+ available: inspected.available,
17
+ toolCount: inspected.totalTools ?? inspected.tools.length,
18
+ hasInstructions: Boolean(inspected.instructions?.trim()),
19
+ instructions: inspected.instructions,
20
+ note: inspected.instructions ? undefined : '(none provided)',
21
+ };
22
+ }
23
+ return {
24
+ server: summary.server,
25
+ type: summary.type,
26
+ status: summary.status,
27
+ available: summary.available,
28
+ toolCount: summary.toolCount,
29
+ hasInstructions: summary.hasInstructions,
30
+ instructions: input.inspectFailed ? null : input.cachedInstructions,
31
+ note: summary.type === 'template' && input.inspectFailed
32
+ ? '(unavailable: template server could not be initialized with the current context)'
33
+ : '(unavailable: server is not currently connected)',
34
+ };
35
+ }
36
+ export async function collectInstructionDetails(input) {
37
+ const details = [];
38
+ const cachedInstructions = input.cachedInstructions ?? {};
39
+ for (const server of input.servers) {
40
+ if (!shouldEagerlyInspectServer(server)) {
41
+ details.push(assembleInstructionDetail({ summary: server, cachedInstructions: cachedInstructions[server.server] }));
42
+ continue;
43
+ }
44
+ try {
45
+ const inspected = await input.inspectServer(server.server);
46
+ if (!isInstructionServerInspectResult(inspected)) {
47
+ details.push(assembleUnavailableDetail(server));
48
+ continue;
49
+ }
50
+ details.push(assembleInstructionDetail({ summary: server, inspected }));
51
+ }
52
+ catch {
53
+ details.push(assembleInstructionDetail({ summary: server, inspectFailed: true }));
54
+ }
55
+ }
56
+ return details;
57
+ }
58
+ function isInstructionServerInspectResult(inspected) {
59
+ return inspected.kind === 'server';
60
+ }
61
+ function assembleUnavailableDetail(server) {
62
+ return {
63
+ server: server.server,
64
+ type: server.type,
65
+ status: server.status,
66
+ available: server.available,
67
+ toolCount: server.toolCount,
68
+ hasInstructions: server.hasInstructions,
69
+ instructions: null,
70
+ note: '(unavailable)',
71
+ };
72
+ }
73
+ export function renderManagedDocContent() {
74
+ return [
75
+ '# 1MCP Agent Bootstrap',
76
+ '',
77
+ 'If this session already received the current 1MCP instructions content from hooks, do not run `1mcp instructions` again.',
78
+ 'Otherwise, run `1mcp instructions` before using any 1MCP-managed MCP servers.',
79
+ '',
80
+ 'Always use the 1MCP CLI as the entrypoint for upstream MCP capabilities. Do not call replaced upstream MCP servers directly when 1MCP is available.',
81
+ '',
82
+ 'Required workflow after you have the instructions content:',
83
+ '1. Review the available servers and choose the one that matches the task.',
84
+ '2. Run `1mcp inspect <server>` before selecting a tool.',
85
+ '3. Run `1mcp inspect <server>/<tool>` before invoking that tool.',
86
+ "4. Run `1mcp run <server>/<tool> --args '<json>'` only after inspecting the tool schema.",
87
+ '',
88
+ 'Use `--preset`, `--tags`, or `--tag-filter` with `1mcp instructions`, `inspect`, and `run` when you need a narrower server set.',
89
+ '',
90
+ ].join('\n');
91
+ }
92
+ export function renderStartupDocManagedBlock(startupDocPath, managedDocPath) {
93
+ if (path.basename(startupDocPath) === 'AGENTS.md' && path.dirname(startupDocPath) === path.dirname(managedDocPath)) {
94
+ return `@${managedDocPath.replace(/\\/g, '/')}\n`;
95
+ }
96
+ const relativePath = path.relative(path.dirname(startupDocPath), managedDocPath).replace(/\\/g, '/');
97
+ return `@${relativePath}\n`;
98
+ }
99
+ export function renderStartupDocManagedBlockForClient(input) {
100
+ if (input.target === 'codex' && input.scope === 'global') {
101
+ return `@${input.managedDocPath.replace(/\\/g, '/')}\n`;
102
+ }
103
+ const relativePath = path.relative(path.dirname(input.startupDocPath), input.managedDocPath).replace(/\\/g, '/');
104
+ return `@${relativePath}\n`;
105
+ }
106
+ export function upsertStartupDocManagedBlock(existingContent, managedBlock) {
107
+ const normalizedExisting = existingContent.replace(/\r\n/g, '\n');
108
+ const referenceLine = managedBlock.trim();
109
+ const managedReferenceAliases = new Set([referenceLine]);
110
+ if (referenceLine.startsWith('@/') && referenceLine.endsWith('/1MCP.md')) {
111
+ managedReferenceAliases.add('@1MCP.md');
112
+ }
113
+ const withoutLegacyBlocks = normalizedExisting.replace(LEGACY_MANAGED_BLOCK_PATTERN, '');
114
+ const remainingLines = withoutLegacyBlocks
115
+ .split('\n')
116
+ .filter((line) => !managedReferenceAliases.has(line.trim()))
117
+ .join('\n')
118
+ .trimEnd();
119
+ if (remainingLines.length === 0) {
120
+ return `${referenceLine}\n`;
121
+ }
122
+ return `${remainingLines}\n${referenceLine}\n`;
123
+ }
124
+ //# sourceMappingURL=instructionsDistribution.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"instructionsDistribution.js","sourceRoot":"","sources":["../../../src/core/instructions/instructionsDistribution.ts"],"names":[],"mappings":"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"}
@@ -96,6 +96,12 @@ export declare class LoadingStateTracker extends EventEmitter {
96
96
  * Initialize tracking for a list of servers
97
97
  */
98
98
  startLoading(serverNames: string[]): void;
99
+ /**
100
+ * Register a single server for tracking at runtime (hot-reload add) without
101
+ * resetting global loading timing. Use this instead of {@link startLoading}
102
+ * when a server is added after the initial boot load. No-op if already known.
103
+ */
104
+ registerServer(name: string): void;
99
105
  /**
100
106
  * Update the state of a specific server
101
107
  */
@@ -124,6 +130,19 @@ export declare class LoadingStateTracker extends EventEmitter {
124
130
  * Get servers in a specific state
125
131
  */
126
132
  getServersByState(state: LoadingState): ServerLoadingInfo[];
133
+ /**
134
+ * Remove a server from tracking.
135
+ *
136
+ * Used when a server is removed from the configuration (including renames,
137
+ * which are processed as a remove of the old name plus an add of the new
138
+ * one). Without this, a removed server's last state — e.g. AwaitingOAuth or
139
+ * Failed — lingers forever in the tracker and is still reported by
140
+ * `/health/mcp`, producing a "ghost" server in the health view that no
141
+ * longer exists in the configuration.
142
+ *
143
+ * @returns true if a tracked server was removed, false if it was not tracked.
144
+ */
145
+ removeServer(name: string): boolean;
127
146
  /**
128
147
  * Reset all tracking state
129
148
  */
@@ -1 +1 @@
1
- {"version":3,"file":"loadingStateTracker.d.ts","sourceRoot":"","sources":["../../../src/core/loading/loadingStateTracker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"loadingStateTracker.d.ts","sourceRoot":"","sources":["../../../src/core/loading/loadingStateTracker.ts"],"names":[],"mappings":"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"}
@@ -72,6 +72,23 @@ export class LoadingStateTracker extends EventEmitter {
72
72
  logger.info(`Started tracking loading for ${serverNames.length} servers`);
73
73
  this.emitProgress();
74
74
  }
75
+ /**
76
+ * Register a single server for tracking at runtime (hot-reload add) without
77
+ * resetting global loading timing. Use this instead of {@link startLoading}
78
+ * when a server is added after the initial boot load. No-op if already known.
79
+ */
80
+ registerServer(name) {
81
+ if (this.servers.has(name))
82
+ return;
83
+ this.loadingStarted = true;
84
+ this.servers.set(name, {
85
+ name,
86
+ state: LoadingState.Pending,
87
+ retryCount: 0,
88
+ });
89
+ debugIf(() => ({ message: `Registered server for loading tracker: ${name}` }));
90
+ this.emitProgress();
91
+ }
75
92
  /**
76
93
  * Update the state of a specific server
77
94
  */
@@ -197,6 +214,26 @@ export class LoadingStateTracker extends EventEmitter {
197
214
  getServersByState(state) {
198
215
  return Array.from(this.servers.values()).filter((s) => s.state === state);
199
216
  }
217
+ /**
218
+ * Remove a server from tracking.
219
+ *
220
+ * Used when a server is removed from the configuration (including renames,
221
+ * which are processed as a remove of the old name plus an add of the new
222
+ * one). Without this, a removed server's last state — e.g. AwaitingOAuth or
223
+ * Failed — lingers forever in the tracker and is still reported by
224
+ * `/health/mcp`, producing a "ghost" server in the health view that no
225
+ * longer exists in the configuration.
226
+ *
227
+ * @returns true if a tracked server was removed, false if it was not tracked.
228
+ */
229
+ removeServer(name) {
230
+ const existed = this.servers.delete(name);
231
+ if (existed) {
232
+ debugIf(() => ({ message: `Removed server from loading tracker: ${name}` }));
233
+ this.emitProgress();
234
+ }
235
+ return existed;
236
+ }
200
237
  /**
201
238
  * Reset all tracking state
202
239
  */
@@ -1 +1 @@
1
- {"version":3,"file":"loadingStateTracker.js","sourceRoot":"","sources":["../../../src/core/loading/loadingStateTracker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"loadingStateTracker.js","sourceRoot":"","sources":["../../../src/core/loading/loadingStateTracker.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { EventEmitter } from 'events';
2
2
  import { ClientManager } from '../../core/client/clientManager.js';
3
- import { AuthProviderTransport, OutboundConnections } from '../../core/types/index.js';
3
+ import { AuthProviderTransport, MCPServerParams, OutboundConnections } from '../../core/types/index.js';
4
4
  import { LoadingStateTracker, LoadingSummary } from './loadingStateTracker.js';
5
5
  /**
6
6
  * Configuration options for MCP loading behavior
@@ -84,32 +84,108 @@ export interface McpLoadingEvents {
84
84
  * ```
85
85
  */
86
86
  export declare class McpLoadingManager extends EventEmitter {
87
+ /**
88
+ * Most-recently constructed instance, exposed so runtime collaborators (e.g.
89
+ * ConfigChangeHandler) can route hot-reload add/remove through the single
90
+ * canonical loading pipeline. Mirrors ServerManager.current / ClientManager.current.
91
+ */
92
+ private static _current;
93
+ static get current(): McpLoadingManager;
87
94
  private clientManager;
88
95
  private config;
89
96
  private stateTracker;
90
97
  private backgroundRetryTimer?;
91
98
  private isShuttingDown;
99
+ /** Per-connection-attempt abort controllers (timeout window only) */
92
100
  private abortControllers;
101
+ /**
102
+ * Per-server operation abort controllers.
103
+ *
104
+ * Covers the full lifetime of a `loadServer` or background-retry operation
105
+ * for a given server name — including the retry loop and its sleep delays.
106
+ * Cancelling this controller stops the loop immediately and prevents the
107
+ * operation from writing state back after the server has been removed.
108
+ *
109
+ * Invariant: only ONE entry per server name exists at a time. Starting a new
110
+ * operation for a name (`loadServer`, `performBackgroundRetry`) replaces the
111
+ * previous controller after aborting it via `cancelServerOperation`.
112
+ */
113
+ private serverOpAbortControllers;
93
114
  constructor(clientManager: ClientManager, config?: Partial<McpLoadingConfig>);
94
115
  /**
95
116
  * Start asynchronous loading of MCP servers
96
117
  * Returns immediately, loading happens in background
97
118
  */
98
119
  startAsyncLoading(transports: Record<string, AuthProviderTransport>): Promise<OutboundConnections>;
120
+ /**
121
+ * Bring a single server online at runtime (config hot-reload add / rename).
122
+ *
123
+ * This is the canonical runtime counterpart to {@link startAsyncLoading}: it
124
+ * routes a hot-reload-added server through the SAME loading pipeline
125
+ * (`loadSingleServer`) that boot uses, so the server is tracked in the
126
+ * LoadingStateTracker and gets identical retry + OAuth handling. Previously
127
+ * the config-change path called `ServerManager.startServer` directly, which
128
+ * connected the client but never registered it with the tracker — so the new
129
+ * server was invisible to `/health/mcp` (stuck "connecting", no OAuth button).
130
+ *
131
+ * Idempotent: if the server already exists it is fully unloaded first (via
132
+ * `unloadServer`, which cancels any in-flight load operation), making renames
133
+ * and modified-restart correct without leaving ghost connections or stale
134
+ * tracker entries.
135
+ */
136
+ loadServer(name: string, config: MCPServerParams): Promise<void>;
137
+ /**
138
+ * Take a single server offline at runtime (config hot-reload remove / rename
139
+ * old name). Disconnects the client, closes the transport, and clears the
140
+ * server's entry from the LoadingStateTracker so it does not linger as a
141
+ * "ghost" in `/health/mcp`.
142
+ *
143
+ * Cancels any in-flight `loadServer` or background-retry operation for `name`
144
+ * before cleaning up, so that the loop cannot write state back after removal.
145
+ */
146
+ unloadServer(name: string): Promise<void>;
147
+ /**
148
+ * Abort and remove the operation-level AbortController for `name`, if one
149
+ * exists. This is the single authoritative way to interrupt a `loadSingleServer`
150
+ * retry loop (including its sleep delays and connection attempt) for a specific
151
+ * server.
152
+ *
153
+ * Safe to call when no operation is in flight — it is a no-op in that case.
154
+ */
155
+ private cancelServerOperation;
99
156
  /**
100
157
  * Load servers with concurrency control using ParallelExecutor
101
158
  */
102
159
  private loadServersWithConcurrency;
103
160
  /**
104
- * Load a single server with retry logic
161
+ * Load a single server with retry logic.
162
+ *
163
+ * @param opSignal - Operation-level abort signal provided by the caller
164
+ * (`loadServer` or `performBackgroundRetry`). When this signal fires the
165
+ * retry loop terminates immediately — without writing a Failed state to the
166
+ * tracker — because the cancellation was intentional (e.g. `unloadServer`
167
+ * was called concurrently). The signal is also threaded down into
168
+ * `createClientWithTimeout` so the active connection attempt is aborted too.
105
169
  */
106
170
  private loadSingleServer;
107
171
  /**
108
- * Create client with timeout and cancellation support
172
+ * Create client with timeout and cancellation support.
173
+ *
174
+ * @param opSignal - Operation-level signal from `loadSingleServer`. When it
175
+ * fires (e.g. because `unloadServer` was called), it is linked to the
176
+ * internal per-connection-attempt AbortController so that the active
177
+ * connection and its timeout are both cancelled.
109
178
  */
110
179
  private createClientWithTimeout;
111
180
  /**
112
- * Set up background retry for failed servers
181
+ * Set up background retry for failed servers.
182
+ *
183
+ * Idempotent: no-ops if a timer is already running. Without this guard,
184
+ * every hot-reload cycle that drives the tracker to a "complete" summary
185
+ * (e.g. unloadServer leaving all remaining servers ready) would fire
186
+ * LoadingComplete again and install a second interval on top of the first,
187
+ * causing failed servers to be retried N times per tick after N hot-reload
188
+ * cycles.
113
189
  */
114
190
  private setupBackgroundRetry;
115
191
  /**
@@ -120,6 +196,7 @@ export declare class McpLoadingManager extends EventEmitter {
120
196
  * Get current loading state tracker
121
197
  */
122
198
  getStateTracker(): LoadingStateTracker;
199
+ private extractAuthorizationUrl;
123
200
  /**
124
201
  * Get current loading summary
125
202
  */
@@ -137,7 +214,13 @@ export declare class McpLoadingManager extends EventEmitter {
137
214
  */
138
215
  getFailedServers(): string[];
139
216
  /**
140
- * Cancel loading of a specific server
217
+ * Cancel loading of a specific server.
218
+ *
219
+ * Cancels both the operation-level retry loop (serverOpAbortControllers) and
220
+ * the active connection-attempt timeout (abortControllers). Before this fix,
221
+ * only the connection-attempt abort was signalled, so a server sleeping
222
+ * between retries would continue uninterrupted and could resurface as Loading,
223
+ * Ready, or Failed after the caller believed it was cancelled.
141
224
  */
142
225
  cancelServerLoading(serverName: string): void;
143
226
  /**
@@ -145,11 +228,18 @@ export declare class McpLoadingManager extends EventEmitter {
145
228
  */
146
229
  cancelServersLoading(serverNames: string[]): void;
147
230
  /**
148
- * Cancel all currently loading servers
231
+ * Cancel all currently loading servers.
232
+ *
233
+ * Previously iterated only abortControllers (connection-attempt window), so
234
+ * servers sleeping between retries were invisible and never cancelled. Now
235
+ * collects the union of both maps so every in-flight operation is reached.
149
236
  */
150
237
  cancelAllLoading(): void;
151
238
  /**
152
- * Get list of servers that are currently being loaded and can be cancelled
239
+ * Get list of servers that are currently being loaded and can be cancelled.
240
+ *
241
+ * Returns the union of servers with an active connection attempt and servers
242
+ * sleeping between retries — both are cancellable via cancelServerLoading.
153
243
  */
154
244
  getCancellableServers(): string[];
155
245
  /**
@@ -157,7 +247,12 @@ export declare class McpLoadingManager extends EventEmitter {
157
247
  */
158
248
  shutdown(): void;
159
249
  /**
160
- * Utility method for sleeping
250
+ * Utility method for sleeping.
251
+ *
252
+ * When `signal` is provided the sleep is cancellable: aborting the signal
253
+ * rejects the returned promise immediately (clearing the underlying timer),
254
+ * which causes the retry loop in `loadSingleServer` to exit without waiting
255
+ * for the full delay.
161
256
  */
162
257
  private sleep;
163
258
  }
@@ -1 +1 @@
1
- {"version":3,"file":"mcpLoadingManager.d.ts","sourceRoot":"","sources":["../../../src/core/loading/mcpLoadingManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mcpLoadingManager.d.ts","sourceRoot":"","sources":["../../../src/core/loading/mcpLoadingManager.ts"],"names":[],"mappings":"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"}