@mcp-abap-adt/core 2.1.3 → 2.1.6

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 (438) hide show
  1. package/CHANGELOG.md +18 -0
  2. package/dist/bin/help.d.ts +6 -0
  3. package/dist/bin/help.d.ts.map +1 -0
  4. package/dist/bin/help.js +59 -0
  5. package/dist/bin/mcp-abap-adt-v2.d.ts +9 -0
  6. package/dist/bin/mcp-abap-adt-v2.d.ts.map +1 -0
  7. package/dist/bin/mcp-abap-adt-v2.js +247 -0
  8. package/dist/handlers/behavior_definition/readonly/handleGetBdef.d.ts +21 -0
  9. package/dist/handlers/behavior_definition/readonly/handleGetBdef.d.ts.map +1 -0
  10. package/dist/handlers/behavior_definition/readonly/handleGetBdef.js +24 -0
  11. package/dist/handlers/behavior_definition/readonly/handleGetBdef.js.map +1 -0
  12. package/dist/handlers/class/high/handleCreateLocalTestClass.d.ts.map +1 -1
  13. package/dist/handlers/class/high/handleCreateLocalTestClass.js +6 -1
  14. package/dist/handlers/class/high/handleCreateLocalTestClass.js.map +1 -1
  15. package/dist/handlers/class/high/handleGetUnitTest.d.ts +38 -0
  16. package/dist/handlers/class/high/handleGetUnitTest.d.ts.map +1 -0
  17. package/dist/handlers/class/high/handleGetUnitTest.js +73 -0
  18. package/dist/handlers/class/high/handleGetUnitTest.js.map +1 -0
  19. package/dist/handlers/class/high/handleRunUnitTest.d.ts +122 -0
  20. package/dist/handlers/class/high/handleRunUnitTest.d.ts.map +1 -0
  21. package/dist/handlers/class/high/handleRunUnitTest.js +133 -0
  22. package/dist/handlers/class/high/handleRunUnitTest.js.map +1 -0
  23. package/dist/handlers/class/readonly/handleGetClass.d.ts +23 -0
  24. package/dist/handlers/class/readonly/handleGetClass.d.ts.map +1 -0
  25. package/dist/handlers/class/readonly/handleGetClass.js +77 -0
  26. package/dist/handlers/class/readonly/handleGetClass.js.map +1 -0
  27. package/dist/handlers/data_element/readonly/handleGetDataElement.d.ts +23 -0
  28. package/dist/handlers/data_element/readonly/handleGetDataElement.d.ts.map +1 -0
  29. package/dist/handlers/data_element/readonly/handleGetDataElement.js +79 -0
  30. package/dist/handlers/data_element/readonly/handleGetDataElement.js.map +1 -0
  31. package/dist/handlers/domain/readonly/handleGetDomain.d.ts +23 -0
  32. package/dist/handlers/domain/readonly/handleGetDomain.d.ts.map +1 -0
  33. package/dist/handlers/domain/readonly/handleGetDomain.js +79 -0
  34. package/dist/handlers/domain/readonly/handleGetDomain.js.map +1 -0
  35. package/dist/handlers/enhancement/readonly/handleGetEnhancements.d.ts.map +1 -1
  36. package/dist/handlers/enhancement/readonly/handleGetEnhancements.js +7 -7
  37. package/dist/handlers/enhancement/readonly/handleGetEnhancements.js.map +1 -1
  38. package/dist/handlers/function/readonly/handleGetFunctionGroup.d.ts +23 -0
  39. package/dist/handlers/function/readonly/handleGetFunctionGroup.d.ts.map +1 -0
  40. package/dist/handlers/function/readonly/handleGetFunctionGroup.js +77 -0
  41. package/dist/handlers/function/readonly/handleGetFunctionGroup.js.map +1 -0
  42. package/dist/handlers/include/readonly/handleGetIncludesList.d.ts.map +1 -1
  43. package/dist/handlers/include/readonly/handleGetIncludesList.js +8 -5
  44. package/dist/handlers/include/readonly/handleGetIncludesList.js.map +1 -1
  45. package/dist/handlers/interface/readonly/handleGetInterface.d.ts +23 -0
  46. package/dist/handlers/interface/readonly/handleGetInterface.d.ts.map +1 -0
  47. package/dist/handlers/interface/readonly/handleGetInterface.js +77 -0
  48. package/dist/handlers/interface/readonly/handleGetInterface.js.map +1 -0
  49. package/dist/handlers/package/readonly/handleGetPackage.d.ts +22 -0
  50. package/dist/handlers/package/readonly/handleGetPackage.d.ts.map +1 -0
  51. package/dist/handlers/package/readonly/handleGetPackage.js +108 -0
  52. package/dist/handlers/package/readonly/handleGetPackage.js.map +1 -0
  53. package/dist/handlers/program/readonly/handleGetProgram.d.ts +23 -0
  54. package/dist/handlers/program/readonly/handleGetProgram.d.ts.map +1 -0
  55. package/dist/handlers/program/readonly/handleGetProgram.js +77 -0
  56. package/dist/handlers/program/readonly/handleGetProgram.js.map +1 -0
  57. package/dist/handlers/search/readonly/handleGetObjectsByType.d.ts.map +1 -1
  58. package/dist/handlers/search/readonly/handleGetObjectsByType.js +5 -1
  59. package/dist/handlers/search/readonly/handleGetObjectsByType.js.map +1 -1
  60. package/dist/handlers/search/readonly/handleGetObjectsList.d.ts.map +1 -1
  61. package/dist/handlers/search/readonly/handleGetObjectsList.js +8 -4
  62. package/dist/handlers/search/readonly/handleGetObjectsList.js.map +1 -1
  63. package/dist/handlers/service_definition/readonly/handleGetServiceDefinition.d.ts +18 -0
  64. package/dist/handlers/service_definition/readonly/handleGetServiceDefinition.d.ts.map +1 -0
  65. package/dist/handlers/service_definition/readonly/handleGetServiceDefinition.js +109 -0
  66. package/dist/handlers/service_definition/readonly/handleGetServiceDefinition.js.map +1 -0
  67. package/dist/handlers/structure/readonly/handleGetStructure.d.ts +23 -0
  68. package/dist/handlers/structure/readonly/handleGetStructure.d.ts.map +1 -0
  69. package/dist/handlers/structure/readonly/handleGetStructure.js +77 -0
  70. package/dist/handlers/structure/readonly/handleGetStructure.js.map +1 -0
  71. package/dist/handlers/system/readonly/handleGetObjectInfo.d.ts.map +1 -1
  72. package/dist/handlers/system/readonly/handleGetObjectInfo.js +8 -14
  73. package/dist/handlers/system/readonly/handleGetObjectInfo.js.map +1 -1
  74. package/dist/handlers/table/readonly/handleGetTable.d.ts +23 -0
  75. package/dist/handlers/table/readonly/handleGetTable.d.ts.map +1 -0
  76. package/dist/handlers/table/readonly/handleGetTable.js +77 -0
  77. package/dist/handlers/table/readonly/handleGetTable.js.map +1 -0
  78. package/dist/handlers/view/readonly/handleGetView.d.ts +33 -0
  79. package/dist/handlers/view/readonly/handleGetView.d.ts.map +1 -0
  80. package/dist/handlers/view/readonly/handleGetView.js +90 -0
  81. package/dist/handlers/view/readonly/handleGetView.js.map +1 -0
  82. package/dist/index.d.ts +126 -0
  83. package/dist/index.d.ts.map +1 -0
  84. package/dist/index.js +2979 -0
  85. package/dist/index.js.map +1 -0
  86. package/dist/lib/ServerConfigManager.d.ts +90 -0
  87. package/dist/lib/ServerConfigManager.d.ts.map +1 -0
  88. package/dist/lib/ServerConfigManager.js +237 -0
  89. package/dist/lib/ServerConfigManager.js.map +1 -0
  90. package/dist/lib/activationUtils.d.ts +59 -0
  91. package/dist/lib/activationUtils.d.ts.map +1 -0
  92. package/dist/lib/activationUtils.js +168 -0
  93. package/dist/lib/authBrokerFactory.d.ts +96 -0
  94. package/dist/lib/authBrokerFactory.d.ts.map +1 -0
  95. package/dist/lib/authBrokerFactory.js +531 -0
  96. package/dist/lib/authBrokerFactory.js.map +1 -0
  97. package/dist/lib/config/ServerConfig.d.ts +17 -0
  98. package/dist/lib/config/ServerConfig.d.ts.map +1 -0
  99. package/dist/lib/config/ServerConfig.js +7 -0
  100. package/dist/lib/config/ServerConfig.js.map +1 -0
  101. package/dist/lib/getFullCodeCache.d.ts +3 -0
  102. package/dist/lib/getFullCodeCache.d.ts.map +1 -0
  103. package/dist/lib/getFullCodeCache.js +56 -0
  104. package/dist/lib/handlers/handlers/base/BaseHandlerGroup.d.ts +36 -0
  105. package/dist/lib/handlers/handlers/base/BaseHandlerGroup.d.ts.map +1 -0
  106. package/dist/lib/handlers/handlers/base/BaseHandlerGroup.js +268 -0
  107. package/dist/lib/handlers/handlers/base/BaseHandlerGroup.js.map +1 -0
  108. package/dist/lib/handlers/handlers/examples/usage-example.d.ts +29 -0
  109. package/dist/lib/handlers/handlers/examples/usage-example.d.ts.map +1 -0
  110. package/dist/lib/handlers/handlers/examples/usage-example.js +119 -0
  111. package/dist/lib/handlers/handlers/examples/usage-example.js.map +1 -0
  112. package/dist/lib/handlers/handlers/groups/HighLevelHandlersGroup.d.ts +14 -0
  113. package/dist/lib/handlers/handlers/groups/HighLevelHandlersGroup.d.ts.map +1 -0
  114. package/dist/lib/handlers/handlers/groups/HighLevelHandlersGroup.js +322 -0
  115. package/dist/lib/handlers/handlers/groups/HighLevelHandlersGroup.js.map +1 -0
  116. package/dist/lib/handlers/handlers/groups/LowLevelHandlersGroup.d.ts +14 -0
  117. package/dist/lib/handlers/handlers/groups/LowLevelHandlersGroup.d.ts.map +1 -0
  118. package/dist/lib/handlers/handlers/groups/LowLevelHandlersGroup.js +1214 -0
  119. package/dist/lib/handlers/handlers/groups/LowLevelHandlersGroup.js.map +1 -0
  120. package/dist/lib/handlers/handlers/groups/ReadOnlyHandlersGroup.d.ts +14 -0
  121. package/dist/lib/handlers/handlers/groups/ReadOnlyHandlersGroup.d.ts.map +1 -0
  122. package/dist/lib/handlers/handlers/groups/ReadOnlyHandlersGroup.js +232 -0
  123. package/dist/lib/handlers/handlers/groups/ReadOnlyHandlersGroup.js.map +1 -0
  124. package/dist/lib/handlers/handlers/groups/SearchHandlersGroup.d.ts +14 -0
  125. package/dist/lib/handlers/handlers/groups/SearchHandlersGroup.d.ts.map +1 -0
  126. package/dist/lib/handlers/handlers/groups/SearchHandlersGroup.js +57 -0
  127. package/dist/lib/handlers/handlers/groups/SearchHandlersGroup.js.map +1 -0
  128. package/dist/lib/handlers/handlers/groups/SystemHandlersGroup.d.ts +14 -0
  129. package/dist/lib/handlers/handlers/groups/SystemHandlersGroup.d.ts.map +1 -0
  130. package/dist/lib/handlers/handlers/groups/SystemHandlersGroup.js +176 -0
  131. package/dist/lib/handlers/handlers/groups/SystemHandlersGroup.js.map +1 -0
  132. package/dist/lib/handlers/handlers/groups/index.d.ts +13 -0
  133. package/dist/lib/handlers/handlers/groups/index.d.ts.map +1 -0
  134. package/dist/lib/handlers/handlers/groups/index.js +21 -0
  135. package/dist/lib/handlers/handlers/groups/index.js.map +1 -0
  136. package/dist/lib/handlers/handlers/index.d.ts +14 -0
  137. package/dist/lib/handlers/handlers/index.d.ts.map +1 -0
  138. package/dist/lib/handlers/handlers/index.js +37 -0
  139. package/dist/lib/handlers/handlers/index.js.map +1 -0
  140. package/dist/lib/handlers/handlers/interfaces.d.ts +67 -0
  141. package/dist/lib/handlers/handlers/interfaces.d.ts.map +1 -0
  142. package/dist/lib/handlers/handlers/interfaces.js +3 -0
  143. package/dist/lib/handlers/handlers/interfaces.js.map +1 -0
  144. package/dist/lib/handlers/handlers/registry/CompositeHandlersRegistry.d.ts +49 -0
  145. package/dist/lib/handlers/handlers/registry/CompositeHandlersRegistry.d.ts.map +1 -0
  146. package/dist/lib/handlers/handlers/registry/CompositeHandlersRegistry.js +88 -0
  147. package/dist/lib/handlers/handlers/registry/CompositeHandlersRegistry.js.map +1 -0
  148. package/dist/lib/runtimeConfig.d.ts +20 -0
  149. package/dist/lib/runtimeConfig.d.ts.map +1 -0
  150. package/dist/lib/runtimeConfig.js +130 -0
  151. package/dist/lib/runtimeConfig.js.map +1 -0
  152. package/dist/lib/servers/BaseMcpServer.d.ts +56 -0
  153. package/dist/lib/servers/BaseMcpServer.d.ts.map +1 -0
  154. package/dist/lib/servers/BaseMcpServer.js +198 -0
  155. package/dist/lib/servers/BaseMcpServer.js.map +1 -0
  156. package/dist/lib/servers/ConnectionContext.d.ts +20 -0
  157. package/dist/lib/servers/ConnectionContext.d.ts.map +1 -0
  158. package/dist/lib/servers/ConnectionContext.js +3 -0
  159. package/dist/lib/servers/ConnectionContext.js.map +1 -0
  160. package/dist/lib/servers/SseServer.d.ts +32 -0
  161. package/dist/lib/servers/SseServer.d.ts.map +1 -0
  162. package/dist/lib/servers/SseServer.js +139 -0
  163. package/dist/lib/servers/SseServer.js.map +1 -0
  164. package/dist/lib/servers/StdioServer.d.ts +20 -0
  165. package/dist/lib/servers/StdioServer.d.ts.map +1 -0
  166. package/dist/lib/servers/StdioServer.js +32 -0
  167. package/dist/lib/servers/StdioServer.js.map +1 -0
  168. package/dist/lib/servers/StreamableHttpServer.d.ts +30 -0
  169. package/dist/lib/servers/StreamableHttpServer.d.ts.map +1 -0
  170. package/dist/lib/servers/StreamableHttpServer.js +83 -0
  171. package/dist/lib/servers/StreamableHttpServer.js.map +1 -0
  172. package/dist/lib/servers/handlers/base/BaseHandlerGroup.d.ts +36 -0
  173. package/dist/lib/servers/handlers/base/BaseHandlerGroup.d.ts.map +1 -0
  174. package/dist/lib/servers/handlers/base/BaseHandlerGroup.js +268 -0
  175. package/dist/lib/servers/handlers/base/BaseHandlerGroup.js.map +1 -0
  176. package/dist/lib/servers/handlers/examples/usage-example.d.ts +29 -0
  177. package/dist/lib/servers/handlers/examples/usage-example.d.ts.map +1 -0
  178. package/dist/lib/servers/handlers/examples/usage-example.js +119 -0
  179. package/dist/lib/servers/handlers/examples/usage-example.js.map +1 -0
  180. package/dist/lib/servers/handlers/groups/HighLevelHandlersGroup.d.ts +14 -0
  181. package/dist/lib/servers/handlers/groups/HighLevelHandlersGroup.d.ts.map +1 -0
  182. package/dist/lib/servers/handlers/groups/HighLevelHandlersGroup.js +322 -0
  183. package/dist/lib/servers/handlers/groups/HighLevelHandlersGroup.js.map +1 -0
  184. package/dist/lib/servers/handlers/groups/LowLevelHandlersGroup.d.ts +14 -0
  185. package/dist/lib/servers/handlers/groups/LowLevelHandlersGroup.d.ts.map +1 -0
  186. package/dist/lib/servers/handlers/groups/LowLevelHandlersGroup.js +1214 -0
  187. package/dist/lib/servers/handlers/groups/LowLevelHandlersGroup.js.map +1 -0
  188. package/dist/lib/servers/handlers/groups/ReadOnlyHandlersGroup.d.ts +14 -0
  189. package/dist/lib/servers/handlers/groups/ReadOnlyHandlersGroup.d.ts.map +1 -0
  190. package/dist/lib/servers/handlers/groups/ReadOnlyHandlersGroup.js +232 -0
  191. package/dist/lib/servers/handlers/groups/ReadOnlyHandlersGroup.js.map +1 -0
  192. package/dist/lib/servers/handlers/groups/SearchHandlersGroup.d.ts +14 -0
  193. package/dist/lib/servers/handlers/groups/SearchHandlersGroup.d.ts.map +1 -0
  194. package/dist/lib/servers/handlers/groups/SearchHandlersGroup.js +57 -0
  195. package/dist/lib/servers/handlers/groups/SearchHandlersGroup.js.map +1 -0
  196. package/dist/lib/servers/handlers/groups/SystemHandlersGroup.d.ts +14 -0
  197. package/dist/lib/servers/handlers/groups/SystemHandlersGroup.d.ts.map +1 -0
  198. package/dist/lib/servers/handlers/groups/SystemHandlersGroup.js +176 -0
  199. package/dist/lib/servers/handlers/groups/SystemHandlersGroup.js.map +1 -0
  200. package/dist/lib/servers/handlers/groups/index.d.ts +13 -0
  201. package/dist/lib/servers/handlers/groups/index.d.ts.map +1 -0
  202. package/dist/lib/servers/handlers/groups/index.js +21 -0
  203. package/dist/lib/servers/handlers/groups/index.js.map +1 -0
  204. package/dist/lib/servers/handlers/index.d.ts +14 -0
  205. package/dist/lib/servers/handlers/index.d.ts.map +1 -0
  206. package/dist/lib/servers/handlers/index.js +37 -0
  207. package/dist/lib/servers/handlers/index.js.map +1 -0
  208. package/dist/lib/servers/handlers/interfaces.d.ts +67 -0
  209. package/dist/lib/servers/handlers/interfaces.d.ts.map +1 -0
  210. package/dist/lib/servers/handlers/interfaces.js +3 -0
  211. package/dist/lib/servers/handlers/interfaces.js.map +1 -0
  212. package/dist/lib/servers/handlers/registry/CompositeHandlersRegistry.d.ts +49 -0
  213. package/dist/lib/servers/handlers/registry/CompositeHandlersRegistry.d.ts.map +1 -0
  214. package/dist/lib/servers/handlers/registry/CompositeHandlersRegistry.js +88 -0
  215. package/dist/lib/servers/handlers/registry/CompositeHandlersRegistry.js.map +1 -0
  216. package/dist/lib/servers/index.d.ts +5 -0
  217. package/dist/lib/servers/index.d.ts.map +1 -0
  218. package/dist/lib/servers/index.js +21 -0
  219. package/dist/lib/servers/index.js.map +1 -0
  220. package/dist/lib/servers/launcher.d.ts +2 -0
  221. package/dist/lib/servers/launcher.d.ts.map +1 -0
  222. package/dist/lib/servers/launcher.js +123 -0
  223. package/dist/lib/servers/launcher.js.map +1 -0
  224. package/dist/lib/servers/mcp_handlers.d.ts +25 -0
  225. package/dist/lib/servers/mcp_handlers.d.ts.map +1 -0
  226. package/dist/lib/servers/mcp_handlers.js +822 -0
  227. package/dist/lib/servers/mcp_handlers.js.map +1 -0
  228. package/dist/lib/servers/mcp_server.d.ts +7 -0
  229. package/dist/lib/servers/mcp_server.d.ts.map +1 -0
  230. package/dist/lib/servers/mcp_server.js +12 -0
  231. package/dist/lib/servers/utils.d.ts +42 -0
  232. package/dist/lib/servers/utils.d.ts.map +1 -0
  233. package/dist/lib/servers/utils.js +620 -0
  234. package/dist/lib/servers/utils.js.map +1 -0
  235. package/dist/lib/servers/v2/__tests__/unit/McpServer.test.d.ts +7 -0
  236. package/dist/lib/servers/v2/__tests__/unit/McpServer.test.d.ts.map +1 -0
  237. package/dist/lib/servers/v2/__tests__/unit/McpServer.test.js +218 -0
  238. package/dist/lib/servers/v2/connection/LocalConnectionProvider.d.ts +20 -0
  239. package/dist/lib/servers/v2/connection/LocalConnectionProvider.d.ts.map +1 -0
  240. package/dist/lib/servers/v2/connection/LocalConnectionProvider.js +70 -0
  241. package/dist/lib/servers/v2/connection/RemoteConnectionProvider.d.ts +21 -0
  242. package/dist/lib/servers/v2/connection/RemoteConnectionProvider.d.ts.map +1 -0
  243. package/dist/lib/servers/v2/connection/RemoteConnectionProvider.js +36 -0
  244. package/dist/lib/servers/v2/connection/index.d.ts +6 -0
  245. package/dist/lib/servers/v2/connection/index.d.ts.map +1 -0
  246. package/dist/lib/servers/v2/connection/index.js +10 -0
  247. package/dist/lib/servers/v2/factory/AuthBrokerFactory.d.ts +29 -0
  248. package/dist/lib/servers/v2/factory/AuthBrokerFactory.d.ts.map +1 -0
  249. package/dist/lib/servers/v2/factory/AuthBrokerFactory.js +79 -0
  250. package/dist/lib/servers/v2/factory/LocalModeFactory.d.ts +38 -0
  251. package/dist/lib/servers/v2/factory/LocalModeFactory.d.ts.map +1 -0
  252. package/dist/lib/servers/v2/factory/LocalModeFactory.js +38 -0
  253. package/dist/lib/servers/v2/factory/index.d.ts +6 -0
  254. package/dist/lib/servers/v2/factory/index.d.ts.map +1 -0
  255. package/dist/lib/servers/v2/factory/index.js +10 -0
  256. package/dist/lib/servers/v2/index.d.ts +9 -0
  257. package/dist/lib/servers/v2/index.d.ts.map +1 -0
  258. package/dist/lib/servers/v2/index.js +27 -0
  259. package/dist/lib/servers/v2/index.js.map +1 -0
  260. package/dist/lib/servers/v2/interfaces/connection.d.ts +188 -0
  261. package/dist/lib/servers/v2/interfaces/connection.d.ts.map +1 -0
  262. package/dist/lib/servers/v2/interfaces/connection.js +7 -0
  263. package/dist/lib/servers/v2/interfaces/index.d.ts +10 -0
  264. package/dist/lib/servers/v2/interfaces/index.d.ts.map +1 -0
  265. package/dist/lib/servers/v2/interfaces/index.js +25 -0
  266. package/dist/lib/servers/v2/interfaces/protocol.d.ts +30 -0
  267. package/dist/lib/servers/v2/interfaces/protocol.d.ts.map +1 -0
  268. package/dist/lib/servers/v2/interfaces/protocol.js +7 -0
  269. package/dist/lib/servers/v2/interfaces/session.d.ts +98 -0
  270. package/dist/lib/servers/v2/interfaces/session.d.ts.map +1 -0
  271. package/dist/lib/servers/v2/interfaces/session.js +7 -0
  272. package/dist/lib/servers/v2/interfaces/transport.d.ts +88 -0
  273. package/dist/lib/servers/v2/interfaces/transport.d.ts.map +1 -0
  274. package/dist/lib/servers/v2/interfaces/transport.js +7 -0
  275. package/dist/lib/servers/v2/protocol/ProtocolHandler.d.ts +21 -0
  276. package/dist/lib/servers/v2/protocol/ProtocolHandler.d.ts.map +1 -0
  277. package/dist/lib/servers/v2/protocol/ProtocolHandler.js +77 -0
  278. package/dist/lib/servers/v2/protocol/index.d.ts +5 -0
  279. package/dist/lib/servers/v2/protocol/index.d.ts.map +1 -0
  280. package/dist/lib/servers/v2/protocol/index.js +8 -0
  281. package/dist/lib/servers/v2/server/McpServer.d.ts +76 -0
  282. package/dist/lib/servers/v2/server/McpServer.d.ts.map +1 -0
  283. package/dist/lib/servers/v2/server/McpServer.js +243 -0
  284. package/dist/lib/servers/v2/server/index.d.ts +5 -0
  285. package/dist/lib/servers/v2/server/index.d.ts.map +1 -0
  286. package/dist/lib/servers/v2/server/index.js +8 -0
  287. package/dist/lib/servers/v2/session/SessionManager.d.ts +40 -0
  288. package/dist/lib/servers/v2/session/SessionManager.d.ts.map +1 -0
  289. package/dist/lib/servers/v2/session/SessionManager.js +136 -0
  290. package/dist/lib/servers/v2/session/index.d.ts +5 -0
  291. package/dist/lib/servers/v2/session/index.d.ts.map +1 -0
  292. package/dist/lib/servers/v2/session/index.js +8 -0
  293. package/dist/lib/servers/v2/transports/SseTransport.d.ts +49 -0
  294. package/dist/lib/servers/v2/transports/SseTransport.d.ts.map +1 -0
  295. package/dist/lib/servers/v2/transports/SseTransport.js +89 -0
  296. package/dist/lib/servers/v2/transports/StdioTransport.d.ts +31 -0
  297. package/dist/lib/servers/v2/transports/StdioTransport.d.ts.map +1 -0
  298. package/dist/lib/servers/v2/transports/StdioTransport.js +91 -0
  299. package/dist/lib/servers/v2/transports/StreamableHttpTransport.d.ts +51 -0
  300. package/dist/lib/servers/v2/transports/StreamableHttpTransport.d.ts.map +1 -0
  301. package/dist/lib/servers/v2/transports/StreamableHttpTransport.js +147 -0
  302. package/dist/lib/servers/v2/transports/index.d.ts +7 -0
  303. package/dist/lib/servers/v2/transports/index.d.ts.map +1 -0
  304. package/dist/lib/servers/v2/transports/index.js +12 -0
  305. package/dist/lib/servers/v2/types/common.d.ts +17 -0
  306. package/dist/lib/servers/v2/types/common.d.ts.map +1 -0
  307. package/dist/lib/servers/v2/types/common.js +6 -0
  308. package/dist/lib/servers/v2/types/common.js.map +1 -0
  309. package/dist/lib/servers/v2/types/index.d.ts +8 -0
  310. package/dist/lib/servers/v2/types/index.d.ts.map +1 -0
  311. package/dist/lib/servers/v2/types/index.js +24 -0
  312. package/dist/lib/servers/v2/types/index.js.map +1 -0
  313. package/dist/lib/servers/v2/types/transport.d.ts +28 -0
  314. package/dist/lib/servers/v2/types/transport.d.ts.map +1 -0
  315. package/dist/lib/servers/v2/types/transport.js +8 -0
  316. package/dist/lib/servers/v2/types/transport.js.map +1 -0
  317. package/dist/lib/servers/v2/utils/StdioLogger.d.ts +17 -0
  318. package/dist/lib/servers/v2/utils/StdioLogger.d.ts.map +1 -0
  319. package/dist/lib/servers/v2/utils/StdioLogger.js +33 -0
  320. package/dist/lib/servers/v2/utils/StdioLogger.js.map +1 -0
  321. package/dist/lib/stores/UnixFileServiceKeyStore.d.ts +42 -0
  322. package/dist/lib/stores/UnixFileServiceKeyStore.d.ts.map +1 -0
  323. package/dist/lib/stores/UnixFileServiceKeyStore.js +53 -0
  324. package/dist/lib/stores/UnixFileSessionStore.d.ts +54 -0
  325. package/dist/lib/stores/UnixFileSessionStore.d.ts.map +1 -0
  326. package/dist/lib/stores/UnixFileSessionStore.js +70 -0
  327. package/dist/lib/stores/WindowsFileServiceKeyStore.d.ts +42 -0
  328. package/dist/lib/stores/WindowsFileServiceKeyStore.d.ts.map +1 -0
  329. package/dist/lib/stores/WindowsFileServiceKeyStore.js +53 -0
  330. package/dist/lib/stores/WindowsFileSessionStore.d.ts +54 -0
  331. package/dist/lib/stores/WindowsFileSessionStore.d.ts.map +1 -0
  332. package/dist/lib/stores/WindowsFileSessionStore.js +70 -0
  333. package/dist/lib/toolsRegistry.d.ts +13 -0
  334. package/dist/lib/toolsRegistry.d.ts.map +1 -0
  335. package/dist/lib/toolsRegistry.js +410 -0
  336. package/dist/lib/transportConfig.d.ts +27 -0
  337. package/dist/lib/transportConfig.d.ts.map +1 -0
  338. package/dist/lib/transportConfig.js +124 -0
  339. package/dist/lib/transports/stdio.d.ts +10 -0
  340. package/dist/lib/transports/stdio.d.ts.map +1 -0
  341. package/dist/lib/transports/stdio.js +73 -0
  342. package/dist/lib/utils.d.ts +37 -0
  343. package/dist/lib/utils.d.ts.map +1 -1
  344. package/dist/lib/utils.js +83 -0
  345. package/dist/lib/utils.js.map +1 -1
  346. package/dist/lib/yamlConfig.d.ts +59 -0
  347. package/dist/lib/yamlConfig.d.ts.map +1 -0
  348. package/dist/lib/yamlConfig.js +349 -0
  349. package/dist/lib/yamlConfig.js.map +1 -0
  350. package/dist/server/launcher.js +49 -0
  351. package/dist/server/launcher.js.map +1 -1
  352. package/dist/server/v1/AuthBrokerConfig.d.ts +19 -0
  353. package/dist/server/v1/AuthBrokerConfig.d.ts.map +1 -0
  354. package/dist/server/v1/AuthBrokerConfig.js +44 -0
  355. package/dist/server/v1/AuthBrokerConfig.js.map +1 -0
  356. package/dist/server/v1/IServerConfig.d.ts +17 -0
  357. package/dist/server/v1/IServerConfig.d.ts.map +1 -0
  358. package/dist/server/v1/IServerConfig.js +7 -0
  359. package/dist/server/v1/IServerConfig.js.map +1 -0
  360. package/dist/server/v1/ServerConfig.d.ts +16 -0
  361. package/dist/server/v1/ServerConfig.d.ts.map +1 -0
  362. package/dist/server/v1/ServerConfig.js +6 -0
  363. package/dist/server/v1/ServerConfig.js.map +1 -0
  364. package/dist/server/v1/embeddable-server.d.ts +89 -0
  365. package/dist/server/v1/embeddable-server.d.ts.map +1 -0
  366. package/dist/server/v1/embeddable-server.js +83 -0
  367. package/dist/server/v1/embeddable-server.js.map +1 -0
  368. package/dist/server/v1/index.d.ts +30 -0
  369. package/dist/server/v1/index.d.ts.map +1 -0
  370. package/dist/server/v1/index.js +65 -0
  371. package/dist/server/v1/index.js.map +1 -0
  372. package/dist/server/v1/legacy-server.d.ts +141 -0
  373. package/dist/server/v1/legacy-server.d.ts.map +1 -0
  374. package/dist/server/v1/legacy-server.js +2099 -0
  375. package/dist/server/v1/legacy-server.js.map +1 -0
  376. package/dist/server/v1/mcp_handlers.d.ts +19 -0
  377. package/dist/server/v1/mcp_handlers.d.ts.map +1 -0
  378. package/dist/server/v1/mcp_handlers.js +85 -0
  379. package/dist/server/v1/mcp_handlers.js.map +1 -0
  380. package/dist/server/v2/AuthBrokerConfig.d.ts +22 -0
  381. package/dist/server/v2/AuthBrokerConfig.d.ts.map +1 -0
  382. package/dist/server/v2/AuthBrokerConfig.js +46 -0
  383. package/dist/server/v2/AuthBrokerConfig.js.map +1 -0
  384. package/dist/server/v2/BaseMcpServer.d.ts +67 -0
  385. package/dist/server/v2/BaseMcpServer.d.ts.map +1 -0
  386. package/dist/server/v2/BaseMcpServer.js +273 -0
  387. package/dist/server/v2/BaseMcpServer.js.map +1 -0
  388. package/dist/server/v2/ConnectionContext.d.ts +20 -0
  389. package/dist/server/v2/ConnectionContext.d.ts.map +1 -0
  390. package/dist/server/v2/ConnectionContext.js +3 -0
  391. package/dist/server/v2/ConnectionContext.js.map +1 -0
  392. package/dist/server/v2/IHttpApplication.d.ts +42 -0
  393. package/dist/server/v2/IHttpApplication.d.ts.map +1 -0
  394. package/dist/server/v2/IHttpApplication.js +3 -0
  395. package/dist/server/v2/IHttpApplication.js.map +1 -0
  396. package/dist/server/v2/IServerConfig.d.ts +15 -0
  397. package/dist/server/v2/IServerConfig.d.ts.map +1 -0
  398. package/dist/server/v2/IServerConfig.js +7 -0
  399. package/dist/server/v2/IServerConfig.js.map +1 -0
  400. package/dist/server/v2/ServerConfig.d.ts +16 -0
  401. package/dist/server/v2/ServerConfig.d.ts.map +1 -0
  402. package/dist/server/v2/ServerConfig.js +6 -0
  403. package/dist/server/v2/ServerConfig.js.map +1 -0
  404. package/dist/server/v2/SseServer.d.ts +95 -0
  405. package/dist/server/v2/SseServer.d.ts.map +1 -0
  406. package/dist/server/v2/SseServer.js +217 -0
  407. package/dist/server/v2/SseServer.js.map +1 -0
  408. package/dist/server/v2/StdioServer.d.ts +20 -0
  409. package/dist/server/v2/StdioServer.d.ts.map +1 -0
  410. package/dist/server/v2/StdioServer.js +32 -0
  411. package/dist/server/v2/StdioServer.js.map +1 -0
  412. package/dist/server/v2/StreamableHttpServer.d.ts +94 -0
  413. package/dist/server/v2/StreamableHttpServer.d.ts.map +1 -0
  414. package/dist/server/v2/StreamableHttpServer.js +170 -0
  415. package/dist/server/v2/StreamableHttpServer.js.map +1 -0
  416. package/dist/server/v2/index.d.ts +6 -0
  417. package/dist/server/v2/index.d.ts.map +1 -0
  418. package/dist/server/v2/index.js +22 -0
  419. package/dist/server/v2/index.js.map +1 -0
  420. package/dist/server/v2/launcher.d.ts +2 -0
  421. package/dist/server/v2/launcher.d.ts.map +1 -0
  422. package/dist/server/v2/launcher.js +181 -0
  423. package/dist/server/v2/launcher.js.map +1 -0
  424. package/dist/server/v2/mcp_handlers.d.ts +25 -0
  425. package/dist/server/v2/mcp_handlers.d.ts.map +1 -0
  426. package/dist/server/v2/mcp_handlers.js +828 -0
  427. package/dist/server/v2/mcp_handlers.js.map +1 -0
  428. package/dist/server/v2/utils.d.ts +42 -0
  429. package/dist/server/v2/utils.d.ts.map +1 -0
  430. package/dist/server/v2/utils.js +620 -0
  431. package/dist/server/v2/utils.js.map +1 -0
  432. package/dist/tools/test-v2-server-stdio-compiled.js +132 -0
  433. package/dist/utils/lockStateManager.d.ts +2 -12
  434. package/dist/utils/lockStateManager.d.ts.map +1 -1
  435. package/dist/utils/lockStateManager.js +4 -63
  436. package/dist/utils/lockStateManager.js.map +1 -1
  437. package/docs/user-guide/AVAILABLE_TOOLS.md +1 -1
  438. package/package.json +1 -1
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Handler groups exports
3
+ *
4
+ * Handler groups allow splitting handlers into logical groups for flexible composition.
5
+ * Each group can be injected independently, allowing different server configurations
6
+ * to use different sets of handlers.
7
+ */
8
+ export { ReadOnlyHandlersGroup } from "./ReadOnlyHandlersGroup.js";
9
+ export { HighLevelHandlersGroup } from "./HighLevelHandlersGroup.js";
10
+ export { LowLevelHandlersGroup } from "./LowLevelHandlersGroup.js";
11
+ export { SystemHandlersGroup } from "./SystemHandlersGroup.js";
12
+ export { SearchHandlersGroup } from "./SearchHandlersGroup.js";
13
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/lib/handlers/handlers/groups/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC"}
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ /**
3
+ * Handler groups exports
4
+ *
5
+ * Handler groups allow splitting handlers into logical groups for flexible composition.
6
+ * Each group can be injected independently, allowing different server configurations
7
+ * to use different sets of handlers.
8
+ */
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.SearchHandlersGroup = exports.SystemHandlersGroup = exports.LowLevelHandlersGroup = exports.HighLevelHandlersGroup = exports.ReadOnlyHandlersGroup = void 0;
11
+ var ReadOnlyHandlersGroup_js_1 = require("./ReadOnlyHandlersGroup.js");
12
+ Object.defineProperty(exports, "ReadOnlyHandlersGroup", { enumerable: true, get: function () { return ReadOnlyHandlersGroup_js_1.ReadOnlyHandlersGroup; } });
13
+ var HighLevelHandlersGroup_js_1 = require("./HighLevelHandlersGroup.js");
14
+ Object.defineProperty(exports, "HighLevelHandlersGroup", { enumerable: true, get: function () { return HighLevelHandlersGroup_js_1.HighLevelHandlersGroup; } });
15
+ var LowLevelHandlersGroup_js_1 = require("./LowLevelHandlersGroup.js");
16
+ Object.defineProperty(exports, "LowLevelHandlersGroup", { enumerable: true, get: function () { return LowLevelHandlersGroup_js_1.LowLevelHandlersGroup; } });
17
+ var SystemHandlersGroup_js_1 = require("./SystemHandlersGroup.js");
18
+ Object.defineProperty(exports, "SystemHandlersGroup", { enumerable: true, get: function () { return SystemHandlersGroup_js_1.SystemHandlersGroup; } });
19
+ var SearchHandlersGroup_js_1 = require("./SearchHandlersGroup.js");
20
+ Object.defineProperty(exports, "SearchHandlersGroup", { enumerable: true, get: function () { return SearchHandlersGroup_js_1.SearchHandlersGroup; } });
21
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/lib/handlers/handlers/groups/index.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;AAEH,uEAAmE;AAA1D,iIAAA,qBAAqB,OAAA;AAC9B,yEAAqE;AAA5D,mIAAA,sBAAsB,OAAA;AAC/B,uEAAmE;AAA1D,iIAAA,qBAAqB,OAAA;AAC9B,mEAA+D;AAAtD,6HAAA,mBAAmB,OAAA;AAC5B,mEAA+D;AAAtD,6HAAA,mBAAmB,OAAA"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Handlers module exports
3
+ *
4
+ * This module provides:
5
+ * - Interfaces for handler groups and registries
6
+ * - Base classes for creating handler groups
7
+ * - Composite registry that supports Dependency Injection of handler groups
8
+ * - Concrete handler group implementations
9
+ */
10
+ export * from "./interfaces.js";
11
+ export { BaseHandlerGroup } from "./base/BaseHandlerGroup.js";
12
+ export { CompositeHandlersRegistry } from "./registry/CompositeHandlersRegistry.js";
13
+ export * from "./groups/index.js";
14
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/lib/handlers/handlers/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,cAAc,iBAAiB,CAAC;AAGhC,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAG9D,OAAO,EAAE,yBAAyB,EAAE,MAAM,yCAAyC,CAAC;AAGpF,cAAc,mBAAmB,CAAC"}
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ /**
3
+ * Handlers module exports
4
+ *
5
+ * This module provides:
6
+ * - Interfaces for handler groups and registries
7
+ * - Base classes for creating handler groups
8
+ * - Composite registry that supports Dependency Injection of handler groups
9
+ * - Concrete handler group implementations
10
+ */
11
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
12
+ if (k2 === undefined) k2 = k;
13
+ var desc = Object.getOwnPropertyDescriptor(m, k);
14
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
15
+ desc = { enumerable: true, get: function() { return m[k]; } };
16
+ }
17
+ Object.defineProperty(o, k2, desc);
18
+ }) : (function(o, m, k, k2) {
19
+ if (k2 === undefined) k2 = k;
20
+ o[k2] = m[k];
21
+ }));
22
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
23
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.CompositeHandlersRegistry = exports.BaseHandlerGroup = void 0;
27
+ // Interfaces
28
+ __exportStar(require("./interfaces.js"), exports);
29
+ // Base classes
30
+ var BaseHandlerGroup_js_1 = require("./base/BaseHandlerGroup.js");
31
+ Object.defineProperty(exports, "BaseHandlerGroup", { enumerable: true, get: function () { return BaseHandlerGroup_js_1.BaseHandlerGroup; } });
32
+ // Registry implementations
33
+ var CompositeHandlersRegistry_js_1 = require("./registry/CompositeHandlersRegistry.js");
34
+ Object.defineProperty(exports, "CompositeHandlersRegistry", { enumerable: true, get: function () { return CompositeHandlersRegistry_js_1.CompositeHandlersRegistry; } });
35
+ // Handler groups
36
+ __exportStar(require("./groups/index.js"), exports);
37
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/lib/handlers/handlers/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;;;;;;;;;;;;;;;AAEH,aAAa;AACb,kDAAgC;AAEhC,eAAe;AACf,kEAA8D;AAArD,uHAAA,gBAAgB,OAAA;AAEzB,2BAA2B;AAC3B,wFAAoF;AAA3E,yIAAA,yBAAyB,OAAA;AAElC,iBAAiB;AACjB,oDAAkC"}
@@ -0,0 +1,67 @@
1
+ import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
2
+ import type { HandlerContext } from "../../handlers/interfaces.js";
3
+ /**
4
+ * Tool definition structure
5
+ */
6
+ export interface ToolDefinition {
7
+ name: string;
8
+ description: string;
9
+ inputSchema: any;
10
+ }
11
+ /**
12
+ * Tool handler function type with context injection
13
+ * Context (containing connection and logger) is injected automatically by BaseMcpServer.registerHandlers()
14
+ * and is NOT part of MCP tool signature
15
+ */
16
+ export type ToolHandler = (context: HandlerContext, args: any) => Promise<any>;
17
+ /**
18
+ * Handler registration entry
19
+ */
20
+ export interface HandlerEntry {
21
+ toolDefinition: ToolDefinition;
22
+ handler: ToolHandler;
23
+ }
24
+ /**
25
+ * Interface for a group of handlers
26
+ * Allows splitting handlers into logical groups (readonly, high-level, low-level, system, etc.)
27
+ */
28
+ export interface IHandlerGroup {
29
+ /**
30
+ * Gets the name of the handler group (for identification and debugging)
31
+ */
32
+ getName(): string;
33
+ /**
34
+ * Gets all handler entries in this group
35
+ * @returns Array of handler entries (tool definition + handler function)
36
+ */
37
+ getHandlers(): HandlerEntry[];
38
+ /**
39
+ * Registers all handlers from this group on the MCP server
40
+ * @param server - McpServer instance for tool registration
41
+ */
42
+ registerHandlers(server: McpServer): void;
43
+ }
44
+ /**
45
+ * Interface for handlers registry
46
+ * Supports registration through handler groups via Dependency Injection
47
+ */
48
+ export interface IHandlersRegistry {
49
+ /**
50
+ * Registers all tools on MCP server
51
+ * @param server - McpServer instance for tool registration
52
+ */
53
+ registerAllTools(server: McpServer): void;
54
+ /**
55
+ * Registers a single tool on server
56
+ * @param server - McpServer instance
57
+ * @param toolName - tool name
58
+ * @param toolDefinition - tool definition (name, description, inputSchema)
59
+ * @param handler - handler function
60
+ */
61
+ registerTool(server: McpServer, toolName: string, toolDefinition: ToolDefinition, handler: ToolHandler): void;
62
+ /**
63
+ * Gets list of registered tools
64
+ */
65
+ getRegisteredTools(): string[];
66
+ }
67
+ //# sourceMappingURL=interfaces.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../../../src/lib/handlers/handlers/interfaces.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEpE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAEnE;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,GAAG,CAAC;CAClB;AAED;;;;GAIG;AACH,MAAM,MAAM,WAAW,GAAG,CAAC,OAAO,EAAE,cAAc,EAAE,IAAI,EAAE,GAAG,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC;AAE/E;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,cAAc,EAAE,cAAc,CAAC;IAC/B,OAAO,EAAE,WAAW,CAAC;CACtB;AAED;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B;;OAEG;IACH,OAAO,IAAI,MAAM,CAAC;IAElB;;;OAGG;IACH,WAAW,IAAI,YAAY,EAAE,CAAC;IAE9B;;;OAGG;IACH,gBAAgB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAAC;CAC3C;AAED;;;GAGG;AACH,MAAM,WAAW,iBAAiB;IAChC;;;OAGG;IACH,gBAAgB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAAC;IAE1C;;;;;;OAMG;IACH,YAAY,CACV,MAAM,EAAE,SAAS,EACjB,QAAQ,EAAE,MAAM,EAChB,cAAc,EAAE,cAAc,EAC9B,OAAO,EAAE,WAAW,GACnB,IAAI,CAAC;IAER;;OAEG;IACH,kBAAkB,IAAI,MAAM,EAAE,CAAC;CAChC"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=interfaces.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../../../../src/lib/handlers/handlers/interfaces.ts"],"names":[],"mappings":""}
@@ -0,0 +1,49 @@
1
+ import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
2
+ import { IHandlersRegistry, IHandlerGroup, ToolDefinition, ToolHandler } from "../interfaces.js";
3
+ /**
4
+ * Composite handlers registry that accepts multiple handler groups via Dependency Injection
5
+ * Allows flexible composition of handler sets based on requirements
6
+ */
7
+ export declare class CompositeHandlersRegistry implements IHandlersRegistry {
8
+ private registeredTools;
9
+ private handlerGroups;
10
+ private readonly failOnDuplicate;
11
+ /**
12
+ * Creates a composite registry with the specified handler groups
13
+ * @param handlerGroups - Array of handler groups to register
14
+ * @param failOnDuplicate - When true, throws on duplicate tool names (useful in dev)
15
+ */
16
+ constructor(handlerGroups?: IHandlerGroup[], failOnDuplicate?: boolean);
17
+ /**
18
+ * Adds a handler group to the registry
19
+ * @param group - Handler group to add
20
+ */
21
+ addHandlerGroup(group: IHandlerGroup): void;
22
+ /**
23
+ * Removes a handler group from the registry
24
+ * @param groupName - Name of the group to remove
25
+ */
26
+ removeHandlerGroup(groupName: string): void;
27
+ /**
28
+ * Gets all handler groups in this registry
29
+ */
30
+ getHandlerGroups(): IHandlerGroup[];
31
+ /**
32
+ * Registers all tools from all handler groups on MCP server
33
+ */
34
+ registerAllTools(server: McpServer): void;
35
+ /**
36
+ * Registers a single tool on server
37
+ * Note: This method is provided for compatibility, but it's recommended to use handler groups
38
+ */
39
+ registerTool(server: McpServer, toolName: string, toolDefinition: ToolDefinition, handler: ToolHandler): void;
40
+ /**
41
+ * Gets list of registered tools
42
+ */
43
+ getRegisteredTools(): string[];
44
+ /**
45
+ * Gets list of handler group names
46
+ */
47
+ getHandlerGroupNames(): string[];
48
+ }
49
+ //# sourceMappingURL=CompositeHandlersRegistry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CompositeHandlersRegistry.d.ts","sourceRoot":"","sources":["../../../../../src/lib/handlers/handlers/registry/CompositeHandlersRegistry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EAAE,iBAAiB,EAAE,aAAa,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAEjG;;;GAGG;AACH,qBAAa,yBAA0B,YAAW,iBAAiB;IACjE,OAAO,CAAC,eAAe,CAA0B;IACjD,OAAO,CAAC,aAAa,CAAkB;IACvC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAU;IAE1C;;;;OAIG;gBACS,aAAa,GAAE,aAAa,EAAO,EAAE,eAAe,GAAE,OAAc;IAKhF;;;OAGG;IACH,eAAe,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI;IAI3C;;;OAGG;IACH,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAI3C;;OAEG;IACH,gBAAgB,IAAI,aAAa,EAAE;IAInC;;OAEG;IACH,gBAAgB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI;IAsBzC;;;OAGG;IACH,YAAY,CACV,MAAM,EAAE,SAAS,EACjB,QAAQ,EAAE,MAAM,EAChB,cAAc,EAAE,cAAc,EAC9B,OAAO,EAAE,WAAW,GACnB,IAAI;IAWP;;OAEG;IACH,kBAAkB,IAAI,MAAM,EAAE;IAI9B;;OAEG;IACH,oBAAoB,IAAI,MAAM,EAAE;CAGjC"}
@@ -0,0 +1,88 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CompositeHandlersRegistry = void 0;
4
+ /**
5
+ * Composite handlers registry that accepts multiple handler groups via Dependency Injection
6
+ * Allows flexible composition of handler sets based on requirements
7
+ */
8
+ class CompositeHandlersRegistry {
9
+ registeredTools = new Set();
10
+ handlerGroups;
11
+ failOnDuplicate;
12
+ /**
13
+ * Creates a composite registry with the specified handler groups
14
+ * @param handlerGroups - Array of handler groups to register
15
+ * @param failOnDuplicate - When true, throws on duplicate tool names (useful in dev)
16
+ */
17
+ constructor(handlerGroups = [], failOnDuplicate = true) {
18
+ this.handlerGroups = handlerGroups;
19
+ this.failOnDuplicate = failOnDuplicate;
20
+ }
21
+ /**
22
+ * Adds a handler group to the registry
23
+ * @param group - Handler group to add
24
+ */
25
+ addHandlerGroup(group) {
26
+ this.handlerGroups.push(group);
27
+ }
28
+ /**
29
+ * Removes a handler group from the registry
30
+ * @param groupName - Name of the group to remove
31
+ */
32
+ removeHandlerGroup(groupName) {
33
+ this.handlerGroups = this.handlerGroups.filter(g => g.getName() !== groupName);
34
+ }
35
+ /**
36
+ * Gets all handler groups in this registry
37
+ */
38
+ getHandlerGroups() {
39
+ return [...this.handlerGroups];
40
+ }
41
+ /**
42
+ * Registers all tools from all handler groups on MCP server
43
+ */
44
+ registerAllTools(server) {
45
+ this.registeredTools.clear();
46
+ for (const group of this.handlerGroups) {
47
+ const handlers = group.getHandlers();
48
+ for (const entry of handlers) {
49
+ const name = entry.toolDefinition.name;
50
+ if (this.registeredTools.has(name)) {
51
+ const msg = `Duplicate tool registration detected: "${name}" in group "${group.getName()}"`;
52
+ if (this.failOnDuplicate) {
53
+ throw new Error(msg);
54
+ }
55
+ // Skip duplicate if not failing
56
+ continue;
57
+ }
58
+ this.registeredTools.add(name);
59
+ }
60
+ // Use group's own registration logic (preserves schema conversions)
61
+ group.registerHandlers(server);
62
+ }
63
+ }
64
+ /**
65
+ * Registers a single tool on server
66
+ * Note: This method is provided for compatibility, but it's recommended to use handler groups
67
+ */
68
+ registerTool(server, toolName, toolDefinition, handler) {
69
+ server.registerTool(toolName, {
70
+ description: toolDefinition.description,
71
+ inputSchema: toolDefinition.inputSchema,
72
+ }, handler);
73
+ }
74
+ /**
75
+ * Gets list of registered tools
76
+ */
77
+ getRegisteredTools() {
78
+ return Array.from(this.registeredTools);
79
+ }
80
+ /**
81
+ * Gets list of handler group names
82
+ */
83
+ getHandlerGroupNames() {
84
+ return this.handlerGroups.map(g => g.getName());
85
+ }
86
+ }
87
+ exports.CompositeHandlersRegistry = CompositeHandlersRegistry;
88
+ //# sourceMappingURL=CompositeHandlersRegistry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CompositeHandlersRegistry.js","sourceRoot":"","sources":["../../../../../src/lib/handlers/handlers/registry/CompositeHandlersRegistry.ts"],"names":[],"mappings":";;;AAGA;;;GAGG;AACH,MAAa,yBAAyB;IAC5B,eAAe,GAAgB,IAAI,GAAG,EAAE,CAAC;IACzC,aAAa,CAAkB;IACtB,eAAe,CAAU;IAE1C;;;;OAIG;IACH,YAAY,gBAAiC,EAAE,EAAE,kBAA2B,IAAI;QAC9E,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QACnC,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;IACzC,CAAC;IAED;;;OAGG;IACH,eAAe,CAAC,KAAoB;QAClC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACjC,CAAC;IAED;;;OAGG;IACH,kBAAkB,CAAC,SAAiB;QAClC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,KAAK,SAAS,CAAC,CAAC;IACjF,CAAC;IAED;;OAEG;IACH,gBAAgB;QACd,OAAO,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,CAAC;IACjC,CAAC;IAED;;OAEG;IACH,gBAAgB,CAAC,MAAiB;QAChC,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,CAAC;QAE7B,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACvC,MAAM,QAAQ,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;YACrC,KAAK,MAAM,KAAK,IAAI,QAAQ,EAAE,CAAC;gBAC7B,MAAM,IAAI,GAAG,KAAK,CAAC,cAAc,CAAC,IAAI,CAAC;gBACvC,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;oBACnC,MAAM,GAAG,GAAG,0CAA0C,IAAI,eAAe,KAAK,CAAC,OAAO,EAAE,GAAG,CAAC;oBAC5F,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;wBACzB,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC;oBACvB,CAAC;oBACD,gCAAgC;oBAChC,SAAS;gBACX,CAAC;gBACD,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACjC,CAAC;YACD,oEAAoE;YACpE,KAAK,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;QACjC,CAAC;IACH,CAAC;IAED;;;OAGG;IACH,YAAY,CACV,MAAiB,EACjB,QAAgB,EAChB,cAA8B,EAC9B,OAAoB;QAEpB,MAAM,CAAC,YAAY,CACjB,QAAQ,EACR;YACE,WAAW,EAAE,cAAc,CAAC,WAAW;YACvC,WAAW,EAAE,cAAc,CAAC,WAAW;SACxC,EACD,OAAc,CACf,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,kBAAkB;QAChB,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IAC1C,CAAC;IAED;;OAEG;IACH,oBAAoB;QAClB,OAAO,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;IAClD,CAAC;CACF;AAhGD,8DAgGC"}
@@ -0,0 +1,20 @@
1
+ export declare function parseEnvArg(): string | undefined;
2
+ export declare function parseAuthBrokerPathArg(): string | undefined;
3
+ export declare function parseMcpDestinationArg(): string | undefined;
4
+ export declare function getTransportType(): string | null;
5
+ export declare function resolveEnvFromCwd(): string | undefined;
6
+ export declare function buildRuntimeConfig(): {
7
+ useAuthBroker: boolean;
8
+ isTestEnv: boolean;
9
+ authBrokerPath: string | undefined;
10
+ defaultMcpDestination: string | undefined;
11
+ unsafe: boolean;
12
+ explicitTransportType: string | null;
13
+ transportType: string;
14
+ isHttp: boolean;
15
+ isSse: boolean;
16
+ isStdio: boolean;
17
+ isEnvMandatory: boolean;
18
+ envFilePath: string | undefined;
19
+ };
20
+ //# sourceMappingURL=runtimeConfig.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runtimeConfig.d.ts","sourceRoot":"","sources":["../../src/lib/runtimeConfig.ts"],"names":[],"mappings":"AAGA,wBAAgB,WAAW,IAAI,MAAM,GAAG,SAAS,CAqBhD;AAED,wBAAgB,sBAAsB,IAAI,MAAM,GAAG,SAAS,CAW3D;AAED,wBAAgB,sBAAsB,IAAI,MAAM,GAAG,SAAS,CAW3D;AAED,wBAAgB,gBAAgB,IAAI,MAAM,GAAG,IAAI,CAwBhD;AAED,wBAAgB,iBAAiB,IAAI,MAAM,GAAG,SAAS,CAGtD;AAED,wBAAgB,kBAAkB;;;;;;;;;;;;;EAsCjC"}
@@ -0,0 +1,130 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.parseEnvArg = parseEnvArg;
7
+ exports.parseAuthBrokerPathArg = parseAuthBrokerPathArg;
8
+ exports.parseMcpDestinationArg = parseMcpDestinationArg;
9
+ exports.getTransportType = getTransportType;
10
+ exports.resolveEnvFromCwd = resolveEnvFromCwd;
11
+ exports.buildRuntimeConfig = buildRuntimeConfig;
12
+ const fs_1 = __importDefault(require("fs"));
13
+ const path_1 = __importDefault(require("path"));
14
+ function parseEnvArg() {
15
+ const args = process.argv;
16
+ for (let i = 0; i < args.length; i++) {
17
+ const arg = args[i];
18
+ if (arg.startsWith("--env=")) {
19
+ const envPath = arg.slice("--env=".length);
20
+ if (envPath.length === 0)
21
+ continue;
22
+ if (envPath.startsWith(".\\") || envPath.startsWith("./")) {
23
+ return path_1.default.resolve(process.cwd(), envPath);
24
+ }
25
+ return envPath;
26
+ }
27
+ else if (arg === "--env" && i + 1 < args.length) {
28
+ const envPath = args[i + 1];
29
+ if (!envPath || envPath.startsWith("-"))
30
+ continue;
31
+ if (envPath.startsWith(".\\") || envPath.startsWith("./")) {
32
+ return path_1.default.resolve(process.cwd(), envPath);
33
+ }
34
+ return envPath;
35
+ }
36
+ }
37
+ return undefined;
38
+ }
39
+ function parseAuthBrokerPathArg() {
40
+ const args = process.argv;
41
+ for (let i = 0; i < args.length; i++) {
42
+ const arg = args[i];
43
+ if (arg.startsWith("--auth-broker-path=")) {
44
+ return arg.slice("--auth-broker-path=".length);
45
+ }
46
+ else if (arg === "--auth-broker-path" && i + 1 < args.length) {
47
+ return args[i + 1];
48
+ }
49
+ }
50
+ return undefined;
51
+ }
52
+ function parseMcpDestinationArg() {
53
+ const args = process.argv;
54
+ for (let i = 0; i < args.length; i++) {
55
+ const arg = args[i];
56
+ if (arg.startsWith("--mcp=")) {
57
+ return arg.slice("--mcp=".length);
58
+ }
59
+ else if (arg === "--mcp" && i + 1 < args.length) {
60
+ return args[i + 1];
61
+ }
62
+ }
63
+ return undefined;
64
+ }
65
+ function getTransportType() {
66
+ // First check command line arguments
67
+ const args = process.argv;
68
+ for (let i = 0; i < args.length; i++) {
69
+ const arg = args[i];
70
+ // Check for --transport=value format
71
+ if (arg.startsWith("--transport=")) {
72
+ return arg.slice("--transport=".length);
73
+ }
74
+ // Check for --transport value format
75
+ if (arg === "--transport" && i + 1 < args.length) {
76
+ return args[i + 1];
77
+ }
78
+ }
79
+ // Then check environment variable
80
+ if (process.env.MCP_TRANSPORT) {
81
+ return process.env.MCP_TRANSPORT;
82
+ }
83
+ // Auto-detect stdio mode when stdin is not a TTY (e.g., when run by inspector)
84
+ // Only if no explicit transport was set via argv or env
85
+ if (!process.stdin.isTTY) {
86
+ return "stdio";
87
+ }
88
+ return null;
89
+ }
90
+ function resolveEnvFromCwd() {
91
+ const cwdEnvPath = path_1.default.resolve(process.cwd(), ".env");
92
+ return fs_1.default.existsSync(cwdEnvPath) ? cwdEnvPath : undefined;
93
+ }
94
+ function buildRuntimeConfig() {
95
+ const useAuthBroker = process.argv.includes("--auth-broker") || process.env.MCP_USE_AUTH_BROKER === "true";
96
+ const isTestEnv = process.env.JEST_WORKER_ID !== undefined || process.env.NODE_ENV === "test";
97
+ const authBrokerPath = parseAuthBrokerPathArg();
98
+ const defaultMcpDestination = parseMcpDestinationArg();
99
+ const unsafe = process.argv.includes("--unsafe") || process.env.MCP_UNSAFE === "true";
100
+ const explicitTransportType = getTransportType();
101
+ // Check if transport was explicitly set (not auto-detected)
102
+ const hasExplicitTransportArg = process.argv.some((arg, i) => arg.startsWith("--transport=") || (arg === "--transport" && i + 1 < process.argv.length));
103
+ // If transport was auto-detected (not explicitly set), consider it as explicit for stdio mode
104
+ // This allows stdio mode to work when run by inspector without --transport=stdio argument
105
+ const isAutoDetectedStdio = explicitTransportType === "stdio" && !hasExplicitTransportArg && !process.env.MCP_TRANSPORT;
106
+ // Default transport is stdio (changed from streamable-http per user request)
107
+ const transportType = explicitTransportType || "stdio";
108
+ const isHttp = transportType === "http" || transportType === "streamable-http" || transportType === "server";
109
+ const isSse = transportType === "sse";
110
+ const isStdio = transportType === "stdio";
111
+ // For auto-detected stdio, treat it as explicit for env mandatory check
112
+ const effectiveExplicitTransportType = isAutoDetectedStdio ? "stdio" : explicitTransportType;
113
+ const isEnvMandatory = effectiveExplicitTransportType !== null && (isStdio || isSse) && !defaultMcpDestination && !useAuthBroker && !isTestEnv;
114
+ let envFilePath = parseEnvArg() ?? process.env.MCP_ENV_PATH;
115
+ return {
116
+ useAuthBroker,
117
+ isTestEnv,
118
+ authBrokerPath,
119
+ defaultMcpDestination,
120
+ unsafe,
121
+ explicitTransportType: effectiveExplicitTransportType,
122
+ transportType,
123
+ isHttp,
124
+ isSse,
125
+ isStdio,
126
+ isEnvMandatory,
127
+ envFilePath,
128
+ };
129
+ }
130
+ //# sourceMappingURL=runtimeConfig.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runtimeConfig.js","sourceRoot":"","sources":["../../src/lib/runtimeConfig.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,56 @@
1
+ import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
2
+ import { AbapConnection } from "@mcp-abap-adt/connection";
3
+ import { AuthBroker } from "@mcp-abap-adt/auth-broker";
4
+ import { ConnectionContext } from "./ConnectionContext.js";
5
+ import { IHandlersRegistry } from "./handlers/interfaces.js";
6
+ import { type Logger } from "@mcp-abap-adt/logger";
7
+ /**
8
+ * Base MCP Server class that extends SDK McpServer
9
+ * Manages connection context and provides connection injection for handlers
10
+ */
11
+ export declare abstract class BaseMcpServer extends McpServer {
12
+ /**
13
+ * Logger used for handler context
14
+ */
15
+ protected readonly logger: Logger;
16
+ /**
17
+ * Connection context (set per request for SSE/HTTP, once for stdio)
18
+ */
19
+ protected connectionContext: ConnectionContext | null;
20
+ /**
21
+ * Auth broker for token and service key management
22
+ */
23
+ protected authBroker?: AuthBroker;
24
+ constructor(options: {
25
+ name: string;
26
+ version?: string;
27
+ logger?: Logger;
28
+ });
29
+ /**
30
+ * Sets connection context using auth broker
31
+ * For stdio: called once on startup
32
+ * For SSE/HTTP: called per-request
33
+ */
34
+ protected setConnectionContext(destination: string, authBroker: AuthBroker): Promise<void>;
35
+ /**
36
+ * Gets current connection context
37
+ */
38
+ protected getConnectionContext(): ConnectionContext | null;
39
+ /**
40
+ * Gets ABAP connection from connection context
41
+ * Creates connection using connectionParams from context
42
+ * Automatically refreshes token via AuthBroker if available (inside makeAdtRequest)
43
+ */
44
+ protected getConnection(): Promise<AbapConnection>;
45
+ /**
46
+ * Registers handlers from registry
47
+ * Wraps handlers to inject connection as first parameter
48
+ *
49
+ * Handler signature: (connection: AbapConnection, args: any) => Promise<any>
50
+ * Registered as: (args: any) => handler(getConnection(), args)
51
+ *
52
+ * This ensures connection is injected but NOT exposed in MCP tool signature
53
+ */
54
+ protected registerHandlers(handlersRegistry: IHandlersRegistry): void;
55
+ }
56
+ //# sourceMappingURL=BaseMcpServer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BaseMcpServer.d.ts","sourceRoot":"","sources":["../../../src/lib/servers/BaseMcpServer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EAAE,cAAc,EAAwB,MAAM,0BAA0B,CAAC;AAChF,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AACvD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAG7D,OAAO,EAAiB,KAAK,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAGlE;;;GAGG;AACH,8BAAsB,aAAc,SAAQ,SAAS;IACnD;;OAEG;IACH,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAElC;;OAEG;IACH,SAAS,CAAC,iBAAiB,EAAE,iBAAiB,GAAG,IAAI,CAAQ;IAE7D;;OAEG;IACH,SAAS,CAAC,UAAU,CAAC,EAAE,UAAU,CAAC;gBAEtB,OAAO,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE;IAKxE;;;;OAIG;cACa,oBAAoB,CAClC,WAAW,EAAE,MAAM,EACnB,UAAU,EAAE,UAAU,GACrB,OAAO,CAAC,IAAI,CAAC;IAoDhB;;OAEG;IACH,SAAS,CAAC,oBAAoB,IAAI,iBAAiB,GAAG,IAAI;IAI1D;;;;OAIG;cACa,aAAa,IAAI,OAAO,CAAC,cAAc,CAAC;IAcxD;;;;;;;;OAQG;IACH,SAAS,CAAC,gBAAgB,CAAC,gBAAgB,EAAE,iBAAiB,GAAG,IAAI;CAyFtE"}