@mcp-abap-adt/core 2.2.2 → 2.2.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 (430) hide show
  1. package/CHANGELOG.md +27 -1
  2. package/README.md +72 -18
  3. package/docs/README.md +17 -0
  4. package/docs/architecture/README.md +1 -0
  5. package/docs/deployment/GITHUB_ACTIONS.md +122 -0
  6. package/docs/deployment/README.md +1 -1
  7. package/docs/development/README.md +13 -4
  8. package/docs/installation/INSTALLATION.md +4 -4
  9. package/docs/installation/README.md +3 -1
  10. package/docs/installation/examples/README.md +1 -1
  11. package/docs/user-guide/AUTHENTICATION.md +61 -0
  12. package/docs/user-guide/CLIENT_CONFIGURATION.md +5 -2
  13. package/docs/user-guide/README.md +6 -1
  14. package/docs/user-guide/TERMINOLOGY.md +38 -0
  15. package/package.json +10 -3
  16. package/dist/bin/help.d.ts +0 -6
  17. package/dist/bin/help.d.ts.map +0 -1
  18. package/dist/bin/help.js +0 -59
  19. package/dist/bin/mcp-abap-adt-v2.d.ts +0 -9
  20. package/dist/bin/mcp-abap-adt-v2.d.ts.map +0 -1
  21. package/dist/bin/mcp-abap-adt-v2.js +0 -247
  22. package/dist/handlers/behavior_definition/readonly/handleGetBdef.d.ts +0 -21
  23. package/dist/handlers/behavior_definition/readonly/handleGetBdef.d.ts.map +0 -1
  24. package/dist/handlers/behavior_definition/readonly/handleGetBdef.js +0 -24
  25. package/dist/handlers/behavior_definition/readonly/handleGetBdef.js.map +0 -1
  26. package/dist/handlers/class/high/handleGetUnitTest.d.ts +0 -38
  27. package/dist/handlers/class/high/handleGetUnitTest.d.ts.map +0 -1
  28. package/dist/handlers/class/high/handleGetUnitTest.js +0 -73
  29. package/dist/handlers/class/high/handleGetUnitTest.js.map +0 -1
  30. package/dist/handlers/class/high/handleRunUnitTest.d.ts +0 -122
  31. package/dist/handlers/class/high/handleRunUnitTest.d.ts.map +0 -1
  32. package/dist/handlers/class/high/handleRunUnitTest.js +0 -133
  33. package/dist/handlers/class/high/handleRunUnitTest.js.map +0 -1
  34. package/dist/handlers/class/readonly/handleGetClass.d.ts +0 -23
  35. package/dist/handlers/class/readonly/handleGetClass.d.ts.map +0 -1
  36. package/dist/handlers/class/readonly/handleGetClass.js +0 -77
  37. package/dist/handlers/class/readonly/handleGetClass.js.map +0 -1
  38. package/dist/handlers/data_element/readonly/handleGetDataElement.d.ts +0 -23
  39. package/dist/handlers/data_element/readonly/handleGetDataElement.d.ts.map +0 -1
  40. package/dist/handlers/data_element/readonly/handleGetDataElement.js +0 -79
  41. package/dist/handlers/data_element/readonly/handleGetDataElement.js.map +0 -1
  42. package/dist/handlers/domain/readonly/handleGetDomain.d.ts +0 -23
  43. package/dist/handlers/domain/readonly/handleGetDomain.d.ts.map +0 -1
  44. package/dist/handlers/domain/readonly/handleGetDomain.js +0 -79
  45. package/dist/handlers/domain/readonly/handleGetDomain.js.map +0 -1
  46. package/dist/handlers/function/readonly/handleGetFunctionGroup.d.ts +0 -23
  47. package/dist/handlers/function/readonly/handleGetFunctionGroup.d.ts.map +0 -1
  48. package/dist/handlers/function/readonly/handleGetFunctionGroup.js +0 -77
  49. package/dist/handlers/function/readonly/handleGetFunctionGroup.js.map +0 -1
  50. package/dist/handlers/interface/readonly/handleGetInterface.d.ts +0 -23
  51. package/dist/handlers/interface/readonly/handleGetInterface.d.ts.map +0 -1
  52. package/dist/handlers/interface/readonly/handleGetInterface.js +0 -77
  53. package/dist/handlers/interface/readonly/handleGetInterface.js.map +0 -1
  54. package/dist/handlers/package/readonly/handleGetPackage.d.ts +0 -22
  55. package/dist/handlers/package/readonly/handleGetPackage.d.ts.map +0 -1
  56. package/dist/handlers/package/readonly/handleGetPackage.js +0 -108
  57. package/dist/handlers/package/readonly/handleGetPackage.js.map +0 -1
  58. package/dist/handlers/program/readonly/handleGetProgram.d.ts +0 -23
  59. package/dist/handlers/program/readonly/handleGetProgram.d.ts.map +0 -1
  60. package/dist/handlers/program/readonly/handleGetProgram.js +0 -77
  61. package/dist/handlers/program/readonly/handleGetProgram.js.map +0 -1
  62. package/dist/handlers/service_definition/readonly/handleGetServiceDefinition.d.ts +0 -18
  63. package/dist/handlers/service_definition/readonly/handleGetServiceDefinition.d.ts.map +0 -1
  64. package/dist/handlers/service_definition/readonly/handleGetServiceDefinition.js +0 -109
  65. package/dist/handlers/service_definition/readonly/handleGetServiceDefinition.js.map +0 -1
  66. package/dist/handlers/structure/readonly/handleGetStructure.d.ts +0 -23
  67. package/dist/handlers/structure/readonly/handleGetStructure.d.ts.map +0 -1
  68. package/dist/handlers/structure/readonly/handleGetStructure.js +0 -77
  69. package/dist/handlers/structure/readonly/handleGetStructure.js.map +0 -1
  70. package/dist/handlers/table/readonly/handleGetTable.d.ts +0 -23
  71. package/dist/handlers/table/readonly/handleGetTable.d.ts.map +0 -1
  72. package/dist/handlers/table/readonly/handleGetTable.js +0 -77
  73. package/dist/handlers/table/readonly/handleGetTable.js.map +0 -1
  74. package/dist/handlers/view/readonly/handleGetView.d.ts +0 -33
  75. package/dist/handlers/view/readonly/handleGetView.d.ts.map +0 -1
  76. package/dist/handlers/view/readonly/handleGetView.js +0 -90
  77. package/dist/handlers/view/readonly/handleGetView.js.map +0 -1
  78. package/dist/index.d.ts +0 -126
  79. package/dist/index.d.ts.map +0 -1
  80. package/dist/index.js +0 -2979
  81. package/dist/index.js.map +0 -1
  82. package/dist/lib/ServerConfigManager.d.ts +0 -90
  83. package/dist/lib/ServerConfigManager.d.ts.map +0 -1
  84. package/dist/lib/ServerConfigManager.js +0 -237
  85. package/dist/lib/ServerConfigManager.js.map +0 -1
  86. package/dist/lib/activationUtils.d.ts +0 -59
  87. package/dist/lib/activationUtils.d.ts.map +0 -1
  88. package/dist/lib/activationUtils.js +0 -168
  89. package/dist/lib/authBrokerFactory.d.ts +0 -96
  90. package/dist/lib/authBrokerFactory.d.ts.map +0 -1
  91. package/dist/lib/authBrokerFactory.js +0 -531
  92. package/dist/lib/authBrokerFactory.js.map +0 -1
  93. package/dist/lib/config/ServerConfig.d.ts +0 -17
  94. package/dist/lib/config/ServerConfig.d.ts.map +0 -1
  95. package/dist/lib/config/ServerConfig.js +0 -7
  96. package/dist/lib/config/ServerConfig.js.map +0 -1
  97. package/dist/lib/getFullCodeCache.d.ts +0 -3
  98. package/dist/lib/getFullCodeCache.d.ts.map +0 -1
  99. package/dist/lib/getFullCodeCache.js +0 -56
  100. package/dist/lib/handlers/handlers/base/BaseHandlerGroup.d.ts +0 -36
  101. package/dist/lib/handlers/handlers/base/BaseHandlerGroup.d.ts.map +0 -1
  102. package/dist/lib/handlers/handlers/base/BaseHandlerGroup.js +0 -268
  103. package/dist/lib/handlers/handlers/base/BaseHandlerGroup.js.map +0 -1
  104. package/dist/lib/handlers/handlers/examples/usage-example.d.ts +0 -29
  105. package/dist/lib/handlers/handlers/examples/usage-example.d.ts.map +0 -1
  106. package/dist/lib/handlers/handlers/examples/usage-example.js +0 -119
  107. package/dist/lib/handlers/handlers/examples/usage-example.js.map +0 -1
  108. package/dist/lib/handlers/handlers/groups/HighLevelHandlersGroup.d.ts +0 -14
  109. package/dist/lib/handlers/handlers/groups/HighLevelHandlersGroup.d.ts.map +0 -1
  110. package/dist/lib/handlers/handlers/groups/HighLevelHandlersGroup.js +0 -322
  111. package/dist/lib/handlers/handlers/groups/HighLevelHandlersGroup.js.map +0 -1
  112. package/dist/lib/handlers/handlers/groups/LowLevelHandlersGroup.d.ts +0 -14
  113. package/dist/lib/handlers/handlers/groups/LowLevelHandlersGroup.d.ts.map +0 -1
  114. package/dist/lib/handlers/handlers/groups/LowLevelHandlersGroup.js +0 -1214
  115. package/dist/lib/handlers/handlers/groups/LowLevelHandlersGroup.js.map +0 -1
  116. package/dist/lib/handlers/handlers/groups/ReadOnlyHandlersGroup.d.ts +0 -14
  117. package/dist/lib/handlers/handlers/groups/ReadOnlyHandlersGroup.d.ts.map +0 -1
  118. package/dist/lib/handlers/handlers/groups/ReadOnlyHandlersGroup.js +0 -232
  119. package/dist/lib/handlers/handlers/groups/ReadOnlyHandlersGroup.js.map +0 -1
  120. package/dist/lib/handlers/handlers/groups/SearchHandlersGroup.d.ts +0 -14
  121. package/dist/lib/handlers/handlers/groups/SearchHandlersGroup.d.ts.map +0 -1
  122. package/dist/lib/handlers/handlers/groups/SearchHandlersGroup.js +0 -57
  123. package/dist/lib/handlers/handlers/groups/SearchHandlersGroup.js.map +0 -1
  124. package/dist/lib/handlers/handlers/groups/SystemHandlersGroup.d.ts +0 -14
  125. package/dist/lib/handlers/handlers/groups/SystemHandlersGroup.d.ts.map +0 -1
  126. package/dist/lib/handlers/handlers/groups/SystemHandlersGroup.js +0 -176
  127. package/dist/lib/handlers/handlers/groups/SystemHandlersGroup.js.map +0 -1
  128. package/dist/lib/handlers/handlers/groups/index.d.ts +0 -13
  129. package/dist/lib/handlers/handlers/groups/index.d.ts.map +0 -1
  130. package/dist/lib/handlers/handlers/groups/index.js +0 -21
  131. package/dist/lib/handlers/handlers/groups/index.js.map +0 -1
  132. package/dist/lib/handlers/handlers/index.d.ts +0 -14
  133. package/dist/lib/handlers/handlers/index.d.ts.map +0 -1
  134. package/dist/lib/handlers/handlers/index.js +0 -37
  135. package/dist/lib/handlers/handlers/index.js.map +0 -1
  136. package/dist/lib/handlers/handlers/interfaces.d.ts +0 -67
  137. package/dist/lib/handlers/handlers/interfaces.d.ts.map +0 -1
  138. package/dist/lib/handlers/handlers/interfaces.js +0 -3
  139. package/dist/lib/handlers/handlers/interfaces.js.map +0 -1
  140. package/dist/lib/handlers/handlers/registry/CompositeHandlersRegistry.d.ts +0 -49
  141. package/dist/lib/handlers/handlers/registry/CompositeHandlersRegistry.d.ts.map +0 -1
  142. package/dist/lib/handlers/handlers/registry/CompositeHandlersRegistry.js +0 -88
  143. package/dist/lib/handlers/handlers/registry/CompositeHandlersRegistry.js.map +0 -1
  144. package/dist/lib/runtimeConfig.d.ts +0 -20
  145. package/dist/lib/runtimeConfig.d.ts.map +0 -1
  146. package/dist/lib/runtimeConfig.js +0 -130
  147. package/dist/lib/runtimeConfig.js.map +0 -1
  148. package/dist/lib/servers/BaseMcpServer.d.ts +0 -56
  149. package/dist/lib/servers/BaseMcpServer.d.ts.map +0 -1
  150. package/dist/lib/servers/BaseMcpServer.js +0 -198
  151. package/dist/lib/servers/BaseMcpServer.js.map +0 -1
  152. package/dist/lib/servers/ConnectionContext.d.ts +0 -20
  153. package/dist/lib/servers/ConnectionContext.d.ts.map +0 -1
  154. package/dist/lib/servers/ConnectionContext.js +0 -3
  155. package/dist/lib/servers/ConnectionContext.js.map +0 -1
  156. package/dist/lib/servers/SseServer.d.ts +0 -32
  157. package/dist/lib/servers/SseServer.d.ts.map +0 -1
  158. package/dist/lib/servers/SseServer.js +0 -139
  159. package/dist/lib/servers/SseServer.js.map +0 -1
  160. package/dist/lib/servers/StdioServer.d.ts +0 -20
  161. package/dist/lib/servers/StdioServer.d.ts.map +0 -1
  162. package/dist/lib/servers/StdioServer.js +0 -32
  163. package/dist/lib/servers/StdioServer.js.map +0 -1
  164. package/dist/lib/servers/StreamableHttpServer.d.ts +0 -30
  165. package/dist/lib/servers/StreamableHttpServer.d.ts.map +0 -1
  166. package/dist/lib/servers/StreamableHttpServer.js +0 -83
  167. package/dist/lib/servers/StreamableHttpServer.js.map +0 -1
  168. package/dist/lib/servers/handlers/base/BaseHandlerGroup.d.ts +0 -36
  169. package/dist/lib/servers/handlers/base/BaseHandlerGroup.d.ts.map +0 -1
  170. package/dist/lib/servers/handlers/base/BaseHandlerGroup.js +0 -268
  171. package/dist/lib/servers/handlers/base/BaseHandlerGroup.js.map +0 -1
  172. package/dist/lib/servers/handlers/examples/usage-example.d.ts +0 -29
  173. package/dist/lib/servers/handlers/examples/usage-example.d.ts.map +0 -1
  174. package/dist/lib/servers/handlers/examples/usage-example.js +0 -119
  175. package/dist/lib/servers/handlers/examples/usage-example.js.map +0 -1
  176. package/dist/lib/servers/handlers/groups/HighLevelHandlersGroup.d.ts +0 -14
  177. package/dist/lib/servers/handlers/groups/HighLevelHandlersGroup.d.ts.map +0 -1
  178. package/dist/lib/servers/handlers/groups/HighLevelHandlersGroup.js +0 -322
  179. package/dist/lib/servers/handlers/groups/HighLevelHandlersGroup.js.map +0 -1
  180. package/dist/lib/servers/handlers/groups/LowLevelHandlersGroup.d.ts +0 -14
  181. package/dist/lib/servers/handlers/groups/LowLevelHandlersGroup.d.ts.map +0 -1
  182. package/dist/lib/servers/handlers/groups/LowLevelHandlersGroup.js +0 -1214
  183. package/dist/lib/servers/handlers/groups/LowLevelHandlersGroup.js.map +0 -1
  184. package/dist/lib/servers/handlers/groups/ReadOnlyHandlersGroup.d.ts +0 -14
  185. package/dist/lib/servers/handlers/groups/ReadOnlyHandlersGroup.d.ts.map +0 -1
  186. package/dist/lib/servers/handlers/groups/ReadOnlyHandlersGroup.js +0 -232
  187. package/dist/lib/servers/handlers/groups/ReadOnlyHandlersGroup.js.map +0 -1
  188. package/dist/lib/servers/handlers/groups/SearchHandlersGroup.d.ts +0 -14
  189. package/dist/lib/servers/handlers/groups/SearchHandlersGroup.d.ts.map +0 -1
  190. package/dist/lib/servers/handlers/groups/SearchHandlersGroup.js +0 -57
  191. package/dist/lib/servers/handlers/groups/SearchHandlersGroup.js.map +0 -1
  192. package/dist/lib/servers/handlers/groups/SystemHandlersGroup.d.ts +0 -14
  193. package/dist/lib/servers/handlers/groups/SystemHandlersGroup.d.ts.map +0 -1
  194. package/dist/lib/servers/handlers/groups/SystemHandlersGroup.js +0 -176
  195. package/dist/lib/servers/handlers/groups/SystemHandlersGroup.js.map +0 -1
  196. package/dist/lib/servers/handlers/groups/index.d.ts +0 -13
  197. package/dist/lib/servers/handlers/groups/index.d.ts.map +0 -1
  198. package/dist/lib/servers/handlers/groups/index.js +0 -21
  199. package/dist/lib/servers/handlers/groups/index.js.map +0 -1
  200. package/dist/lib/servers/handlers/index.d.ts +0 -14
  201. package/dist/lib/servers/handlers/index.d.ts.map +0 -1
  202. package/dist/lib/servers/handlers/index.js +0 -37
  203. package/dist/lib/servers/handlers/index.js.map +0 -1
  204. package/dist/lib/servers/handlers/interfaces.d.ts +0 -67
  205. package/dist/lib/servers/handlers/interfaces.d.ts.map +0 -1
  206. package/dist/lib/servers/handlers/interfaces.js +0 -3
  207. package/dist/lib/servers/handlers/interfaces.js.map +0 -1
  208. package/dist/lib/servers/handlers/registry/CompositeHandlersRegistry.d.ts +0 -49
  209. package/dist/lib/servers/handlers/registry/CompositeHandlersRegistry.d.ts.map +0 -1
  210. package/dist/lib/servers/handlers/registry/CompositeHandlersRegistry.js +0 -88
  211. package/dist/lib/servers/handlers/registry/CompositeHandlersRegistry.js.map +0 -1
  212. package/dist/lib/servers/index.d.ts +0 -5
  213. package/dist/lib/servers/index.d.ts.map +0 -1
  214. package/dist/lib/servers/index.js +0 -21
  215. package/dist/lib/servers/index.js.map +0 -1
  216. package/dist/lib/servers/launcher.d.ts +0 -2
  217. package/dist/lib/servers/launcher.d.ts.map +0 -1
  218. package/dist/lib/servers/launcher.js +0 -123
  219. package/dist/lib/servers/launcher.js.map +0 -1
  220. package/dist/lib/servers/mcp_handlers.d.ts +0 -25
  221. package/dist/lib/servers/mcp_handlers.d.ts.map +0 -1
  222. package/dist/lib/servers/mcp_handlers.js +0 -822
  223. package/dist/lib/servers/mcp_handlers.js.map +0 -1
  224. package/dist/lib/servers/mcp_server.d.ts +0 -7
  225. package/dist/lib/servers/mcp_server.d.ts.map +0 -1
  226. package/dist/lib/servers/mcp_server.js +0 -12
  227. package/dist/lib/servers/utils.d.ts +0 -42
  228. package/dist/lib/servers/utils.d.ts.map +0 -1
  229. package/dist/lib/servers/utils.js +0 -620
  230. package/dist/lib/servers/utils.js.map +0 -1
  231. package/dist/lib/servers/v2/__tests__/unit/McpServer.test.d.ts +0 -7
  232. package/dist/lib/servers/v2/__tests__/unit/McpServer.test.d.ts.map +0 -1
  233. package/dist/lib/servers/v2/__tests__/unit/McpServer.test.js +0 -218
  234. package/dist/lib/servers/v2/connection/LocalConnectionProvider.d.ts +0 -20
  235. package/dist/lib/servers/v2/connection/LocalConnectionProvider.d.ts.map +0 -1
  236. package/dist/lib/servers/v2/connection/LocalConnectionProvider.js +0 -70
  237. package/dist/lib/servers/v2/connection/RemoteConnectionProvider.d.ts +0 -21
  238. package/dist/lib/servers/v2/connection/RemoteConnectionProvider.d.ts.map +0 -1
  239. package/dist/lib/servers/v2/connection/RemoteConnectionProvider.js +0 -36
  240. package/dist/lib/servers/v2/connection/index.d.ts +0 -6
  241. package/dist/lib/servers/v2/connection/index.d.ts.map +0 -1
  242. package/dist/lib/servers/v2/connection/index.js +0 -10
  243. package/dist/lib/servers/v2/factory/AuthBrokerFactory.d.ts +0 -29
  244. package/dist/lib/servers/v2/factory/AuthBrokerFactory.d.ts.map +0 -1
  245. package/dist/lib/servers/v2/factory/AuthBrokerFactory.js +0 -79
  246. package/dist/lib/servers/v2/factory/LocalModeFactory.d.ts +0 -38
  247. package/dist/lib/servers/v2/factory/LocalModeFactory.d.ts.map +0 -1
  248. package/dist/lib/servers/v2/factory/LocalModeFactory.js +0 -38
  249. package/dist/lib/servers/v2/factory/index.d.ts +0 -6
  250. package/dist/lib/servers/v2/factory/index.d.ts.map +0 -1
  251. package/dist/lib/servers/v2/factory/index.js +0 -10
  252. package/dist/lib/servers/v2/index.d.ts +0 -9
  253. package/dist/lib/servers/v2/index.d.ts.map +0 -1
  254. package/dist/lib/servers/v2/index.js +0 -27
  255. package/dist/lib/servers/v2/index.js.map +0 -1
  256. package/dist/lib/servers/v2/interfaces/connection.d.ts +0 -188
  257. package/dist/lib/servers/v2/interfaces/connection.d.ts.map +0 -1
  258. package/dist/lib/servers/v2/interfaces/connection.js +0 -7
  259. package/dist/lib/servers/v2/interfaces/index.d.ts +0 -10
  260. package/dist/lib/servers/v2/interfaces/index.d.ts.map +0 -1
  261. package/dist/lib/servers/v2/interfaces/index.js +0 -25
  262. package/dist/lib/servers/v2/interfaces/protocol.d.ts +0 -30
  263. package/dist/lib/servers/v2/interfaces/protocol.d.ts.map +0 -1
  264. package/dist/lib/servers/v2/interfaces/protocol.js +0 -7
  265. package/dist/lib/servers/v2/interfaces/session.d.ts +0 -98
  266. package/dist/lib/servers/v2/interfaces/session.d.ts.map +0 -1
  267. package/dist/lib/servers/v2/interfaces/session.js +0 -7
  268. package/dist/lib/servers/v2/interfaces/transport.d.ts +0 -88
  269. package/dist/lib/servers/v2/interfaces/transport.d.ts.map +0 -1
  270. package/dist/lib/servers/v2/interfaces/transport.js +0 -7
  271. package/dist/lib/servers/v2/protocol/ProtocolHandler.d.ts +0 -21
  272. package/dist/lib/servers/v2/protocol/ProtocolHandler.d.ts.map +0 -1
  273. package/dist/lib/servers/v2/protocol/ProtocolHandler.js +0 -77
  274. package/dist/lib/servers/v2/protocol/index.d.ts +0 -5
  275. package/dist/lib/servers/v2/protocol/index.d.ts.map +0 -1
  276. package/dist/lib/servers/v2/protocol/index.js +0 -8
  277. package/dist/lib/servers/v2/server/McpServer.d.ts +0 -76
  278. package/dist/lib/servers/v2/server/McpServer.d.ts.map +0 -1
  279. package/dist/lib/servers/v2/server/McpServer.js +0 -243
  280. package/dist/lib/servers/v2/server/index.d.ts +0 -5
  281. package/dist/lib/servers/v2/server/index.d.ts.map +0 -1
  282. package/dist/lib/servers/v2/server/index.js +0 -8
  283. package/dist/lib/servers/v2/session/SessionManager.d.ts +0 -40
  284. package/dist/lib/servers/v2/session/SessionManager.d.ts.map +0 -1
  285. package/dist/lib/servers/v2/session/SessionManager.js +0 -136
  286. package/dist/lib/servers/v2/session/index.d.ts +0 -5
  287. package/dist/lib/servers/v2/session/index.d.ts.map +0 -1
  288. package/dist/lib/servers/v2/session/index.js +0 -8
  289. package/dist/lib/servers/v2/transports/SseTransport.d.ts +0 -49
  290. package/dist/lib/servers/v2/transports/SseTransport.d.ts.map +0 -1
  291. package/dist/lib/servers/v2/transports/SseTransport.js +0 -89
  292. package/dist/lib/servers/v2/transports/StdioTransport.d.ts +0 -31
  293. package/dist/lib/servers/v2/transports/StdioTransport.d.ts.map +0 -1
  294. package/dist/lib/servers/v2/transports/StdioTransport.js +0 -91
  295. package/dist/lib/servers/v2/transports/StreamableHttpTransport.d.ts +0 -51
  296. package/dist/lib/servers/v2/transports/StreamableHttpTransport.d.ts.map +0 -1
  297. package/dist/lib/servers/v2/transports/StreamableHttpTransport.js +0 -147
  298. package/dist/lib/servers/v2/transports/index.d.ts +0 -7
  299. package/dist/lib/servers/v2/transports/index.d.ts.map +0 -1
  300. package/dist/lib/servers/v2/transports/index.js +0 -12
  301. package/dist/lib/servers/v2/types/common.d.ts +0 -17
  302. package/dist/lib/servers/v2/types/common.d.ts.map +0 -1
  303. package/dist/lib/servers/v2/types/common.js +0 -6
  304. package/dist/lib/servers/v2/types/common.js.map +0 -1
  305. package/dist/lib/servers/v2/types/index.d.ts +0 -8
  306. package/dist/lib/servers/v2/types/index.d.ts.map +0 -1
  307. package/dist/lib/servers/v2/types/index.js +0 -24
  308. package/dist/lib/servers/v2/types/index.js.map +0 -1
  309. package/dist/lib/servers/v2/types/transport.d.ts +0 -28
  310. package/dist/lib/servers/v2/types/transport.d.ts.map +0 -1
  311. package/dist/lib/servers/v2/types/transport.js +0 -8
  312. package/dist/lib/servers/v2/types/transport.js.map +0 -1
  313. package/dist/lib/servers/v2/utils/StdioLogger.d.ts +0 -17
  314. package/dist/lib/servers/v2/utils/StdioLogger.d.ts.map +0 -1
  315. package/dist/lib/servers/v2/utils/StdioLogger.js +0 -33
  316. package/dist/lib/servers/v2/utils/StdioLogger.js.map +0 -1
  317. package/dist/lib/stores/UnixFileServiceKeyStore.d.ts +0 -42
  318. package/dist/lib/stores/UnixFileServiceKeyStore.d.ts.map +0 -1
  319. package/dist/lib/stores/UnixFileServiceKeyStore.js +0 -53
  320. package/dist/lib/stores/UnixFileSessionStore.d.ts +0 -54
  321. package/dist/lib/stores/UnixFileSessionStore.d.ts.map +0 -1
  322. package/dist/lib/stores/UnixFileSessionStore.js +0 -70
  323. package/dist/lib/stores/WindowsFileServiceKeyStore.d.ts +0 -42
  324. package/dist/lib/stores/WindowsFileServiceKeyStore.d.ts.map +0 -1
  325. package/dist/lib/stores/WindowsFileServiceKeyStore.js +0 -53
  326. package/dist/lib/stores/WindowsFileSessionStore.d.ts +0 -54
  327. package/dist/lib/stores/WindowsFileSessionStore.d.ts.map +0 -1
  328. package/dist/lib/stores/WindowsFileSessionStore.js +0 -70
  329. package/dist/lib/toolsRegistry.d.ts +0 -13
  330. package/dist/lib/toolsRegistry.d.ts.map +0 -1
  331. package/dist/lib/toolsRegistry.js +0 -410
  332. package/dist/lib/transportConfig.d.ts +0 -27
  333. package/dist/lib/transportConfig.d.ts.map +0 -1
  334. package/dist/lib/transportConfig.js +0 -124
  335. package/dist/lib/transports/stdio.d.ts +0 -10
  336. package/dist/lib/transports/stdio.d.ts.map +0 -1
  337. package/dist/lib/transports/stdio.js +0 -73
  338. package/dist/lib/yamlConfig.d.ts +0 -59
  339. package/dist/lib/yamlConfig.d.ts.map +0 -1
  340. package/dist/lib/yamlConfig.js +0 -349
  341. package/dist/lib/yamlConfig.js.map +0 -1
  342. package/dist/server/v1/AuthBrokerConfig.d.ts +0 -19
  343. package/dist/server/v1/AuthBrokerConfig.d.ts.map +0 -1
  344. package/dist/server/v1/AuthBrokerConfig.js +0 -44
  345. package/dist/server/v1/AuthBrokerConfig.js.map +0 -1
  346. package/dist/server/v1/IServerConfig.d.ts +0 -17
  347. package/dist/server/v1/IServerConfig.d.ts.map +0 -1
  348. package/dist/server/v1/IServerConfig.js +0 -7
  349. package/dist/server/v1/IServerConfig.js.map +0 -1
  350. package/dist/server/v1/ServerConfig.d.ts +0 -16
  351. package/dist/server/v1/ServerConfig.d.ts.map +0 -1
  352. package/dist/server/v1/ServerConfig.js +0 -6
  353. package/dist/server/v1/ServerConfig.js.map +0 -1
  354. package/dist/server/v1/embeddable-server.d.ts +0 -89
  355. package/dist/server/v1/embeddable-server.d.ts.map +0 -1
  356. package/dist/server/v1/embeddable-server.js +0 -83
  357. package/dist/server/v1/embeddable-server.js.map +0 -1
  358. package/dist/server/v1/index.d.ts +0 -30
  359. package/dist/server/v1/index.d.ts.map +0 -1
  360. package/dist/server/v1/index.js +0 -65
  361. package/dist/server/v1/index.js.map +0 -1
  362. package/dist/server/v1/legacy-server.d.ts +0 -141
  363. package/dist/server/v1/legacy-server.d.ts.map +0 -1
  364. package/dist/server/v1/legacy-server.js +0 -2099
  365. package/dist/server/v1/legacy-server.js.map +0 -1
  366. package/dist/server/v1/mcp_handlers.d.ts +0 -19
  367. package/dist/server/v1/mcp_handlers.d.ts.map +0 -1
  368. package/dist/server/v1/mcp_handlers.js +0 -85
  369. package/dist/server/v1/mcp_handlers.js.map +0 -1
  370. package/dist/server/v2/AuthBrokerConfig.d.ts +0 -22
  371. package/dist/server/v2/AuthBrokerConfig.d.ts.map +0 -1
  372. package/dist/server/v2/AuthBrokerConfig.js +0 -46
  373. package/dist/server/v2/AuthBrokerConfig.js.map +0 -1
  374. package/dist/server/v2/BaseMcpServer.d.ts +0 -67
  375. package/dist/server/v2/BaseMcpServer.d.ts.map +0 -1
  376. package/dist/server/v2/BaseMcpServer.js +0 -273
  377. package/dist/server/v2/BaseMcpServer.js.map +0 -1
  378. package/dist/server/v2/ConnectionContext.d.ts +0 -20
  379. package/dist/server/v2/ConnectionContext.d.ts.map +0 -1
  380. package/dist/server/v2/ConnectionContext.js +0 -3
  381. package/dist/server/v2/ConnectionContext.js.map +0 -1
  382. package/dist/server/v2/IHttpApplication.d.ts +0 -42
  383. package/dist/server/v2/IHttpApplication.d.ts.map +0 -1
  384. package/dist/server/v2/IHttpApplication.js +0 -3
  385. package/dist/server/v2/IHttpApplication.js.map +0 -1
  386. package/dist/server/v2/IServerConfig.d.ts +0 -15
  387. package/dist/server/v2/IServerConfig.d.ts.map +0 -1
  388. package/dist/server/v2/IServerConfig.js +0 -7
  389. package/dist/server/v2/IServerConfig.js.map +0 -1
  390. package/dist/server/v2/ServerConfig.d.ts +0 -16
  391. package/dist/server/v2/ServerConfig.d.ts.map +0 -1
  392. package/dist/server/v2/ServerConfig.js +0 -6
  393. package/dist/server/v2/ServerConfig.js.map +0 -1
  394. package/dist/server/v2/SseServer.d.ts +0 -95
  395. package/dist/server/v2/SseServer.d.ts.map +0 -1
  396. package/dist/server/v2/SseServer.js +0 -217
  397. package/dist/server/v2/SseServer.js.map +0 -1
  398. package/dist/server/v2/StdioServer.d.ts +0 -20
  399. package/dist/server/v2/StdioServer.d.ts.map +0 -1
  400. package/dist/server/v2/StdioServer.js +0 -32
  401. package/dist/server/v2/StdioServer.js.map +0 -1
  402. package/dist/server/v2/StreamableHttpServer.d.ts +0 -94
  403. package/dist/server/v2/StreamableHttpServer.d.ts.map +0 -1
  404. package/dist/server/v2/StreamableHttpServer.js +0 -170
  405. package/dist/server/v2/StreamableHttpServer.js.map +0 -1
  406. package/dist/server/v2/index.d.ts +0 -6
  407. package/dist/server/v2/index.d.ts.map +0 -1
  408. package/dist/server/v2/index.js +0 -22
  409. package/dist/server/v2/index.js.map +0 -1
  410. package/dist/server/v2/launcher.d.ts +0 -2
  411. package/dist/server/v2/launcher.d.ts.map +0 -1
  412. package/dist/server/v2/launcher.js +0 -181
  413. package/dist/server/v2/launcher.js.map +0 -1
  414. package/dist/server/v2/mcp_handlers.d.ts +0 -25
  415. package/dist/server/v2/mcp_handlers.d.ts.map +0 -1
  416. package/dist/server/v2/mcp_handlers.js +0 -828
  417. package/dist/server/v2/mcp_handlers.js.map +0 -1
  418. package/dist/server/v2/utils.d.ts +0 -42
  419. package/dist/server/v2/utils.d.ts.map +0 -1
  420. package/dist/server/v2/utils.js +0 -620
  421. package/dist/server/v2/utils.js.map +0 -1
  422. package/dist/smithery-entry.d.ts +0 -2
  423. package/dist/smithery-entry.d.ts.map +0 -1
  424. package/dist/smithery-entry.js +0 -25
  425. package/dist/smithery-entry.js.map +0 -1
  426. package/dist/tools/test-v2-server-stdio-compiled.js +0 -132
  427. package/dist/utils/lockStateManager.d.ts +0 -64
  428. package/dist/utils/lockStateManager.d.ts.map +0 -1
  429. package/dist/utils/lockStateManager.js +0 -173
  430. package/dist/utils/lockStateManager.js.map +0 -1
