@mcp-abap-adt/core 2.1.2 → 2.1.4

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 (468) hide show
  1. package/CHANGELOG.md +14 -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/function/readonly/handleGetFunctionGroup.d.ts +23 -0
  36. package/dist/handlers/function/readonly/handleGetFunctionGroup.d.ts.map +1 -0
  37. package/dist/handlers/function/readonly/handleGetFunctionGroup.js +77 -0
  38. package/dist/handlers/function/readonly/handleGetFunctionGroup.js.map +1 -0
  39. package/dist/handlers/interface/readonly/handleGetInterface.d.ts +23 -0
  40. package/dist/handlers/interface/readonly/handleGetInterface.d.ts.map +1 -0
  41. package/dist/handlers/interface/readonly/handleGetInterface.js +77 -0
  42. package/dist/handlers/interface/readonly/handleGetInterface.js.map +1 -0
  43. package/dist/handlers/package/readonly/handleGetPackage.d.ts +22 -0
  44. package/dist/handlers/package/readonly/handleGetPackage.d.ts.map +1 -0
  45. package/dist/handlers/package/readonly/handleGetPackage.js +108 -0
  46. package/dist/handlers/package/readonly/handleGetPackage.js.map +1 -0
  47. package/dist/handlers/program/readonly/handleGetProgram.d.ts +23 -0
  48. package/dist/handlers/program/readonly/handleGetProgram.d.ts.map +1 -0
  49. package/dist/handlers/program/readonly/handleGetProgram.js +77 -0
  50. package/dist/handlers/program/readonly/handleGetProgram.js.map +1 -0
  51. package/dist/handlers/service_definition/readonly/handleGetServiceDefinition.d.ts +18 -0
  52. package/dist/handlers/service_definition/readonly/handleGetServiceDefinition.d.ts.map +1 -0
  53. package/dist/handlers/service_definition/readonly/handleGetServiceDefinition.js +109 -0
  54. package/dist/handlers/service_definition/readonly/handleGetServiceDefinition.js.map +1 -0
  55. package/dist/handlers/structure/readonly/handleGetStructure.d.ts +23 -0
  56. package/dist/handlers/structure/readonly/handleGetStructure.d.ts.map +1 -0
  57. package/dist/handlers/structure/readonly/handleGetStructure.js +77 -0
  58. package/dist/handlers/structure/readonly/handleGetStructure.js.map +1 -0
  59. package/dist/handlers/table/readonly/handleGetTable.d.ts +23 -0
  60. package/dist/handlers/table/readonly/handleGetTable.d.ts.map +1 -0
  61. package/dist/handlers/table/readonly/handleGetTable.js +77 -0
  62. package/dist/handlers/table/readonly/handleGetTable.js.map +1 -0
  63. package/dist/handlers/view/readonly/handleGetView.d.ts +33 -0
  64. package/dist/handlers/view/readonly/handleGetView.d.ts.map +1 -0
  65. package/dist/handlers/view/readonly/handleGetView.js +90 -0
  66. package/dist/handlers/view/readonly/handleGetView.js.map +1 -0
  67. package/dist/index.d.ts +126 -0
  68. package/dist/index.d.ts.map +1 -0
  69. package/dist/index.js +2979 -0
  70. package/dist/index.js.map +1 -0
  71. package/dist/lib/ServerConfigManager.d.ts +90 -0
  72. package/dist/lib/ServerConfigManager.d.ts.map +1 -0
  73. package/dist/lib/ServerConfigManager.js +237 -0
  74. package/dist/lib/ServerConfigManager.js.map +1 -0
  75. package/dist/lib/activationUtils.d.ts +59 -0
  76. package/dist/lib/activationUtils.d.ts.map +1 -0
  77. package/dist/lib/activationUtils.js +168 -0
  78. package/dist/lib/authBrokerFactory.d.ts +96 -0
  79. package/dist/lib/authBrokerFactory.d.ts.map +1 -0
  80. package/dist/lib/authBrokerFactory.js +531 -0
  81. package/dist/lib/authBrokerFactory.js.map +1 -0
  82. package/dist/lib/config/ServerConfig.d.ts +17 -0
  83. package/dist/lib/config/ServerConfig.d.ts.map +1 -0
  84. package/dist/lib/config/ServerConfig.js +7 -0
  85. package/dist/lib/config/ServerConfig.js.map +1 -0
  86. package/dist/lib/getFullCodeCache.d.ts +3 -0
  87. package/dist/lib/getFullCodeCache.d.ts.map +1 -0
  88. package/dist/lib/getFullCodeCache.js +56 -0
  89. package/dist/lib/handlers/handlers/base/BaseHandlerGroup.d.ts +36 -0
  90. package/dist/lib/handlers/handlers/base/BaseHandlerGroup.d.ts.map +1 -0
  91. package/dist/lib/handlers/handlers/base/BaseHandlerGroup.js +268 -0
  92. package/dist/lib/handlers/handlers/base/BaseHandlerGroup.js.map +1 -0
  93. package/dist/lib/handlers/handlers/examples/usage-example.d.ts +29 -0
  94. package/dist/lib/handlers/handlers/examples/usage-example.d.ts.map +1 -0
  95. package/dist/lib/handlers/handlers/examples/usage-example.js +119 -0
  96. package/dist/lib/handlers/handlers/examples/usage-example.js.map +1 -0
  97. package/dist/lib/handlers/handlers/groups/HighLevelHandlersGroup.d.ts +14 -0
  98. package/dist/lib/handlers/handlers/groups/HighLevelHandlersGroup.d.ts.map +1 -0
  99. package/dist/lib/handlers/handlers/groups/HighLevelHandlersGroup.js +322 -0
  100. package/dist/lib/handlers/handlers/groups/HighLevelHandlersGroup.js.map +1 -0
  101. package/dist/lib/handlers/handlers/groups/LowLevelHandlersGroup.d.ts +14 -0
  102. package/dist/lib/handlers/handlers/groups/LowLevelHandlersGroup.d.ts.map +1 -0
  103. package/dist/lib/handlers/handlers/groups/LowLevelHandlersGroup.js +1214 -0
  104. package/dist/lib/handlers/handlers/groups/LowLevelHandlersGroup.js.map +1 -0
  105. package/dist/lib/handlers/handlers/groups/ReadOnlyHandlersGroup.d.ts +14 -0
  106. package/dist/lib/handlers/handlers/groups/ReadOnlyHandlersGroup.d.ts.map +1 -0
  107. package/dist/lib/handlers/handlers/groups/ReadOnlyHandlersGroup.js +232 -0
  108. package/dist/lib/handlers/handlers/groups/ReadOnlyHandlersGroup.js.map +1 -0
  109. package/dist/lib/handlers/handlers/groups/SearchHandlersGroup.d.ts +14 -0
  110. package/dist/lib/handlers/handlers/groups/SearchHandlersGroup.d.ts.map +1 -0
  111. package/dist/lib/handlers/handlers/groups/SearchHandlersGroup.js +57 -0
  112. package/dist/lib/handlers/handlers/groups/SearchHandlersGroup.js.map +1 -0
  113. package/dist/lib/handlers/handlers/groups/SystemHandlersGroup.d.ts +14 -0
  114. package/dist/lib/handlers/handlers/groups/SystemHandlersGroup.d.ts.map +1 -0
  115. package/dist/lib/handlers/handlers/groups/SystemHandlersGroup.js +176 -0
  116. package/dist/lib/handlers/handlers/groups/SystemHandlersGroup.js.map +1 -0
  117. package/dist/lib/handlers/handlers/groups/index.d.ts +13 -0
  118. package/dist/lib/handlers/handlers/groups/index.d.ts.map +1 -0
  119. package/dist/lib/handlers/handlers/groups/index.js +21 -0
  120. package/dist/lib/handlers/handlers/groups/index.js.map +1 -0
  121. package/dist/lib/handlers/handlers/index.d.ts +14 -0
  122. package/dist/lib/handlers/handlers/index.d.ts.map +1 -0
  123. package/dist/lib/handlers/handlers/index.js +37 -0
  124. package/dist/lib/handlers/handlers/index.js.map +1 -0
  125. package/dist/lib/handlers/handlers/interfaces.d.ts +67 -0
  126. package/dist/lib/handlers/handlers/interfaces.d.ts.map +1 -0
  127. package/dist/lib/handlers/handlers/interfaces.js +3 -0
  128. package/dist/lib/handlers/handlers/interfaces.js.map +1 -0
  129. package/dist/lib/handlers/handlers/registry/CompositeHandlersRegistry.d.ts +49 -0
  130. package/dist/lib/handlers/handlers/registry/CompositeHandlersRegistry.d.ts.map +1 -0
  131. package/dist/lib/handlers/handlers/registry/CompositeHandlersRegistry.js +88 -0
  132. package/dist/lib/handlers/handlers/registry/CompositeHandlersRegistry.js.map +1 -0
  133. package/dist/lib/runtimeConfig.d.ts +20 -0
  134. package/dist/lib/runtimeConfig.d.ts.map +1 -0
  135. package/dist/lib/runtimeConfig.js +130 -0
  136. package/dist/lib/runtimeConfig.js.map +1 -0
  137. package/dist/lib/servers/BaseMcpServer.d.ts +56 -0
  138. package/dist/lib/servers/BaseMcpServer.d.ts.map +1 -0
  139. package/dist/lib/servers/BaseMcpServer.js +198 -0
  140. package/dist/lib/servers/BaseMcpServer.js.map +1 -0
  141. package/dist/lib/servers/ConnectionContext.d.ts +20 -0
  142. package/dist/lib/servers/ConnectionContext.d.ts.map +1 -0
  143. package/dist/lib/servers/ConnectionContext.js +3 -0
  144. package/dist/lib/servers/ConnectionContext.js.map +1 -0
  145. package/dist/lib/servers/SseServer.d.ts +32 -0
  146. package/dist/lib/servers/SseServer.d.ts.map +1 -0
  147. package/dist/lib/servers/SseServer.js +139 -0
  148. package/dist/lib/servers/SseServer.js.map +1 -0
  149. package/dist/lib/servers/StdioServer.d.ts +20 -0
  150. package/dist/lib/servers/StdioServer.d.ts.map +1 -0
  151. package/dist/lib/servers/StdioServer.js +32 -0
  152. package/dist/lib/servers/StdioServer.js.map +1 -0
  153. package/dist/lib/servers/StreamableHttpServer.d.ts +30 -0
  154. package/dist/lib/servers/StreamableHttpServer.d.ts.map +1 -0
  155. package/dist/lib/servers/StreamableHttpServer.js +83 -0
  156. package/dist/lib/servers/StreamableHttpServer.js.map +1 -0
  157. package/dist/lib/servers/handlers/base/BaseHandlerGroup.d.ts +36 -0
  158. package/dist/lib/servers/handlers/base/BaseHandlerGroup.d.ts.map +1 -0
  159. package/dist/lib/servers/handlers/base/BaseHandlerGroup.js +268 -0
  160. package/dist/lib/servers/handlers/base/BaseHandlerGroup.js.map +1 -0
  161. package/dist/lib/servers/handlers/examples/usage-example.d.ts +29 -0
  162. package/dist/lib/servers/handlers/examples/usage-example.d.ts.map +1 -0
  163. package/dist/lib/servers/handlers/examples/usage-example.js +119 -0
  164. package/dist/lib/servers/handlers/examples/usage-example.js.map +1 -0
  165. package/dist/lib/servers/handlers/groups/HighLevelHandlersGroup.d.ts +14 -0
  166. package/dist/lib/servers/handlers/groups/HighLevelHandlersGroup.d.ts.map +1 -0
  167. package/dist/lib/servers/handlers/groups/HighLevelHandlersGroup.js +322 -0
  168. package/dist/lib/servers/handlers/groups/HighLevelHandlersGroup.js.map +1 -0
  169. package/dist/lib/servers/handlers/groups/LowLevelHandlersGroup.d.ts +14 -0
  170. package/dist/lib/servers/handlers/groups/LowLevelHandlersGroup.d.ts.map +1 -0
  171. package/dist/lib/servers/handlers/groups/LowLevelHandlersGroup.js +1214 -0
  172. package/dist/lib/servers/handlers/groups/LowLevelHandlersGroup.js.map +1 -0
  173. package/dist/lib/servers/handlers/groups/ReadOnlyHandlersGroup.d.ts +14 -0
  174. package/dist/lib/servers/handlers/groups/ReadOnlyHandlersGroup.d.ts.map +1 -0
  175. package/dist/lib/servers/handlers/groups/ReadOnlyHandlersGroup.js +232 -0
  176. package/dist/lib/servers/handlers/groups/ReadOnlyHandlersGroup.js.map +1 -0
  177. package/dist/lib/servers/handlers/groups/SearchHandlersGroup.d.ts +14 -0
  178. package/dist/lib/servers/handlers/groups/SearchHandlersGroup.d.ts.map +1 -0
  179. package/dist/lib/servers/handlers/groups/SearchHandlersGroup.js +57 -0
  180. package/dist/lib/servers/handlers/groups/SearchHandlersGroup.js.map +1 -0
  181. package/dist/lib/servers/handlers/groups/SystemHandlersGroup.d.ts +14 -0
  182. package/dist/lib/servers/handlers/groups/SystemHandlersGroup.d.ts.map +1 -0
  183. package/dist/lib/servers/handlers/groups/SystemHandlersGroup.js +176 -0
  184. package/dist/lib/servers/handlers/groups/SystemHandlersGroup.js.map +1 -0
  185. package/dist/lib/servers/handlers/groups/index.d.ts +13 -0
  186. package/dist/lib/servers/handlers/groups/index.d.ts.map +1 -0
  187. package/dist/lib/servers/handlers/groups/index.js +21 -0
  188. package/dist/lib/servers/handlers/groups/index.js.map +1 -0
  189. package/dist/lib/servers/handlers/index.d.ts +14 -0
  190. package/dist/lib/servers/handlers/index.d.ts.map +1 -0
  191. package/dist/lib/servers/handlers/index.js +37 -0
  192. package/dist/lib/servers/handlers/index.js.map +1 -0
  193. package/dist/lib/servers/handlers/interfaces.d.ts +67 -0
  194. package/dist/lib/servers/handlers/interfaces.d.ts.map +1 -0
  195. package/dist/lib/servers/handlers/interfaces.js +3 -0
  196. package/dist/lib/servers/handlers/interfaces.js.map +1 -0
  197. package/dist/lib/servers/handlers/registry/CompositeHandlersRegistry.d.ts +49 -0
  198. package/dist/lib/servers/handlers/registry/CompositeHandlersRegistry.d.ts.map +1 -0
  199. package/dist/lib/servers/handlers/registry/CompositeHandlersRegistry.js +88 -0
  200. package/dist/lib/servers/handlers/registry/CompositeHandlersRegistry.js.map +1 -0
  201. package/dist/lib/servers/index.d.ts +5 -0
  202. package/dist/lib/servers/index.d.ts.map +1 -0
  203. package/dist/lib/servers/index.js +21 -0
  204. package/dist/lib/servers/index.js.map +1 -0
  205. package/dist/lib/servers/launcher.d.ts +2 -0
  206. package/dist/lib/servers/launcher.d.ts.map +1 -0
  207. package/dist/lib/servers/launcher.js +123 -0
  208. package/dist/lib/servers/launcher.js.map +1 -0
  209. package/dist/lib/servers/mcp_handlers.d.ts +25 -0
  210. package/dist/lib/servers/mcp_handlers.d.ts.map +1 -0
  211. package/dist/lib/servers/mcp_handlers.js +822 -0
  212. package/dist/lib/servers/mcp_handlers.js.map +1 -0
  213. package/dist/lib/servers/mcp_server.d.ts +7 -0
  214. package/dist/lib/servers/mcp_server.d.ts.map +1 -0
  215. package/dist/lib/servers/mcp_server.js +12 -0
  216. package/dist/lib/servers/utils.d.ts +42 -0
  217. package/dist/lib/servers/utils.d.ts.map +1 -0
  218. package/dist/lib/servers/utils.js +620 -0
  219. package/dist/lib/servers/utils.js.map +1 -0
  220. package/dist/lib/servers/v2/__tests__/unit/McpServer.test.d.ts +7 -0
  221. package/dist/lib/servers/v2/__tests__/unit/McpServer.test.d.ts.map +1 -0
  222. package/dist/lib/servers/v2/__tests__/unit/McpServer.test.js +218 -0
  223. package/dist/lib/servers/v2/connection/LocalConnectionProvider.d.ts +20 -0
  224. package/dist/lib/servers/v2/connection/LocalConnectionProvider.d.ts.map +1 -0
  225. package/dist/lib/servers/v2/connection/LocalConnectionProvider.js +70 -0
  226. package/dist/lib/servers/v2/connection/RemoteConnectionProvider.d.ts +21 -0
  227. package/dist/lib/servers/v2/connection/RemoteConnectionProvider.d.ts.map +1 -0
  228. package/dist/lib/servers/v2/connection/RemoteConnectionProvider.js +36 -0
  229. package/dist/lib/servers/v2/connection/index.d.ts +6 -0
  230. package/dist/lib/servers/v2/connection/index.d.ts.map +1 -0
  231. package/dist/lib/servers/v2/connection/index.js +10 -0
  232. package/dist/lib/servers/v2/factory/AuthBrokerFactory.d.ts +29 -0
  233. package/dist/lib/servers/v2/factory/AuthBrokerFactory.d.ts.map +1 -0
  234. package/dist/lib/servers/v2/factory/AuthBrokerFactory.js +79 -0
  235. package/dist/lib/servers/v2/factory/LocalModeFactory.d.ts +38 -0
  236. package/dist/lib/servers/v2/factory/LocalModeFactory.d.ts.map +1 -0
  237. package/dist/lib/servers/v2/factory/LocalModeFactory.js +38 -0
  238. package/dist/lib/servers/v2/factory/index.d.ts +6 -0
  239. package/dist/lib/servers/v2/factory/index.d.ts.map +1 -0
  240. package/dist/lib/servers/v2/factory/index.js +10 -0
  241. package/dist/lib/servers/v2/index.d.ts +9 -0
  242. package/dist/lib/servers/v2/index.d.ts.map +1 -0
  243. package/dist/lib/servers/v2/index.js +27 -0
  244. package/dist/lib/servers/v2/index.js.map +1 -0
  245. package/dist/lib/servers/v2/interfaces/connection.d.ts +188 -0
  246. package/dist/lib/servers/v2/interfaces/connection.d.ts.map +1 -0
  247. package/dist/lib/servers/v2/interfaces/connection.js +7 -0
  248. package/dist/lib/servers/v2/interfaces/index.d.ts +10 -0
  249. package/dist/lib/servers/v2/interfaces/index.d.ts.map +1 -0
  250. package/dist/lib/servers/v2/interfaces/index.js +25 -0
  251. package/dist/lib/servers/v2/interfaces/protocol.d.ts +30 -0
  252. package/dist/lib/servers/v2/interfaces/protocol.d.ts.map +1 -0
  253. package/dist/lib/servers/v2/interfaces/protocol.js +7 -0
  254. package/dist/lib/servers/v2/interfaces/session.d.ts +98 -0
  255. package/dist/lib/servers/v2/interfaces/session.d.ts.map +1 -0
  256. package/dist/lib/servers/v2/interfaces/session.js +7 -0
  257. package/dist/lib/servers/v2/interfaces/transport.d.ts +88 -0
  258. package/dist/lib/servers/v2/interfaces/transport.d.ts.map +1 -0
  259. package/dist/lib/servers/v2/interfaces/transport.js +7 -0
  260. package/dist/lib/servers/v2/protocol/ProtocolHandler.d.ts +21 -0
  261. package/dist/lib/servers/v2/protocol/ProtocolHandler.d.ts.map +1 -0
  262. package/dist/lib/servers/v2/protocol/ProtocolHandler.js +77 -0
  263. package/dist/lib/servers/v2/protocol/index.d.ts +5 -0
  264. package/dist/lib/servers/v2/protocol/index.d.ts.map +1 -0
  265. package/dist/lib/servers/v2/protocol/index.js +8 -0
  266. package/dist/lib/servers/v2/server/McpServer.d.ts +76 -0
  267. package/dist/lib/servers/v2/server/McpServer.d.ts.map +1 -0
  268. package/dist/lib/servers/v2/server/McpServer.js +243 -0
  269. package/dist/lib/servers/v2/server/index.d.ts +5 -0
  270. package/dist/lib/servers/v2/server/index.d.ts.map +1 -0
  271. package/dist/lib/servers/v2/server/index.js +8 -0
  272. package/dist/lib/servers/v2/session/SessionManager.d.ts +40 -0
  273. package/dist/lib/servers/v2/session/SessionManager.d.ts.map +1 -0
  274. package/dist/lib/servers/v2/session/SessionManager.js +136 -0
  275. package/dist/lib/servers/v2/session/index.d.ts +5 -0
  276. package/dist/lib/servers/v2/session/index.d.ts.map +1 -0
  277. package/dist/lib/servers/v2/session/index.js +8 -0
  278. package/dist/lib/servers/v2/transports/SseTransport.d.ts +49 -0
  279. package/dist/lib/servers/v2/transports/SseTransport.d.ts.map +1 -0
  280. package/dist/lib/servers/v2/transports/SseTransport.js +89 -0
  281. package/dist/lib/servers/v2/transports/StdioTransport.d.ts +31 -0
  282. package/dist/lib/servers/v2/transports/StdioTransport.d.ts.map +1 -0
  283. package/dist/lib/servers/v2/transports/StdioTransport.js +91 -0
  284. package/dist/lib/servers/v2/transports/StreamableHttpTransport.d.ts +51 -0
  285. package/dist/lib/servers/v2/transports/StreamableHttpTransport.d.ts.map +1 -0
  286. package/dist/lib/servers/v2/transports/StreamableHttpTransport.js +147 -0
  287. package/dist/lib/servers/v2/transports/index.d.ts +7 -0
  288. package/dist/lib/servers/v2/transports/index.d.ts.map +1 -0
  289. package/dist/lib/servers/v2/transports/index.js +12 -0
  290. package/dist/lib/servers/v2/types/common.d.ts +17 -0
  291. package/dist/lib/servers/v2/types/common.d.ts.map +1 -0
  292. package/dist/lib/servers/v2/types/common.js +6 -0
  293. package/dist/lib/servers/v2/types/common.js.map +1 -0
  294. package/dist/lib/servers/v2/types/index.d.ts +8 -0
  295. package/dist/lib/servers/v2/types/index.d.ts.map +1 -0
  296. package/dist/lib/servers/v2/types/index.js +24 -0
  297. package/dist/lib/servers/v2/types/index.js.map +1 -0
  298. package/dist/lib/servers/v2/types/transport.d.ts +28 -0
  299. package/dist/lib/servers/v2/types/transport.d.ts.map +1 -0
  300. package/dist/lib/servers/v2/types/transport.js +8 -0
  301. package/dist/lib/servers/v2/types/transport.js.map +1 -0
  302. package/dist/lib/servers/v2/utils/StdioLogger.d.ts +17 -0
  303. package/dist/lib/servers/v2/utils/StdioLogger.d.ts.map +1 -0
  304. package/dist/lib/servers/v2/utils/StdioLogger.js +33 -0
  305. package/dist/lib/servers/v2/utils/StdioLogger.js.map +1 -0
  306. package/dist/lib/stores/UnixFileServiceKeyStore.d.ts +42 -0
  307. package/dist/lib/stores/UnixFileServiceKeyStore.d.ts.map +1 -0
  308. package/dist/lib/stores/UnixFileServiceKeyStore.js +53 -0
  309. package/dist/lib/stores/UnixFileSessionStore.d.ts +54 -0
  310. package/dist/lib/stores/UnixFileSessionStore.d.ts.map +1 -0
  311. package/dist/lib/stores/UnixFileSessionStore.js +70 -0
  312. package/dist/lib/stores/WindowsFileServiceKeyStore.d.ts +42 -0
  313. package/dist/lib/stores/WindowsFileServiceKeyStore.d.ts.map +1 -0
  314. package/dist/lib/stores/WindowsFileServiceKeyStore.js +53 -0
  315. package/dist/lib/stores/WindowsFileSessionStore.d.ts +54 -0
  316. package/dist/lib/stores/WindowsFileSessionStore.d.ts.map +1 -0
  317. package/dist/lib/stores/WindowsFileSessionStore.js +70 -0
  318. package/dist/lib/toolsRegistry.d.ts +13 -0
  319. package/dist/lib/toolsRegistry.d.ts.map +1 -0
  320. package/dist/lib/toolsRegistry.js +410 -0
  321. package/dist/lib/transportConfig.d.ts +27 -0
  322. package/dist/lib/transportConfig.d.ts.map +1 -0
  323. package/dist/lib/transportConfig.js +124 -0
  324. package/dist/lib/transports/stdio.d.ts +10 -0
  325. package/dist/lib/transports/stdio.d.ts.map +1 -0
  326. package/dist/lib/transports/stdio.js +73 -0
  327. package/dist/lib/utils.d.ts.map +1 -1
  328. package/dist/lib/utils.js +0 -5
  329. package/dist/lib/utils.js.map +1 -1
  330. package/dist/lib/yamlConfig.d.ts +59 -0
  331. package/dist/lib/yamlConfig.d.ts.map +1 -0
  332. package/dist/lib/yamlConfig.js +349 -0
  333. package/dist/lib/yamlConfig.js.map +1 -0
  334. package/dist/server/v1/AuthBrokerConfig.d.ts +19 -0
  335. package/dist/server/v1/AuthBrokerConfig.d.ts.map +1 -0
  336. package/dist/server/v1/AuthBrokerConfig.js +44 -0
  337. package/dist/server/v1/AuthBrokerConfig.js.map +1 -0
  338. package/dist/server/v1/IServerConfig.d.ts +17 -0
  339. package/dist/server/v1/IServerConfig.d.ts.map +1 -0
  340. package/dist/server/v1/IServerConfig.js +7 -0
  341. package/dist/server/v1/IServerConfig.js.map +1 -0
  342. package/dist/server/v1/ServerConfig.d.ts +16 -0
  343. package/dist/server/v1/ServerConfig.d.ts.map +1 -0
  344. package/dist/server/v1/ServerConfig.js +6 -0
  345. package/dist/server/v1/ServerConfig.js.map +1 -0
  346. package/dist/server/v1/embeddable-server.d.ts +89 -0
  347. package/dist/server/v1/embeddable-server.d.ts.map +1 -0
  348. package/dist/server/v1/embeddable-server.js +83 -0
  349. package/dist/server/v1/embeddable-server.js.map +1 -0
  350. package/dist/server/v1/index.d.ts +30 -0
  351. package/dist/server/v1/index.d.ts.map +1 -0
  352. package/dist/server/v1/index.js +65 -0
  353. package/dist/server/v1/index.js.map +1 -0
  354. package/dist/server/v1/legacy-server.d.ts +141 -0
  355. package/dist/server/v1/legacy-server.d.ts.map +1 -0
  356. package/dist/server/v1/legacy-server.js +2099 -0
  357. package/dist/server/v1/legacy-server.js.map +1 -0
  358. package/dist/server/v1/mcp_handlers.d.ts +19 -0
  359. package/dist/server/v1/mcp_handlers.d.ts.map +1 -0
  360. package/dist/server/v1/mcp_handlers.js +85 -0
  361. package/dist/server/v1/mcp_handlers.js.map +1 -0
  362. package/dist/server/v2/AuthBrokerConfig.d.ts +22 -0
  363. package/dist/server/v2/AuthBrokerConfig.d.ts.map +1 -0
  364. package/dist/server/v2/AuthBrokerConfig.js +46 -0
  365. package/dist/server/v2/AuthBrokerConfig.js.map +1 -0
  366. package/dist/server/v2/BaseMcpServer.d.ts +67 -0
  367. package/dist/server/v2/BaseMcpServer.d.ts.map +1 -0
  368. package/dist/server/v2/BaseMcpServer.js +273 -0
  369. package/dist/server/v2/BaseMcpServer.js.map +1 -0
  370. package/dist/server/v2/ConnectionContext.d.ts +20 -0
  371. package/dist/server/v2/ConnectionContext.d.ts.map +1 -0
  372. package/dist/server/v2/ConnectionContext.js +3 -0
  373. package/dist/server/v2/ConnectionContext.js.map +1 -0
  374. package/dist/server/v2/IHttpApplication.d.ts +42 -0
  375. package/dist/server/v2/IHttpApplication.d.ts.map +1 -0
  376. package/dist/server/v2/IHttpApplication.js +3 -0
  377. package/dist/server/v2/IHttpApplication.js.map +1 -0
  378. package/dist/server/v2/IServerConfig.d.ts +15 -0
  379. package/dist/server/v2/IServerConfig.d.ts.map +1 -0
  380. package/dist/server/v2/IServerConfig.js +7 -0
  381. package/dist/server/v2/IServerConfig.js.map +1 -0
  382. package/dist/server/v2/ServerConfig.d.ts +16 -0
  383. package/dist/server/v2/ServerConfig.d.ts.map +1 -0
  384. package/dist/server/v2/ServerConfig.js +6 -0
  385. package/dist/server/v2/ServerConfig.js.map +1 -0
  386. package/dist/server/v2/SseServer.d.ts +95 -0
  387. package/dist/server/v2/SseServer.d.ts.map +1 -0
  388. package/dist/server/v2/SseServer.js +217 -0
  389. package/dist/server/v2/SseServer.js.map +1 -0
  390. package/dist/server/v2/StdioServer.d.ts +20 -0
  391. package/dist/server/v2/StdioServer.d.ts.map +1 -0
  392. package/dist/server/v2/StdioServer.js +32 -0
  393. package/dist/server/v2/StdioServer.js.map +1 -0
  394. package/dist/server/v2/StreamableHttpServer.d.ts +94 -0
  395. package/dist/server/v2/StreamableHttpServer.d.ts.map +1 -0
  396. package/dist/server/v2/StreamableHttpServer.js +170 -0
  397. package/dist/server/v2/StreamableHttpServer.js.map +1 -0
  398. package/dist/server/v2/index.d.ts +6 -0
  399. package/dist/server/v2/index.d.ts.map +1 -0
  400. package/dist/server/v2/index.js +22 -0
  401. package/dist/server/v2/index.js.map +1 -0
  402. package/dist/server/v2/launcher.d.ts +2 -0
  403. package/dist/server/v2/launcher.d.ts.map +1 -0
  404. package/dist/server/v2/launcher.js +181 -0
  405. package/dist/server/v2/launcher.js.map +1 -0
  406. package/dist/server/v2/mcp_handlers.d.ts +25 -0
  407. package/dist/server/v2/mcp_handlers.d.ts.map +1 -0
  408. package/dist/server/v2/mcp_handlers.js +828 -0
  409. package/dist/server/v2/mcp_handlers.js.map +1 -0
  410. package/dist/server/v2/utils.d.ts +42 -0
  411. package/dist/server/v2/utils.d.ts.map +1 -0
  412. package/dist/server/v2/utils.js +620 -0
  413. package/dist/server/v2/utils.js.map +1 -0
  414. package/dist/tools/test-v2-server-stdio-compiled.js +132 -0
  415. package/dist/utils/lockStateManager.d.ts +2 -12
  416. package/dist/utils/lockStateManager.d.ts.map +1 -1
  417. package/dist/utils/lockStateManager.js +4 -63
  418. package/dist/utils/lockStateManager.js.map +1 -1
  419. package/docs/README.md +1 -2
  420. package/docs/architecture/CONNECTION_ISOLATION.md +0 -1
  421. package/docs/architecture/README.md +1 -1
  422. package/docs/architecture/STATEFUL_SESSION_GUIDE.md +28 -717
  423. package/docs/deployment/DOCKER.md +1 -18
  424. package/docs/development/roadmaps/archive/test_locking_roadmap.md +0 -3
  425. package/docs/installation/CLINE_CONFIGURATION.md +1 -32
  426. package/docs/installation/platforms/INSTALL_LINUX.md +1 -1
  427. package/docs/installation/platforms/INSTALL_MACOS.md +1 -1
  428. package/docs/installation/platforms/INSTALL_WINDOWS.md +1 -1
  429. package/docs/user-guide/AVAILABLE_TOOLS.md +2 -2
  430. package/docs/user-guide/CLIENT_CONFIGURATION.md +1 -1
  431. package/docs/user-guide/HANDLERS_MANAGEMENT.md +2 -2
  432. package/docs/user-guide/README.md +0 -2
  433. package/package.json +1 -2
  434. package/bin/README.md +0 -125
  435. package/bin/lock-object.js +0 -240
  436. package/docs/user-guide/scenarios/COMMON_PATTERNS.md +0 -603
  437. package/docs/user-guide/scenarios/CREATING_CDS_VIEWS.md +0 -441
  438. package/docs/user-guide/scenarios/CREATING_CLASSES.md +0 -456
  439. package/docs/user-guide/scenarios/CREATING_FUNCTION_GROUPS.md +0 -582
  440. package/docs/user-guide/scenarios/README.md +0 -51
  441. package/docs/user-guide/scenarios/SESSION_MANAGEMENT.md +0 -335
  442. package/docs/user-guide/usage/README.md +0 -137
  443. package/docs/user-guide/usage/rap-business-objects/README.md +0 -28
  444. package/docs/user-guide/usage/rap-business-objects/creating-rap-bo.md +0 -189
  445. package/docs/user-guide/usage/rap-business-objects/deferred-activation.md +0 -82
  446. package/docs/user-guide/usage/simple-objects/README.md +0 -23
  447. package/docs/user-guide/usage/simple-objects/classes-high.md +0 -32
  448. package/docs/user-guide/usage/simple-objects/classes-low.md +0 -165
  449. package/docs/user-guide/usage/simple-objects/data-elements-high.md +0 -48
  450. package/docs/user-guide/usage/simple-objects/data-elements-low.md +0 -144
  451. package/docs/user-guide/usage/simple-objects/domains-high.md +0 -32
  452. package/docs/user-guide/usage/simple-objects/domains-low.md +0 -144
  453. package/docs/user-guide/usage/simple-objects/function-groups-high.md +0 -32
  454. package/docs/user-guide/usage/simple-objects/function-groups-low.md +0 -144
  455. package/docs/user-guide/usage/simple-objects/function-modules-high.md +0 -32
  456. package/docs/user-guide/usage/simple-objects/function-modules-low.md +0 -160
  457. package/docs/user-guide/usage/simple-objects/interfaces-high.md +0 -32
  458. package/docs/user-guide/usage/simple-objects/interfaces-low.md +0 -160
  459. package/docs/user-guide/usage/simple-objects/programs-high.md +0 -32
  460. package/docs/user-guide/usage/simple-objects/programs-low.md +0 -160
  461. package/docs/user-guide/usage/simple-objects/service-definitions-high.md +0 -32
  462. package/docs/user-guide/usage/simple-objects/service-definitions-low.md +0 -160
  463. package/docs/user-guide/usage/simple-objects/structures-high.md +0 -32
  464. package/docs/user-guide/usage/simple-objects/structures-low.md +0 -160
  465. package/docs/user-guide/usage/simple-objects/tables-high.md +0 -32
  466. package/docs/user-guide/usage/simple-objects/tables-low.md +0 -165
  467. package/docs/user-guide/usage/simple-objects/views-high.md +0 -32
  468. package/docs/user-guide/usage/simple-objects/views-low.md +0 -160