package/CHANGELOG.md CHANGED
@@ -2,9 +2,35 @@
2
2
 
3
3
  ## [Unreleased]
4
4
 
5
- ## [2.2.1] - 2026-02-10
5
+ ## [2.2.4] - 2026-02-11
6
+ ### Changed
7
+ - **Discoverability metadata**: Updated npm keywords and package metadata to improve MCP search relevance for ABAP, ABAP Cloud, JWT/XSUAA, and service-key flows.
8
+ - **Registry description**: Shortened `server.json` description to meet the MCP publisher 100-character constraint.
9
+ - **README positioning**: Clarified first-screen value proposition around full CRUD, On-Premise + ABAP Cloud support, and auth options.
10
+
11
+ ## [2.2.3] - 2026-02-10
12
+ ### Added
13
+ - **Docs**: Added dedicated Terminology and Authentication guides, with links from README.
14
+
15
+ ### Changed
16
+ - **README**: Reworked first-screen content and links to emphasize configurator usage and destinations.
17
+ - **Docs structure**: Moved GitHub configuration README into deployment docs and fixed internal links.
18
+ - **Client configuration docs**: Linked to the configurator repo and usage guide.
19
+
20
+ ## [2.2.2] - 2026-02-10
21
+ ### Added
22
+ - **Client support**: Added OpenCode and Copilot configuration support.
23
+ - **Claude config**: Added `.mcp.json` project configuration and docs.
24
+ - **Configurator options**: Added URL, headers, and timeout options in `mcp-abap-adt-configure`.
25
+
6
26
  ### Changed