package/CHANGELOG.md CHANGED
@@ -2,6 +2,20 @@
2
2
 
3
3
  ## [Unreleased]
4
4
 
5
+ ## [2.1.4] - 2026-01-21
6
+ ### Fixed
7
+ - **CreateLocalTestClass**: Return full SAP error details on failure (including the original response payload).
8
+
9
+ ## [2.1.3] - 2026-01-02
10
+ ### Changed
11
+ - **Documentation**: Restored the stateful ADT flow guide without file-based session persistence references.
12
+ - **Available tools**: Regenerated `docs/user-guide/AVAILABLE_TOOLS.md` and restored links across docs.
13
+
14
+ ### Removed
15
+ - **Lock/session persistence**: Removed filesystem lock registry and session persistence helpers/config from core and tests.
16
+ - **CLI commands**: `adt-lock-object`, `adt-unlock-object`, `adt-manage-locks`, `adt-manage-sessions`, and `adt-unlock-objects` removed from package bins.
17
+ - **User guides**: Removed usage/scenario docs tied to legacy session flows.
18
+
5
19
  ## [2.1.2] - 2026-01-02
6
20
  ### Changed
7
21
  - **Lock registry types**: `LockState.objectType` now uses `AdtObjectType` with normalization for legacy entries.
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Help text for MCP ABAP ADT Server v2
3
+ */
4
+ export declare function showHelp(): void;
5
+ export declare function showVersion(): void;
6
+ //# sourceMappingURL=help.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"help.d.ts","sourceRoot":"","sources":["../../src/bin/help.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,wBAAgB,QAAQ,IAAI,IAAI,CA8C/B;AAED,wBAAgB,WAAW,IAAI,IAAI,CAIlC"}
@@ -0,0 +1,59 @@
1
+ "use strict";
2
+ /**
3
+ * Help text for MCP ABAP ADT Server v2
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.showHelp = showHelp;
7
+ exports.showVersion = showVersion;
8
+ function showHelp() {
9
+ // From bin/help.js, package.json is in ../package.json
10
+ const pkg = require('../package.json');
11
+ console.log(`
12
+ MCP ABAP ADT Server v2 v${pkg.version}
13
+
14
+ Usage:
15
+ mcp-abap-adt-v2 [options]
16
+
17
+ Options:
18
+ --mcp=<destination> MCP destination name (required)
19
+ Example: --mcp=TRIAL
20
+ --transport=<type> Transport type: stdio (default), sse, http
21
+ --http-port=<port> HTTP server port (default: 3000)
22
+ --sse-port=<port> SSE server port (default: 3001)
23
+ --http-host=<host> HTTP server host (default: 127.0.0.1 for local only, use 0.0.0.0 for all interfaces)
24
+ Security: When listening on 0.0.0.0, client must provide all connection headers
25
+ --sse-host=<host> SSE server host (default: 127.0.0.1 for local only, use 0.0.0.0 for all interfaces)
26
+ Security: When listening on 0.0.0.0, client must provide all connection headers
27
+ --help, -h Show this help message
28
+ --version, -v Show version number
29
+
30
+ Environment Variables:
31
+ MCP_HTTP_PORT HTTP server port (default: 3000)
32
+ MCP_SSE_PORT SSE server port (default: 3001)
33
+ MCP_HTTP_HOST HTTP server host (default: 127.0.0.1)
34
+ MCP_SSE_HOST SSE server host (default: 127.0.0.1)
35
+ AUTH_BROKER_PATH Custom paths for service keys and sessions
36
+ Unix: colon-separated (e.g., /path1:/path2)
37
+ Windows: semicolon-separated (e.g., C:\\path1;C:\\path2)
38
+ AUTH_LOG_LEVEL Handler logger level: error|warn|info|debug (default: info)
39
+
40
+ Examples:
41
+ mcp-abap-adt-v2 --mcp=TRIAL # Default stdio mode
42
+ mcp-abap-adt-v2 --mcp=TRIAL --transport=sse # SSE mode on port 3001
43
+ mcp-abap-adt-v2 --mcp=TRIAL --transport=sse --sse-port=8080 # SSE mode on custom port
44
+ mcp-abap-adt-v2 --mcp=TRIAL --transport=http # HTTP mode on port 3000
45
+ mcp-abap-adt-v2 --mcp=TRIAL --transport=http --http-port=8080 # HTTP mode on custom port
46
+ mcp-abap-adt-v2 --mcp=TRIAL --transport=http --http-host=0.0.0.0 # HTTP mode accepting all interfaces
47
+
48
+ Notes:
49
+ - v2 server uses Dependency Injection architecture
50
+ - All transports support LOCAL mode (service keys + AuthBroker)
51
+ - HTTP and SSE transports support REMOTE mode (client-provided headers) when host=0.0.0.0
52
+ - Authentication: When starting, if authentication is required, browser will open automatically
53
+ `);
54
+ }
55
+ function showVersion() {
56
+ // From bin/help.js, package.json is in ../package.json
57
+ const pkg = require('../package.json');
58
+ console.log(`mcp-abap-adt-v2 v${pkg.version}`);
59
+ }
@@ -0,0 +1,9 @@
1
+ #!/usr/bin/env node
2
+ /**
3
+ * MCP ABAP ADT Server v2 Entry Point
4
+ *
5
+ * Main entry point for v2 server architecture
6
+ * Compiles to dist/bin/mcp-abap-adt-v2.js
7
+ */
8
+ export {};
9
+ //# sourceMappingURL=mcp-abap-adt-v2.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcp-abap-adt-v2.d.ts","sourceRoot":"","sources":["../../src/bin/mcp-abap-adt-v2.ts"],"names":[],"mappings":";AACA;;;;;GAKG"}
@@ -0,0 +1,247 @@
1
+ #!/usr/bin/env node
2
+ "use strict";
3
+ /**
4
+ * MCP ABAP ADT Server v2 Entry Point
5
+ *
6
+ * Main entry point for v2 server architecture
7
+ * Compiles to dist/bin/mcp-abap-adt-v2.js
8
+ */
9
+ var __importDefault = (this && this.__importDefault) || function (mod) {
10
+ return (mod && mod.__esModule) ? mod : { "default": mod };
11
+ };
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ const mcp_js_1 = require("@modelcontextprotocol/sdk/server/mcp.js");
14
+ const McpServer_js_1 = require("../lib/servers/v2/server/McpServer.js");
15
+ const StdioTransport_js_1 = require("../lib/servers/v2/transports/StdioTransport.js");
16
+ const SseTransport_js_1 = require("../lib/servers/v2/transports/SseTransport.js");
17
+ const StreamableHttpTransport_js_1 = require("../lib/servers/v2/transports/StreamableHttpTransport.js");
18
+ const SessionManager_js_1 = require("../lib/servers/v2/session/SessionManager.js");
19
+ const ProtocolHandler_js_1 = require("../lib/servers/v2/protocol/ProtocolHandler.js");
20
+ const CompositeHandlersRegistry_js_1 = require("../lib/servers/handlers/registry/CompositeHandlersRegistry.js");
21
+ const index_js_1 = require("../lib/servers/handlers/groups/index.js");
22
+ const LocalModeFactory_js_1 = require("../lib/servers/v2/factory/LocalModeFactory.js");
23
+ const auth_stores_1 = require("@mcp-abap-adt/auth-stores");
24
+ const auth_providers_1 = require("@mcp-abap-adt/auth-providers");
25
+ const logger_1 = require("@mcp-abap-adt/logger");
26
+ const StdioLogger_js_1 = require("../lib/servers/v2/utils/StdioLogger.js");
27
+ const help_js_1 = require("./help.js");
28
+ const http_1 = __importDefault(require("http"));
29
+ function parseArgs() {
30
+ const args = process.argv.slice(2);
31
+ const result = {};
32
+ for (const arg of args) {
33
+ if (arg === '--help' || arg === '-h') {
34
+ result.help = true;
35
+ }
36
+ else if (arg === '--version' || arg === '-v') {
37
+ result.version = true;
38
+ }
39
+ else if (arg.startsWith('--mcp=')) {
40
+ result.mcp = arg.split('=')[1];
41
+ }
42
+ else if (arg.startsWith('--transport=')) {
43
+ const transport = arg.split('=')[1];
44
+ if (transport === 'stdio' || transport === 'sse' || transport === 'http') {
45
+ result.transport = transport;
46
+ }
47
+ }
48
+ else if (arg.startsWith('--http-port=')) {
49
+ result.httpPort = parseInt(arg.split('=')[1], 10);
50
+ }
51
+ else if (arg.startsWith('--sse-port=')) {
52
+ result.ssePort = parseInt(arg.split('=')[1], 10);
53
+ }
54
+ else if (arg.startsWith('--http-host=')) {
55
+ result.httpHost = arg.split('=')[1];
56
+ }
57
+ else if (arg.startsWith('--sse-host=')) {
58
+ result.sseHost = arg.split('=')[1];
59
+ }
60
+ }
61
+ // Defaults from environment variables
62
+ if (!result.transport) {
63
+ result.transport = process.env.MCP_TRANSPORT || 'stdio';
64
+ }
65
+ if (!result.httpPort) {
66
+ result.httpPort = parseInt(process.env.MCP_HTTP_PORT || '3000', 10);
67
+ }
68
+ if (!result.ssePort) {
69
+ result.ssePort = parseInt(process.env.MCP_SSE_PORT || '3001', 10);
70
+ }
71
+ if (!result.httpHost) {
72
+ result.httpHost = process.env.MCP_HTTP_HOST || '127.0.0.1';
73
+ }
74
+ if (!result.sseHost) {
75
+ result.sseHost = process.env.MCP_SSE_HOST || '127.0.0.1';
76
+ }
77
+ return result;
78
+ }
79
+ async function main() {
80
+ const args = parseArgs();
81
+ if (args.help) {
82
+ (0, help_js_1.showHelp)();
83
+ process.exit(0);
84
+ }
85
+ if (args.version) {
86
+ (0, help_js_1.showVersion)();
87
+ process.exit(0);
88
+ }
89
+ if (!args.mcp) {
90
+ console.error('Error: --mcp=destination parameter is required');
91
+ console.error('Use --help for usage information');
92
+ process.exit(1);
93
+ }
94
+ // For stdio transport, use minimal logger that only writes errors to stderr
95
+ // MCP protocol requires only JSON-RPC messages on stdout
96
+ const logger = args.transport === 'stdio'
97
+ ? new StdioLogger_js_1.StdioLogger()
98
+ : new logger_1.DefaultLogger();
99
+ try {
100
+ if (args.transport !== 'stdio') {
101
+ logger.info('Starting MCP Server v2...', {
102
+ destination: args.mcp,
103
+ transport: args.transport
104
+ });
105
+ }
106
+ // 1. Create stores and providers
107
+ const serviceKeyStore = new auth_stores_1.AbapServiceKeyStore(process.env.AUTH_BROKER_PATH?.split(process.platform === 'win32' ? ';' : ':')[0] || './service-keys', logger);
108
+ const sessionStore = new auth_stores_1.AbapSessionStore(process.env.AUTH_BROKER_PATH?.split(process.platform === 'win32' ? ';' : ':')[1] || './sessions', logger);
109
+ const tokenProvider = new auth_providers_1.BtpTokenProvider();
110
+ // 2. Create LocalModeFactory
111
+ const localModeFactory = new LocalModeFactory_js_1.LocalModeFactory({
112
+ serviceKeyStore,
113
+ sessionStore,
114
+ tokenProvider,
115
+ logger,
116
+ });
117
+ // 3. Create connection provider
118
+ const connectionProvider = localModeFactory.createConnectionProvider();
119
+ // 4. Create session manager
120
+ const sessionManager = new SessionManager_js_1.SessionManager();
121
+ // 5. Create protocol handler
122
+ const protocolHandler = new ProtocolHandler_js_1.ProtocolHandler();
123
+ // 6. Create handlers registry
124
+ const handlersRegistry = new CompositeHandlersRegistry_js_1.CompositeHandlersRegistry([
125
+ new index_js_1.ReadOnlyHandlersGroup(),
126
+ new index_js_1.HighLevelHandlersGroup(),
127
+ new index_js_1.LowLevelHandlersGroup(),
128
+ new index_js_1.SystemHandlersGroup(),
129
+ new index_js_1.SearchHandlersGroup(),
130
+ ]);
131
+ // 7. Create SDK MCP server
132
+ const sdkServer = new mcp_js_1.McpServer({
133
+ name: 'mcp-abap-adt-v2',
134
+ version: '2.0.0',
135
+ }, {
136
+ capabilities: {
137
+ tools: {},
138
+ },
139
+ });
140
+ // 8. Create transport based on type
141
+ let transport;
142
+ let httpServer;
143
+ if (args.transport === 'sse') {
144
+ httpServer = http_1.default.createServer();
145
+ transport = new SseTransport_js_1.SseTransport({
146
+ port: args.ssePort,
147
+ host: args.sseHost,
148
+ endpoint: '/sse',
149
+ });
150
+ // SSE transport needs HTTP server integration
151
+ // This will be handled by the transport's start() method
152
+ }
153
+ else if (args.transport === 'http') {
154
+ httpServer = http_1.default.createServer();
155
+ transport = new StreamableHttpTransport_js_1.StreamableHttpTransport({
156
+ port: args.httpPort,
157
+ host: args.httpHost,
158
+ });
159
+ httpServer.on('request', async (req, res) => {
160
+ if ('handleRequest' in transport && typeof transport.handleRequest === 'function') {
161
+ await transport.handleRequest(req, res);
162
+ }
163
+ else {
164
+ res.statusCode = 501;
165
+ res.end('Transport does not support HTTP requests');
166
+ }
167
+ });
168
+ }
169
+ else {
170
+ // stdio
171
+ transport = new StdioTransport_js_1.StdioTransport();
172
+ }
173
+ // 9. Create v2 server
174
+ const server = new McpServer_js_1.McpServer(transport, sessionManager, connectionProvider, protocolHandler, handlersRegistry, sdkServer, logger, args.mcp // Pass default destination from --mcp argument
175
+ );
176
+ // 10. Validate configuration
177
+ server.validateConfiguration();
178
+ // 11. Start HTTP server if needed
179
+ if (httpServer) {
180
+ const port = args.transport === 'sse' ? args.ssePort : args.httpPort;
181
+ const host = args.transport === 'sse' ? args.sseHost : args.httpHost;
182
+ httpServer.listen(port, host, () => {
183
+ if (args.transport !== 'stdio') {
184
+ logger.info(`HTTP server listening on http://${host}:${port}`);
185
+ }
186
+ });
187
+ }
188
+ // 12. Start server
189
+ await server.start();
190
+ if (args.transport !== 'stdio') {
191
+ logger.info('MCP Server v2 started successfully');
192
+ const port = args.transport === 'sse' ? args.ssePort : args.httpPort;
193
+ logger.info(`Server is ready at http://${args.transport === 'sse' ? args.sseHost : args.httpHost}:${port}${args.transport === 'sse' ? '/sse' : ''}`);
194
+ }
195
+ // For stdio, don't log to stdout - MCP protocol requires only JSON-RPC messages
196
+ // Handle graceful shutdown
197
+ process.on('SIGINT', async () => {
198
+ if (args.transport !== 'stdio') {
199
+ logger.info('Received SIGINT, shutting down gracefully...');
200
+ }
201
+ if (httpServer) {
202
+ httpServer.close();
203
+ }
204
+ await server.stop();
205
+ process.exit(0);
206
+ });
207
+ process.on('SIGTERM', async () => {
208
+ if (args.transport !== 'stdio') {
209
+ logger.info('Received SIGTERM, shutting down gracefully...');
210
+ }
211
+ if (httpServer) {
212
+ httpServer.close();
213
+ }
214
+ await server.stop();
215
+ process.exit(0);
216
+ });
217
+ }
218
+ catch (error) {
219
+ // For stdio, write errors to stderr, not stdout
220
+ let errorMessage;
221
+ if (error instanceof Error) {
222
+ errorMessage = error.message;
223
+ if (error.stack) {
224
+ errorMessage += `\n${error.stack}`;
225
+ }
226
+ }
227
+ else if (error) {
228
+ try {
229
+ errorMessage = JSON.stringify(error, null, 2);
230
+ }
231
+ catch {
232
+ errorMessage = String(error);
233
+ }
234
+ }
235
+ else {
236
+ errorMessage = 'Unknown error';
237
+ }
238
+ if (args.transport === 'stdio') {
239
+ process.stderr.write(`[ERROR] 💥 Failed to start server: ${errorMessage}\n`);
240
+ }
241
+ else {
242
+ logger.error('Failed to start server:', error);
243
+ }
244
+ process.exit(1);
245
+ }
246
+ }
247
+ main();
@@ -0,0 +1,21 @@
1
+ /**
2
+ * GetBdef TOOL_DEFINITION - Kept for v1 server compatibility
3
+ *
4
+ * This file only exports TOOL_DEFINITION for v1 server compatibility.
5
+ * The actual handler is replaced by GetBehaviorDefinition (high-level) in v1 server.
6
+ */
7
+ export declare const TOOL_DEFINITION: {
8
+ readonly name: "GetBdef";
9
+ readonly description: "[read-only] Retrieve the source code of a BDEF (Behavior Definition) for a CDS entity.";
10
+ readonly inputSchema: {
11
+ readonly type: "object";
12
+ readonly properties: {
13
+ readonly bdef_name: {
14
+ readonly type: "string";
15
+ readonly description: "Name of the BDEF (Behavior Definition)";
16
+ };
17
+ };
18
+ readonly required: readonly ["bdef_name"];
19
+ };
20
+ };
21
+ //# sourceMappingURL=handleGetBdef.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handleGetBdef.d.ts","sourceRoot":"","sources":["../../../../src/handlers/behavior_definition/readonly/handleGetBdef.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,eAAO,MAAM,eAAe;;;;;;;;;;;;;CAclB,CAAC"}
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ /**
3
+ * GetBdef TOOL_DEFINITION - Kept for v1 server compatibility
4
+ *
5
+ * This file only exports TOOL_DEFINITION for v1 server compatibility.
6
+ * The actual handler is replaced by GetBehaviorDefinition (high-level) in v1 server.
7
+ */
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.TOOL_DEFINITION = void 0;
10
+ exports.TOOL_DEFINITION = {
11
+ name: 'GetBdef',
12
+ description: '[read-only] Retrieve the source code of a BDEF (Behavior Definition) for a CDS entity.',
13
+ inputSchema: {
14
+ type: 'object',
15
+ properties: {
16
+ bdef_name: {
17
+ type: 'string',
18
+ description: 'Name of the BDEF (Behavior Definition)',
19
+ },
20
+ },
21
+ required: ['bdef_name'],
22
+ },
23
+ };
24
+ //# sourceMappingURL=handleGetBdef.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handleGetBdef.js","sourceRoot":"","sources":["../../../../src/handlers/behavior_definition/readonly/handleGetBdef.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEU,QAAA,eAAe,GAAG;IAC7B,IAAI,EAAE,SAAS;IACf,WAAW,EACT,wFAAwF;IAC1F,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,SAAS,EAAE;gBACT,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,wCAAwC;aACtD;SACF;QACD,QAAQ,EAAE,CAAC,WAAW,CAAC;KACxB;CACO,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"handleCreateLocalTestClass.d.ts","sourceRoot":"","sources":["../../../../src/handlers/class/high/handleCreateLocalTestClass.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AAOvE,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiClB,CAAC;AAEX,UAAU,wBAAwB;IAChC,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,MAAM,CAAC;IACxB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B;AAED;;;;GAIG;AACH,wBAAsB,0BAA0B,CAC9C,OAAO,EAAE,cAAc,EACvB,IAAI,EAAE,wBAAwB;;;;;;GAmF/B"}
1
+ {"version":3,"file":"handleCreateLocalTestClass.d.ts","sourceRoot":"","sources":["../../../../src/handlers/class/high/handleCreateLocalTestClass.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AAOvE,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiClB,CAAC;AAEX,UAAU,wBAAwB;IAChC,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,MAAM,CAAC;IACxB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B;AAED;;;;GAIG;AACH,wBAAsB,0BAA0B,CAC9C,OAAO,EAAE,cAAc,EACvB,IAAI,EAAE,wBAAwB;;;;;;GAwF/B"}
@@ -97,7 +97,12 @@ async function handleCreateLocalTestClass(context, args) {
97
97
  else if (error.response?.status === 400) {
98
98
  errorMessage = `Bad request. Check test class code syntax.`;
99
99
  }
100
- return (0, utils_1.return_error)(new Error(errorMessage));
100
+ //return return_error(new Error(errorMessage));
101
+ const resultingError = (0, utils_1.return_error)(error);
102
+ if (errorMessage) {
103
+ resultingError.content.unshift({ type: 'text', text: errorMessage });
104
+ }
105
+ return resultingError;
101
106
  }
102
107
  }