7
27
  - **Configurator split**: Removed `mcp-abap-adt-configure` from core. Use `@mcp-abap-adt/configurator` (repo: `mcp-abap-adt-conf`) with `mcp-conf` instead.
28
+ - **Codex/Goose handling**: Improved transport handling and timeout defaults for non-stdio transports.
29
+ - **Default-disabled entries**: Updated JSON config handling and docs to keep new entries disabled by default.
30
+ - **Streamable HTTP**: Refactored server handling for per-request connections.
31
+
32
+ ### Fixed
33
+ - **Goose config**: Corrected enabled state handling in `writeGooseConfig`.
8
34
 
9
35
  ## [2.2.0] - 2026-02-09
10
36
  ### Added
package/README.md CHANGED
@@ -1,18 +1,37 @@
1
1
  # mcp-abap-adt: Your Gateway to ABAP Development Tools (ADT)
2
2
 
3
- <a href="https://glama.ai/mcp/servers/@fr0ster/mcp-abap-adt">
4
- <img width="380" height="200" src="https://glama.ai/mcp/servers/@fr0ster/mcp-abap-adt/badge" />
5
- </a>
3
+ This project provides an MCP server for SAP ABAP ADT with full CRUD support across On-Premise and SAP BTP ABAP Cloud systems. It supports JWT/XSUAA authentication and service key (destination-based) authorization from the start.
6
4
 