103
108
  catch (error) {
@@ -1 +1 @@
1
- {"version":3,"file":"handleCreateLocalTestClass.js","sourceRoot":"","sources":["../../../../src/handlers/class/high/handleCreateLocalTestClass.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"handleCreateLocalTestClass.js","sourceRoot":"","sources":["../../../../src/handlers/class/high/handleCreateLocalTestClass.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,38 @@
1
+ /**
2
+ * GetUnitTest Handler - Read ABAP Unit test status/result via AdtClient
3
+ *
4
+ * Uses AdtClient.getUnitTest().read() for high-level read operation.
5
+ * Retrieves test run status and result for a previously started run.
6
+ */
7
+ import type { HandlerContext } from '../../../lib/handlers/interfaces';
8
+ export declare const TOOL_DEFINITION: {
9
+ readonly name: "GetUnitTest";
10
+ readonly description: "Retrieve ABAP Unit test run status and result for a previously started run_id.";
11
+ readonly inputSchema: {
12
+ readonly type: "object";
13
+ readonly properties: {
14
+ readonly run_id: {
15
+ readonly type: "string";
16
+ readonly description: "Run identifier returned by RunUnitTest.";
17
+ };
18
+ };
19
+ readonly required: readonly ["run_id"];
20
+ };
21
+ };
22
+ interface GetUnitTestArgs {
23
+ run_id: string;
24
+ }
25
+ /**
26
+ * Main handler for GetUnitTest MCP tool
27
+ *
28
+ * Uses AdtClient.getUnitTest().read() - high-level read operation
29
+ */
30
+ export declare function handleGetUnitTest(context: HandlerContext, args: GetUnitTestArgs): Promise<{
31
+ isError: boolean;
32
+ content: {
33
+ type: string;
34
+ text: any;
35
+ }[];
36
+ }>;
37
+ export {};
38
+ //# sourceMappingURL=handleGetUnitTest.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handleGetUnitTest.d.ts","sourceRoot":"","sources":["../../../../src/handlers/class/high/handleGetUnitTest.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AAOvE,eAAO,MAAM,eAAe;;;;;;;;;;;;;CAclB,CAAC;AAEX,UAAU,eAAe;IACvB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;;;GAIG;AACH,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,cAAc,EACvB,IAAI,EAAE,eAAe;;;;;;GAuDtB"}
@@ -0,0 +1,73 @@
1
+ "use strict";
2
+ /**
3
+ * GetUnitTest Handler - Read ABAP Unit test status/result via AdtClient
4
+ *
5
+ * Uses AdtClient.getUnitTest().read() for high-level read operation.
6
+ * Retrieves test run status and result for a previously started run.
7
+ */
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.TOOL_DEFINITION = void 0;
10
+ exports.handleGetUnitTest = handleGetUnitTest;
11
+ const adt_clients_1 = require("@mcp-abap-adt/adt-clients");
12
+ const utils_1 = require("../../../lib/utils");
13
+ exports.TOOL_DEFINITION = {
14
+ name: 'GetUnitTest',
15
+ description: 'Retrieve ABAP Unit test run status and result for a previously started run_id.',
16
+ inputSchema: {
17
+ type: 'object',
18
+ properties: {
19
+ run_id: {
20
+ type: 'string',
21
+ description: 'Run identifier returned by RunUnitTest.',
22
+ },
23
+ },
24
+ required: ['run_id'],
25
+ },
26
+ };
27
+ /**
28
+ * Main handler for GetUnitTest MCP tool
29
+ *
30
+ * Uses AdtClient.getUnitTest().read() - high-level read operation
31
+ */
32
+ async function handleGetUnitTest(context, args) {
33
+ const { connection, logger } = context;
34
+ try {
35
+ const { run_id } = args;
36
+ // Validation
37
+ if (!run_id) {
38
+ return (0, utils_1.return_error)(new Error('run_id is required'));
39
+ }
40
+ const client = new adt_clients_1.AdtClient(connection, logger);
41
+ const unitTest = client.getUnitTest();
42
+ logger?.info(`Reading unit test run status/result for run_id: ${run_id}`);
43
+ try {
44
+ // Read test run using AdtClient
45
+ const readResult = await unitTest.read({ runId: run_id });
46
+ if (!readResult) {
47
+ throw new Error(`Unit test run ${run_id} not found`);
48
+ }
49
+ logger?.info(`✅ GetUnitTest completed successfully for run_id: ${run_id}`);
50
+ return (0, utils_1.return_response)({
51
+ data: JSON.stringify({
52
+ success: true,
53
+ run_id: readResult.runId,
54
+ run_status: readResult.runStatus,
55
+ run_result: readResult.runResult,
56
+ }, null, 2),
57
+ });
58
+ }
59
+ catch (error) {
60
+ logger?.error(`Error reading unit test run ${run_id}: ${error?.message || error}`);
61
+ // Parse error message
62
+ let errorMessage = `Failed to read unit test run: ${error.message || String(error)}`;
63
+ if (error.response?.status === 404) {
64
+ errorMessage = `Unit test run ${run_id} not found.`;
65
+ }
66
+ return (0, utils_1.return_error)(new Error(errorMessage));
67
+ }
68
+ }
69
+ catch (error) {
70
+ return (0, utils_1.return_error)(error);
71
+ }
72
+ }
73
+ //# sourceMappingURL=handleGetUnitTest.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handleGetUnitTest.js","sourceRoot":"","sources":["../../../../src/handlers/class/high/handleGetUnitTest.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAmCH,8CAyDC;AA1FD,2DAAsD;AAEtD,8CAI4B;AAEf,QAAA,eAAe,GAAG;IAC7B,IAAI,EAAE,aAAa;IACnB,WAAW,EACT,gFAAgF;IAClF,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,MAAM,EAAE;gBACN,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,yCAAyC;aACvD;SACF;QACD,QAAQ,EAAE,CAAC,QAAQ,CAAC;KACrB;CACO,CAAC;AAMX;;;;GAIG;AACI,KAAK,UAAU,iBAAiB,CACrC,OAAuB,EACvB,IAAqB;IAErB,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;IACvC,IAAI,CAAC;QACH,MAAM,EAAE,MAAM,EAAE,GAAG,IAAuB,CAAC;QAE3C,aAAa;QACb,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,IAAA,oBAAY,EAAC,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAC,CAAC;QACvD,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,uBAAS,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;QACjD,MAAM,QAAQ,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC;QAEtC,MAAM,EAAE,IAAI,CAAC,mDAAmD,MAAM,EAAE,CAAC,CAAC;QAE1E,IAAI,CAAC;YACH,gCAAgC;YAChC,MAAM,UAAU,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;YAE1D,IAAI,CAAC,UAAU,EAAE,CAAC;gBAChB,MAAM,IAAI,KAAK,CAAC,iBAAiB,MAAM,YAAY,CAAC,CAAC;YACvD,CAAC;YAED,MAAM,EAAE,IAAI,CAAC,oDAAoD,MAAM,EAAE,CAAC,CAAC;YAE3E,OAAO,IAAA,uBAAe,EAAC;gBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAClB;oBACE,OAAO,EAAE,IAAI;oBACb,MAAM,EAAE,UAAU,CAAC,KAAK;oBACxB,UAAU,EAAE,UAAU,CAAC,SAAS;oBAChC,UAAU,EAAE,UAAU,CAAC,SAAS;iBACjC,EACD,IAAI,EACJ,CAAC,CACF;aACe,CAAC,CAAC;QACtB,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,MAAM,EAAE,KAAK,CACX,+BAA+B,MAAM,KAAK,KAAK,EAAE,OAAO,IAAI,KAAK,EAAE,CACpE,CAAC;YAEF,sBAAsB;YACtB,IAAI,YAAY,GAAG,iCAAiC,KAAK,CAAC,OAAO,IAAI,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;YAErF,IAAI,KAAK,CAAC,QAAQ,EAAE,MAAM,KAAK,GAAG,EAAE,CAAC;gBACnC,YAAY,GAAG,iBAAiB,MAAM,aAAa,CAAC;YACtD,CAAC;YAED,OAAO,IAAA,oBAAY,EAAC,IAAI,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC;QAC/C,CAAC;IACH,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QACpB,OAAO,IAAA,oBAAY,EAAC,KAAK,CAAC,CAAC;IAC7B,CAAC;AACH,CAAC"}