7
- > **Acknowledgment**: This project was originally inspired by [mario-andreschak/mcp-abap-adt](https://github.com/mario-andreschak/mcp-abap-adt). We started with the core concept and then evolved it into an independent project with our own architecture and features.
5
+ **Why teams use it:**
6
+ - **Full CRUD** (not read-only): create, read, update, and delete ABAP artifacts
7
+ - Works with **On-Premise** and **ABAP Cloud (BTP)** systems
8
+ - **JWT/XSUAA** and **service key** (destination-based) authorization
9
+ - Multiple transports: **stdio**, **HTTP**, **SSE**
10
+ - Rich tool surface for ABAP objects, metadata, transports, and search
8
11
 
9
- This project provides a server that allows you to interact with SAP ABAP systems using the Model Context Protocol (MCP). Think of it as a bridge that lets tools like [Cline](https://marketplace.visualstudio.com/items?itemName=saoudrizwan.claude-dev) (a VS Code extension) talk to your ABAP system and retrieve information like source code, table structures, and more.
12
+ **Authorization & Destinations (Important):** A *destination* is the filename of a service key stored locally. You place service keys in the service-keys directory, and use `--mcp=<destination>` to select which one to use. This is the primary auth model for on‑prem and BTP systems. See [Authentication & Destinations](docs/user-guide/AUTHENTICATION.md).
10
13
 
11
- ## Configure Clients Fast (Recommended)
14
+ You can configure MCP clients either manually (JSON/TOML) or via the configurator CLI (`@mcp-abap-adt/configurator`, repo: [`mcp-abap-adt-conf`](https://github.com/fr0ster/mcp-abap-adt-conf)).
12
15
 
13
- Use the configurator to generate client config files instead of hand‑editing JSON/TOML:
16
+ ## Table of Contents
17
+
18
+ 1. [Getting Started](#getting-started)
19
+ 2. [Architecture](#architecture)
20
+ 3. [Quick Start](#quick-start)
21
+ 4. [Terminology](#terminology)
22
+ 5. [Authorization & Destinations](#authorization--destinations)
23
+ 6. [Registries](#registries)
24
+ 7. [Features](#features)
25
+ 8. [Documentation](#documentation)
26
+ 9. [Dependencies](#dependencies)
27
+ 10. [Running the Server](#running-the-server)
28
+
29
+ ## Getting Started
30
+
31
+ Install the server and configure your client using the configurator:
14
32
 
15
33
  ```bash
34
+ npm install -g @mcp-abap-adt/core
16
35
  npm install -g @mcp-abap-adt/configurator
17
36
 
18
37
  # stdio (destination)
@@ -22,7 +41,23 @@ mcp-conf --client cline --name abap --mcp TRIAL
22
41
  mcp-conf --client copilot --name abap --transport http --url http://localhost:3000/mcp/stream/http --header x-mcp-destination=trial
23
42
  ```
24
43
 
25
- Full usage: `docs/CLIENT_INSTALLERS.md` in the `mcp-abap-adt-conf` repo.
44
+ Full configurator usage (separate repo): [CLIENT_INSTALLERS.md](https://github.com/fr0ster/mcp-abap-adt-conf/tree/main/docs/CLIENT_INSTALLERS.md).
45
+
46
+ ## Terminology
47
+
48
+ **Destination**: a local service key filename. You store service keys in the service-keys directory, and pass the filename (without extension) via `--mcp=<destination>` to select which system to use.
49
+
50
+ See [docs/user-guide/TERMINOLOGY.md](docs/user-guide/TERMINOLOGY.md) for the full list.
51
+
52
+ ## Authorization & Destinations
53
+
54
+ Destination-based auth is the default. Drop service keys into the service-keys folder and use the filename as your destination:
55
+
56
+ ```bash
57
+ mcp-abap-adt --transport=stdio --mcp=TRIAL
58
+ ```
59
+
60
+ For full details (paths, `.env`, direct headers), see [Authentication & Destinations](docs/user-guide/AUTHENTICATION.md).
26
61
 
27
62
  ## Architecture
28
63
 
@@ -52,13 +87,19 @@ await server.connect(transport);
52
87
  ## Quick Start
53
88
 
54
89
  1. **Install server**: See [Installation Guide](docs/installation/INSTALLATION.md)
55
- 2. **Configure client (auto)**: Use `mcp-conf` from `@mcp-abap-adt/configurator` (repo: `mcp-abap-adt-conf`)
90
+ 2. **Configure client (auto)**: Use `mcp-conf` from `@mcp-abap-adt/configurator` (repo: [`mcp-abap-adt-conf`](https://github.com/fr0ster/mcp-abap-adt-conf), docs: [CLIENT_INSTALLERS.md](https://github.com/fr0ster/mcp-abap-adt-conf/tree/main/docs/CLIENT_INSTALLERS.md))
56
91
  3. **Configure client (manual)**: See [Client Configuration](docs/user-guide/CLIENT_CONFIGURATION.md)
57
92
  4. **Use**: See [Available Tools](docs/user-guide/AVAILABLE_TOOLS.md)
58
93
 
59
- ## MCP Registry
94
+ ## Registries
60
95
 
61
- Published in the official MCP Registry. See `docs/deployment/MCP_REGISTRY.md` for full details.
96
+ Published in the official MCP Registry and listed on Glama.ai.
97
+
98
+ - MCP Registry: [docs/deployment/MCP_REGISTRY.md](docs/deployment/MCP_REGISTRY.md)
99
+ - Glama.ai:
100
+ <a href="https://glama.ai/mcp/servers/@fr0ster/mcp-abap-adt">
101
+ <img width="380" height="200" src="https://glama.ai/mcp/servers/@fr0ster/mcp-abap-adt/badge" />
102
+ </a>
62
103
 
63
104
  ## Features
64
105
 
@@ -85,17 +126,21 @@ Published in the official MCP Registry. See `docs/deployment/MCP_REGISTRY.md` fo
85
126
  ## Documentation
86
127
 
87
128
  ### For Users
88
- - **[Installation Guide](docs/installation/INSTALLATION.md)** - Installation instructions for all platforms
89
- - **[Client Configuration](docs/user-guide/CLIENT_CONFIGURATION.md)** - How to configure MCP clients
90
- - **Configurator**: `@mcp-abap-adt/configurator` (repo: `mcp-abap-adt-conf`) provides the `mcp-conf` CLI to auto-configure clients.
129
+ - **[Docs Index](docs/README.md)** - Full documentation index
130
+ - **[Installation Guide](docs/installation/README.md)** - Installation overview and platform guides
131
+ - **[User Guide](docs/user-guide/README.md)** - End-user docs (auth, config, tools)
132
+ - **[Authentication & Destinations](docs/user-guide/AUTHENTICATION.md)** - Destination-based auth and service keys
133
+ - **[Handlers Management](docs/user-guide/HANDLERS_MANAGEMENT.md)** - Enable/disable handler groups
134
+ - **Configurator**: `@mcp-abap-adt/configurator` (repo: [`mcp-abap-adt-conf`](https://github.com/fr0ster/mcp-abap-adt-conf)) provides the `mcp-conf` CLI to auto-configure clients
91
135
  - **[Available Tools](docs/user-guide/AVAILABLE_TOOLS.md)** - Complete list of available MCP tools
92
136
 
93
137
  ### For Administrators
94
- - **[Installation Guide](docs/installation/INSTALLATION.md)** - Platform-specific installation guides
138
+ - **[Deployment Docs](docs/deployment/README.md)** - MCP Registry, Docker, release notes
139
+ - **[Server Configuration](docs/configuration/YAML_CONFIG.md)** - YAML config reference
95
140
 
96
141
  ### For Developers
97
- - **[Architecture Documentation](docs/architecture/)** - System architecture and design decisions
98
- - **[Development Documentation](docs/development/)** - Testing guides and development resources
142
+ - **[Architecture Documentation](docs/architecture/README.md)** - System architecture and design decisions
143
+ - **[Development Documentation](docs/development/README.md)** - Testing guides and development resources
99
144
  - **[CHANGELOG.md](CHANGELOG.md)** - Version history and changes
100
145
 
101
146
  ## Dependencies
@@ -107,6 +152,9 @@ This project uses two npm packages:
107
152
 
108
153
  These packages are automatically installed via `npm install` and are published to npm.
109
154
 
155
+ ---
156
+
157
+
110
158
  ## Running the Server
111
159
 
112
160
  ### Global Installation (Recommended)
@@ -184,11 +232,13 @@ SAP_JWT_TOKEN=your-jwt-token
184
232
  npm install -g @mcp-abap-adt/connection
185
233
 
186
234
  # Generate .env file from service key JSON
187
- sap-abap-auth auth -k path/to/service-key.json
235
+ mcp-auth auth -k path/to/service-key.json
188
236
  ```
189
237
 
190
238
  This will automatically create/update `.env` file with JWT tokens and connection details.
191
239
 
240
+ **Claude recommendation:** place the service key in the service-keys directory and use `--mcp=<destination>` (avoid manual JWT tokens).
241
+
192
242
  ### Command-Line Options
193
243
 
194
244
  **Authentication:**
@@ -246,3 +296,7 @@ npm run docs:tools
246
296
  ## Contributors
247
297
 
248
298
  Thank you to all contributors! See [CONTRIBUTORS.md](CONTRIBUTORS.md) for the complete list.
299
+
300
+ ---
301
+
302
+ **Acknowledgment**: This project was originally inspired by [mario-andreschak/mcp-abap-adt](https://github.com/mario-andreschak/mcp-abap-adt). We started with the core concept and then evolved it into an independent project with our own architecture and features.
package/docs/README.md CHANGED
@@ -17,6 +17,7 @@ Complete installation instructions for different platforms and environments.
17
17
  Documentation for end users: configuration, usage, and available tools.
18
18
 
19
19
  - `CLIENT_CONFIGURATION.md` - How to configure MCP clients to connect to the server
20
+ - `AUTHENTICATION.md` - Destination-based auth, service key locations, and header-based auth
20
21
  - Configurator (auto-config): `@mcp-abap-adt/configurator` (repo: `mcp-abap-adt-conf`)
21
22
  - `AVAILABLE_TOOLS.md` - Complete list of available MCP tools and their descriptions
22
23
  - `CLI_OPTIONS.md` - Complete command-line options reference
@@ -26,6 +27,14 @@ Documentation for server configuration options.
26
27
 
27
28
  - `YAML_CONFIG.md` - YAML configuration file guide (alternative to command-line arguments)
28
29
 
30
+ ### [deployment/](deployment/) - Deployment & Releases
31
+ Documentation for deployment, Docker, and release flow.
32
+
33
+ - `README.md` - Deployment docs index
34
+ - `MCP_REGISTRY.md` - MCP Registry publishing
35
+ - `DOCKER.md` - Docker deployment guide
36
+ - `RELEASE.md` - Release process
37
+
29
38
  ### [architecture/](architecture/) - For Developers
30
39
  Technical documentation about the system architecture, design decisions, and internal structure.
31
40
 
@@ -48,12 +57,20 @@ Documentation for developers: testing, development guides, and internal document
48
57
 
49
58
  - **Getting Started**: [Installation Guide](installation/INSTALLATION.md)
50
59
  - **User Configuration**: [Client Configuration](user-guide/CLIENT_CONFIGURATION.md)
60
+ - **Authentication**: [Destinations & Auth](user-guide/AUTHENTICATION.md)
61
+ - **Terminology**: [Project Terms](user-guide/TERMINOLOGY.md)
62
+ - **Handlers Management**: [Handler Groups](user-guide/HANDLERS_MANAGEMENT.md)
51
63
  - **Server Configuration**: [YAML Config](configuration/YAML_CONFIG.md) | [CLI Options](user-guide/CLI_OPTIONS.md)
52
64
  - **Deployment**: [MCP Registry](deployment/MCP_REGISTRY.md) | [Docker](deployment/DOCKER.md)
53
65
  - **Available Tools**: [Tools List](user-guide/AVAILABLE_TOOLS.md)
54
66
  - **Architecture**: [Stateful Sessions](architecture/STATEFUL_SESSION_GUIDE.md) | [Architecture Docs](architecture/README.md)
55
67
  - **Development**: [Development Documentation](development/)
56
68
 
69
+ ## 📦 Artifacts
70
+
71
+ - `adt-discovery.xml` - ADT discovery snapshot
72
+ - `discovery.json` - ADT discovery JSON snapshot
73
+
57
74
  ## 📝 Package-Specific Documentation
58
75
 
59
76
  Package-specific documentation is available in the respective npm packages:
@@ -41,6 +41,7 @@ Handlers are organized into logical groups for flexible composition:
41
41
  - **[STATEFUL_SESSION_GUIDE.md](STATEFUL_SESSION_GUIDE.md)** - Stateful ADT request flow for lock/update/unlock operations
42
42
  - **[TOOLS_ARCHITECTURE.md](TOOLS_ARCHITECTURE.md)** - MCP tools architecture and handler structure, explaining how tools are organized and how `TOOL_DEFINITION` works
43
43
  - **[CONNECTION_ISOLATION.md](CONNECTION_ISOLATION.md)** - Connection isolation architecture, explaining how per-session connection isolation prevents data mixing between clients (version 1.1.10+)
44
+ - **[HANDLER_EXPORTER.md](HANDLER_EXPORTER.md)** - Legacy handler exporter usage
44
45
 
45
46
  ## Related Documentation
46
47
 
@@ -0,0 +1,122 @@
1
+ # GitHub Configuration
2
+
3
+ This directory contains GitHub-specific configuration files.
4
+
5
+ ## Workflows
6
+
7
+ ### 🚀 Release Workflow (`workflows/release.yml`)
8
+
9
+ Automatically creates GitHub releases when you push a version tag.
10
+
11
+ **Trigger:** Push tags matching `v*.*.*` (e.g., `v1.1.0`, `v2.0.0`)
12
+
13
+ **What it does:**
14
+ 1. Checks out code with submodules
15
+ 2. Sets up Node.js 18
16
+ 3. Installs dependencies
17
+ 4. Builds the project
18
+ 5. Runs tests (non-blocking)
19
+ 6. Creates npm package (.tgz)
20
+ 7. Creates GitHub Release
21
+ 8. Uploads package as release asset
22
+ 9. Generates release notes
23
+
24
+ **Usage:**
25
+ ```bash
26
+ # Bump version
27
+ npm version patch # 1.1.0 -> 1.1.1
28
+
29
+ # Create and push tag
30
+ git tag v1.1.1
31
+ git push origin main
32
+ git push origin v1.1.1
33
+ ```
34
+
35
+ ### ✅ CI Workflow (`workflows/ci.yml`)
36
+
37
+ Runs continuous integration tests on every push and PR.
38
+
39
+ **Trigger:**
40
+ - Push to `main` or `develop` branches
41
+ - Pull requests to `main` or `develop`
42
+
43
+ **What it does:**
44
+ 1. Tests on multiple OS (Ubuntu, macOS, Windows)
45
+ 2. Tests on multiple Node.js versions (18, 20)
46
+ 3. Builds and tests the project
47
+ 4. Verifies package creation
48
+ 5. Tests package installation
49
+
50
+ ### 📦 Publish to npm (`workflows/publish-npm.yml`)
51
+
52
+ Optional workflow for publishing to npm registry.
53
+
54
+ **Trigger:** Manual (workflow_dispatch)
55
+
56
+ **Setup required:**
57
+ 1. Set `private: false` in package.json
58
+ 2. Add NPM_TOKEN to repository secrets
59
+ 3. Get token from https://www.npmjs.com/settings/[username]/tokens
60
+
61
+ ## Release Process
62
+
63
+ See [docs/deployment/RELEASE.md](../docs/deployment/RELEASE.md) for detailed release instructions.
64
+
65
+ ### Quick Release
66
+
67
+ ```bash
68
+ # 1. Bump version
69
+ npm version minor # or patch, major
70
+
71
+ # 2. Commit
72
+ git add package.json package-lock.json
73
+ git commit -m "chore: release v1.2.0"
74
+
75
+ # 3. Tag and push
76
+ git tag v1.2.0
77
+ git push origin main --tags
78
+ ```
79
+
80
+ ## Secrets Configuration
81
+
82
+ Currently no secrets are required for basic releases.
83
+
84
+ **Optional (for npm publishing):**
85
+ - `NPM_TOKEN` - npm authentication token
86
+
87
+ **Built-in secrets used:**
88
+ - `GITHUB_TOKEN` - Automatically provided by GitHub Actions
89
+
90
+ ## Permissions
91
+
92
+ Workflows use these permissions:
93
+ - `contents: write` - Required for creating releases
94
+ - `GITHUB_TOKEN` - Automatically scoped by GitHub
95
+
96
+ ## Troubleshooting
97
+
98
+ **Release workflow didn't trigger:**
99
+ - Ensure tag starts with `v` (e.g., `v1.0.0`)
100
+ - Check tag was pushed: `git push origin v1.0.0`
101
+ - Verify workflow file is in `main` branch
102
+
103
+ **Release failed:**
104
+ - Check GitHub Actions logs
105
+ - Common issues:
106
+ - Build errors
107
+ - Test failures (should be non-blocking)
108
+ - Permission errors (check GITHUB_TOKEN)
109
+
110
+ **CI tests failing:**
111
+ - Check specific OS/Node.js version matrix
112
+ - Tests are allowed to fail without blocking
113
+ - Package creation must succeed
114
+
115
+ ## Workflow Status Badges
116
+
117
+ Add to README.md:
118
+
119
+ ```markdown
120
+ [![Release](https://github.com/fr0ster/mcp-abap-adt/actions/workflows/release.yml/badge.svg)](https://github.com/fr0ster/mcp-abap-adt/actions/workflows/release.yml)
121
+ [![CI](https://github.com/fr0ster/mcp-abap-adt/actions/workflows/ci.yml/badge.svg)](https://github.com/fr0ster/mcp-abap-adt/actions/workflows/ci.yml)
122
+ ```
@@ -52,5 +52,5 @@ See [RELEASE.md](./RELEASE.md) for detailed instructions.
52
52
  ## Related Documentation
53
53
 
54
54
  - [Installation Guide](../installation/INSTALLATION.md) - Installation for development
55
- - [CI/CD Configuration](../../.github/README.md) - GitHub Actions workflows
55
+ - [CI/CD Configuration](GITHUB_ACTIONS.md) - GitHub Actions workflows
56
56
  - [User Guide](../user-guide/README.md) - Using the server
@@ -5,11 +5,20 @@ This directory contains documentation for developers: testing guides, developmen
5
5
  ## Files
6
6
 
7
7
  - **[ASSISTANT_GUIDELINES.md](ASSISTANT_GUIDELINES.md)** - Guidelines for AI assistants working on this project
8
+ - **[ISSUE_ROADMAP_SYSTEM.md](ISSUE_ROADMAP_SYSTEM.md)** - Roadmap organization and issue tracking workflow
9
+ - **[TEST_CONFIG_YAML_GUIDE.md](TEST_CONFIG_YAML_GUIDE.md)** - Test configuration reference
8
10
  - **[TEST_SYSTEM_SETUP.md](TEST_SYSTEM_SETUP.md)** - Guide for setting up test systems
9
- - **[SYNC_OPTIONAL_PARAMS.md](SYNC_OPTIONAL_PARAMS.md)** - Tool to sync optional parameters from adt-clients TypeScript interfaces
10
- - **[DetectObjectTypeListTools.md](DetectObjectTypeListTools.md)** - Documentation for object type detection tools
11
- - **[HANDLERS_COVERAGE.md](HANDLERS_COVERAGE.md)** - Analysis of low-level handlers coverage and implementation status
12
- - **[TEST_LOGGING_ROADMAP.md](roadmaps/TEST_LOGGING_ROADMAP.md)** - Test logging storage and rotation policy
11
+
12
+ ## Roadmaps
13
+
14
+ - `roadmaps/HANDLER_BUILD_ERRORS_ROADMAP.md`
15
+ - `roadmaps/INFRASTRUCTURE_HANDLERS.md`
16
+ - `roadmaps/MCP_SERVER_REFACTORING_ROADMAP.md`
17
+ - `roadmaps/TEST_LOGGING_ROADMAP.md`
18
+ - `roadmaps/TEST_REFACTORING_ROADMAP.md`
19
+ - `roadmaps/TODO_ROADMAP.md`
20
+ - `roadmaps/USAGE_DOCUMENTATION_ROADMAP.md`
21
+ - `roadmaps/parameter_passing_unit_tests_roadmap.md`
13
22
 
14
23
  ## Test Documentation
15
24
 
@@ -51,7 +51,7 @@ After installation, you'll have access to:
51
51
  **For JWT authentication with service keys**, install the connection package separately:
52
52
  ```bash
53
53
  npm install -g @mcp-abap-adt/connection
54
- sap-abap-auth auth -k path/to/service-key.json
54
+ mcp-auth auth -k path/to/service-key.json
55
55
  ```
56
56
 
57
57
  **Get help on available options:**
@@ -80,7 +80,7 @@ For JWT authentication (SAP BTP) with service key:
80
80
  npm install -g @mcp-abap-adt/connection
81
81
 
82
82
  # Generate .env file from service key JSON
83
- sap-abap-auth auth -k path/to/service-key.json
83
+ mcp-auth auth -k path/to/service-key.json
84
84
 
85
85
  # This automatically creates/updates .env file with JWT tokens
86
86
  ```
@@ -88,7 +88,7 @@ sap-abap-auth auth -k path/to/service-key.json
88
88
  **Run the server:**
89
89
  ```bash
90
90
  # Default HTTP mode (uses auth-broker by default, even if .env exists)
91
- # Note: auth-broker is only available for HTTP/streamable-http transport
91
+ # Note: auth-broker is available for stdio/SSE via `--mcp=<destination>` and for HTTP via destination headers
92
92
  mcp-abap-adt
93
93
 
94
94
  # Force use of auth-broker (service keys), ignore .env file
@@ -282,7 +282,7 @@ mcp-abap-adt --transport=sse --sse-port=3001
282
282
  **For JWT authentication with service keys**, install separately:
283
283
  ```bash
284
284
  npm install -g @mcp-abap-adt/connection
285
- sap-abap-auth auth -k path/to/service-key.json
285
+ mcp-auth auth -k path/to/service-key.json
286
286
  ```
287
287
 
288
288
  #### Local Installation (Project-specific)
@@ -5,12 +5,14 @@ This directory contains installation guides for the MCP ABAP ADT Server.
5
5
  ## Files
6
6
 
7
7
  - **[INSTALLATION.md](INSTALLATION.md)** - Main installation guide with platform-specific quick links
8
+ - **[CLINE_CONFIGURATION.md](CLINE_CONFIGURATION.md)** - Cline client configuration examples
8
9
  - **[platforms/](platforms/)** - Platform-specific installation guides
9
10
  - `INSTALL_WINDOWS.md` - Windows installation using PowerShell and winget
10
11
  - `INSTALL_MACOS.md` - macOS installation using Homebrew
11
12
  - `INSTALL_LINUX.md` - Linux installation using package managers
13
+ - **[examples/README.md](examples/README.md)** - Example client configurations
14
+ - `SERVICE_KEY_SETUP.md` - Service key setup for destination-based auth
12
15
 
13
16
  ## Quick Start
14
17
 
15
18
  See the main [INSTALLATION.md](INSTALLATION.md) file for a complete overview and quick start instructions for your platform.
16
-
@@ -82,7 +82,7 @@ Use `cline-http-service-key-npx-config.json` for destination-based authenticatio
82
82
  **Note**:
83
83
  - The `--auth-broker` flag forces use of auth-broker (service keys), ignoring any `.env` file
84
84
  - By default (without `--env` or `--auth-broker`), the server uses `.env` from current directory if it exists, otherwise uses auth-broker
85
- - Auth-broker is only available for HTTP/streamable-http transport (not for stdio/SSE)
85
+ - Auth-broker is available for stdio/SSE via `--mcp=<destination>` and for HTTP via destination headers
86
86
 
87
87
  3. **Use config** with destination header:
88
88
  ```json
@@ -0,0 +1,61 @@
1
+ # Authentication & Destinations
2
+
3
+ The server supports multiple auth flows. The primary (and recommended) model is **destination-based authentication** using service keys.
4
+
5
+ ## Destinations
6
+
7
+ A **destination** is simply the **filename** of a service key stored in the service-keys directory.
8
+
9
+ - Put service keys here:
10
+ - Linux/macOS: `~/.config/mcp-abap-adt/service-keys`
11
+ - Windows: `%APPDATA%\mcp-abap-adt\service-keys`
12
+ - The filename (without extension) becomes the destination name.
13
+
14
+ Example:
15
+
16
+ ```
17
+ ~/.config/mcp-abap-adt/service-keys/TRIAL.json
18
+ ```
19
+
20
+ Use it like this:
21
+
22
+ ```bash
23
+ mcp-abap-adt --transport=stdio --mcp=TRIAL
24
+ ```
25
+
26
+ The server will load the matching service key and manage tokens automatically.
27
+
28
+ ## .env Authentication
29
+
30
+ You can also provide credentials via `.env`:
31
+
32
+ - In the current directory: `.env`
33
+ - Or explicitly: `--env /path/to/.env`
34
+
35
+ This is useful for quick local testing or when you do not want to store service keys.
36
+
37
+ ### Generate .env from Service Key
38
+
39
+ ```bash
40
+ npm install -g @mcp-abap-adt/connection
41
+ mcp-auth auth -k path/to/service-key.json
42
+ ```
43
+
44
+ This writes JWT details to `.env`.
45
+
46
+ **Claude recommendation:** for Claude, prefer service keys in `service-keys` and use `--mcp=<destination>` instead of manual tokens.
47
+
48
+ ## HTTP/SSE Headers
49
+
50
+ For HTTP/SSE transports, you can supply auth per request using headers:
51
+
52
+ - JWT: `x-sap-url`, `x-sap-client`, `x-sap-auth-type=jwt`, `x-sap-jwt-token`
53
+ - Basic: `x-sap-url`, `x-sap-client`, `x-sap-login`, `x-sap-password`
54
+
55
+ Header-based auth is useful for proxy setups or dynamic routing.
56
+
57
+ ## Related Docs
58
+
59
+ - Client setup: `docs/user-guide/CLIENT_CONFIGURATION.md`
60
+ - Service key example: `docs/installation/examples/SERVICE_KEY_SETUP.md`
61
+ - Server CLI options: `docs/user-guide/CLI_OPTIONS.md`
@@ -2,6 +2,9 @@
2
2
 
3
3
  This guide explains how to configure MCP clients to connect to the `mcp-abap-adt` server.
4
4
 
5
+ If you prefer not to edit JSON/TOML by hand, use the configurator CLI:
6
+ `@mcp-abap-adt/configurator` (repo: [`mcp-abap-adt-conf`](https://github.com/fr0ster/mcp-abap-adt-conf), docs: [CLIENT_INSTALLERS.md](https://github.com/fr0ster/mcp-abap-adt-conf/tree/main/docs/CLIENT_INSTALLERS.md)).
7
+
5
8
  ## Overview
6
9
 
7
10
  The `mcp-abap-adt` server supports multiple transport modes:
@@ -80,7 +83,7 @@ The server processes the following HTTP headers (as checked in `applyAuthHeaders
80
83
  - For **JWT authentication**: `x-sap-url`, `x-sap-auth-type`, and `x-sap-jwt-token` are required. `x-sap-refresh-token` is optional for automatic token refresh.
81
84
  - For **basic authentication**: `x-sap-url`, `x-sap-auth-type`, `x-sap-login`, and `x-sap-password` are required.
82
85
  - For **destination-based authentication**: Use `x-sap-destination` or `x-mcp-destination` header. URL is automatically derived from the service key, so `x-sap-url` is not required (and will be ignored if provided). Service keys must be stored in platform-specific locations (see [Destination-Based Authentication](#destination-based-authentication) section).
83
- - For automatic token refresh, you only need `x-sap-refresh-token`. Client ID and Client Secret are **not needed** for refresh - they are only required for initial token generation via `sap-abap-auth` CLI tool (part of `@mcp-abap-adt/connection` package) or service keys.
86
+ - For automatic token refresh, you only need `x-sap-refresh-token`. Client ID and Client Secret are **not needed** for refresh - they are only required for initial token generation via `mcp-auth` CLI tool (part of `@mcp-abap-adt/connection` package) or service keys.
84
87
 
85
88
 
86
89
  ## Basic Authentication
@@ -572,7 +575,7 @@ The server supports automatic token refresh when `x-sap-refresh-token` is provid
572
575
 
573
576
  The connection will automatically refresh expired tokens when a 401/403 error is detected. The refresh happens transparently without requiring manual intervention.
574
577
 
575
- **Note:** For automatic token refresh, you only need the refresh token. Client ID and Client Secret are **not needed** for refresh - they are only required for initial token generation via `sap-abap-auth` CLI tool (part of `@mcp-abap-adt/connection` package).
578
+ **Note:** For automatic token refresh, you only need the refresh token. Client ID and Client Secret are **not needed** for refresh - they are only required for initial token generation via `mcp-auth` CLI tool (part of `@mcp-abap-adt/connection` package).
576
579
 
577
580
  ## Examples
578
581
 
@@ -57,11 +57,16 @@ See [Installation Guide](../installation/INSTALLATION.md) for full instructions.
57
57
 
58
58
  - **[CLIENT_CONFIGURATION.md](CLIENT_CONFIGURATION.md)** - Guide for configuring MCP clients to connect to the server, including HTTP header configuration for dynamic SAP connection setup
59
59
  - **[AVAILABLE_TOOLS.md](AVAILABLE_TOOLS.md)** - Complete list of all available MCP tools with descriptions and usage examples (auto-generated from handler definitions)
60
+ - **[AUTHENTICATION.md](AUTHENTICATION.md)** - Destination-based auth, service key locations, and header-based auth
61
+ - **[TERMINOLOGY.md](TERMINOLOGY.md)** - Project-specific terminology
62
+ - **[HANDLERS_MANAGEMENT.md](HANDLERS_MANAGEMENT.md)** - Enable/disable handler groups and exposure
60
63
 
61
64
  ## Getting Started
62
65
 
63
66
  1. **Install the server**: Choose package or source installation above
64
- 2. **Configure your client**: See [CLIENT_CONFIGURATION.md](CLIENT_CONFIGURATION.md) for setup instructions
67
+ 2. **Configure your client**:
68
+ - **Auto (recommended)**: Use the configurator (`@mcp-abap-adt/configurator`, repo: `mcp-abap-adt-conf`)
69
+ - **Manual**: See [CLIENT_CONFIGURATION.md](CLIENT_CONFIGURATION.md) for JSON/TOML examples
65
70
  3. **Explore available tools**: See [AVAILABLE_TOOLS.md](AVAILABLE_TOOLS.md) for a complete list of tools you can use
66
71
 
67
72
  ## Package Tree Output
@@ -0,0 +1,38 @@
1
+ # Terminology
2
+
3
+ This project uses a few terms in specific ways. If a term below is used differently in other tools, prefer the definitions here.
4
+
5
+ ## Destination
6
+
7
+ A **destination** is the **filename** of a service key stored in the local `service-keys` directory. Example:
8
+
9
+ ```
10
+ ~/.config/mcp-abap-adt/service-keys/TRIAL.json
11
+ ```
12
+
13
+ Use it with `--mcp=TRIAL` or the `x-mcp-destination` header.
14
+
15
+ ## Service Key
16
+
17
+ A JSON file downloaded from SAP BTP (XSUAA credentials). The filename becomes the destination name. The server reads it to obtain service URL and OAuth details.
18
+
19
+ ## Auth Broker
20
+
21
+ The internal component that loads service keys, manages sessions/tokens, and provides connection configs. When `--mcp` is used, auth-broker is enabled automatically.
22
+
23
+ ## Session Store
24
+
25
+ Storage for OAuth sessions/tokens created by auth-broker. By default sessions are in-memory unless `--unsafe` or `--auth-broker-path` is used.
26
+
27
+ ## Transport
28
+
29
+ The protocol used between MCP client and server:
30
+
31
+ - `stdio` — local process stdio
32
+ - `http` / `streamableHttp` — HTTP POST JSON endpoint
33
+ - `sse` — server-sent events + POST messages
34
+
35
+ ## Headers vs .env
36
+
37
+ For HTTP/SSE, SAP connection can be provided per request using headers (e.g., `x-sap-url`, `x-sap-auth-type`, `x-sap-jwt-token`). For stdio, use `.env` or `--mcp` destinations.
38
+
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@mcp-abap-adt/core",
3
3
  "mcpName": "io.github.fr0ster/mcp-abap-adt",
4
- "version": "2.2.2",
4
+ "version": "2.2.4",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
7
7
  "exports": {
@@ -87,10 +87,17 @@
87
87
  "sap",
88
88
  "adt",
89
89
  "mcp",
90
- "model-context-protocol"
90
+ "model-context-protocol",
91
+ "mcp-server",
92
+ "abap-cloud",
93
+ "sap-btp",
94
+ "xsuaa",
95
+ "jwt-auth",
96
+ "service-key",
97
+ "crud"
91
98
  ],
92
99
  "author": "Oleksii Kyslytsia <oleksij.kyslytsja@gmail.com>",
93
- "description": "Embedded ABAP ADT MCP server tailored for the Cloud LLM Hub stack",
100
+ "description": "SAP ABAP ADT MCP server with full CRUD for on-prem and ABAP Cloud (BTP), plus JWT/XSUAA and service-key destination auth",
94
101
  "license": "MIT",
95
102
  "repository": {
96
103
  "type": "git",
@@ -1,6 +0,0 @@
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
@@ -1 +0,0 @@
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"}