@mcp-abap-adt/core 2.5.1 → 2.5.2

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 (306) hide show
  1. package/CHANGELOG.md +22 -0
  2. package/README.md +3 -0
  3. package/dist/handlers/bdef/handleCreateBehaviorDefinition.d.ts +50 -0
  4. package/dist/handlers/bdef/handleCreateBehaviorDefinition.d.ts.map +1 -0
  5. package/dist/handlers/bdef/handleCreateBehaviorDefinition.js +101 -0
  6. package/dist/handlers/bdef/handleGetBdef.d.ts +54 -0
  7. package/dist/handlers/bdef/handleGetBdef.d.ts.map +1 -0
  8. package/dist/handlers/bdef/handleGetBdef.js +89 -0
  9. package/dist/handlers/bdef/handleUpdateBehaviorDefinition.d.ts +37 -0
  10. package/dist/handlers/bdef/handleUpdateBehaviorDefinition.d.ts.map +1 -0
  11. package/dist/handlers/bdef/handleUpdateBehaviorDefinition.js +85 -0
  12. package/dist/handlers/behavior_definition/readonly/handleGetBdef.d.ts +54 -0
  13. package/dist/handlers/behavior_definition/readonly/handleGetBdef.d.ts.map +1 -0
  14. package/dist/handlers/behavior_definition/readonly/handleGetBdef.js +89 -0
  15. package/dist/handlers/class/handleCheckClass.d.ts +59 -0
  16. package/dist/handlers/class/handleCheckClass.d.ts.map +1 -0
  17. package/dist/handlers/class/handleCheckClass.js +138 -0
  18. package/dist/handlers/class/handleCreateClass.d.ts +80 -0
  19. package/dist/handlers/class/handleCreateClass.d.ts.map +1 -0
  20. package/dist/handlers/class/handleCreateClass.js +192 -0
  21. package/dist/handlers/class/handleGetClass.d.ts +16 -0
  22. package/dist/handlers/class/handleGetClass.d.ts.map +1 -0
  23. package/dist/handlers/class/handleGetClass.js +159 -0
  24. package/dist/handlers/class/handleUpdateClassSource.d.ts +44 -0
  25. package/dist/handlers/class/handleUpdateClassSource.d.ts.map +1 -0
  26. package/dist/handlers/class/handleUpdateClassSource.js +131 -0
  27. package/dist/handlers/class/handleValidateClass.d.ts +62 -0
  28. package/dist/handlers/class/handleValidateClass.d.ts.map +1 -0
  29. package/dist/handlers/class/handleValidateClass.js +136 -0
  30. package/dist/handlers/class/readonly/handleGetClass.d.ts +20 -0
  31. package/dist/handlers/class/readonly/handleGetClass.d.ts.map +1 -0
  32. package/dist/handlers/class/readonly/handleGetClass.js +159 -0
  33. package/dist/handlers/common/handleActivateObject.d.ts +62 -0
  34. package/dist/handlers/common/handleActivateObject.d.ts.map +1 -0
  35. package/dist/handlers/common/handleActivateObject.js +137 -0
  36. package/dist/handlers/common/handleCheckObject.d.ts +63 -0
  37. package/dist/handlers/common/handleCheckObject.d.ts.map +1 -0
  38. package/dist/handlers/common/handleCheckObject.js +197 -0
  39. package/dist/handlers/common/handleDeleteObject.d.ts +46 -0
  40. package/dist/handlers/common/handleDeleteObject.d.ts.map +1 -0
  41. package/dist/handlers/common/handleDeleteObject.js +176 -0
  42. package/dist/handlers/common/handleLockObject.d.ts +57 -0
  43. package/dist/handlers/common/handleLockObject.d.ts.map +1 -0
  44. package/dist/handlers/common/handleLockObject.js +195 -0
  45. package/dist/handlers/common/handleUnlockObject.d.ts +61 -0
  46. package/dist/handlers/common/handleUnlockObject.d.ts.map +1 -0
  47. package/dist/handlers/common/handleUnlockObject.js +178 -0
  48. package/dist/handlers/common/handleValidateObject.d.ts +58 -0
  49. package/dist/handlers/common/handleValidateObject.d.ts.map +1 -0
  50. package/dist/handlers/common/handleValidateObject.js +177 -0
  51. package/dist/handlers/data_element/handleCreateDataElement.d.ts +83 -0
  52. package/dist/handlers/data_element/handleCreateDataElement.d.ts.map +1 -0
  53. package/dist/handlers/data_element/handleCreateDataElement.js +180 -0
  54. package/dist/handlers/data_element/handleGetDataElement.d.ts +29 -0
  55. package/dist/handlers/data_element/handleGetDataElement.d.ts.map +1 -0
  56. package/dist/handlers/data_element/handleGetDataElement.js +173 -0
  57. package/dist/handlers/data_element/handleUpdateDataElement.d.ts +131 -0
  58. package/dist/handlers/data_element/handleUpdateDataElement.d.ts.map +1 -0
  59. package/dist/handlers/data_element/handleUpdateDataElement.js +258 -0
  60. package/dist/handlers/data_element/readonly/handleGetDataElement.d.ts +33 -0
  61. package/dist/handlers/data_element/readonly/handleGetDataElement.d.ts.map +1 -0
  62. package/dist/handlers/data_element/readonly/handleGetDataElement.js +173 -0
  63. package/dist/handlers/ddlx/handleCreateMetadataExtension.d.ts +41 -0
  64. package/dist/handlers/ddlx/handleCreateMetadataExtension.d.ts.map +1 -0
  65. package/dist/handlers/ddlx/handleCreateMetadataExtension.js +92 -0
  66. package/dist/handlers/ddlx/handleUpdateMetadataExtension.d.ts +37 -0
  67. package/dist/handlers/ddlx/handleUpdateMetadataExtension.d.ts.map +1 -0
  68. package/dist/handlers/ddlx/handleUpdateMetadataExtension.js +81 -0
  69. package/dist/handlers/domain/handleCreateDomain.d.ts +104 -0
  70. package/dist/handlers/domain/handleCreateDomain.d.ts.map +1 -0
  71. package/dist/handlers/domain/handleCreateDomain.js +187 -0
  72. package/dist/handlers/domain/handleGetDomain.d.ts +19 -0
  73. package/dist/handlers/domain/handleGetDomain.d.ts.map +1 -0
  74. package/dist/handlers/domain/handleGetDomain.js +138 -0
  75. package/dist/handlers/domain/handleUpdateDomain.d.ts +99 -0
  76. package/dist/handlers/domain/handleUpdateDomain.d.ts.map +1 -0
  77. package/dist/handlers/domain/handleUpdateDomain.js +204 -0
  78. package/dist/handlers/domain/readonly/handleGetDomain.d.ts +23 -0
  79. package/dist/handlers/domain/readonly/handleGetDomain.d.ts.map +1 -0
  80. package/dist/handlers/domain/readonly/handleGetDomain.js +138 -0
  81. package/dist/handlers/enhancement/handleGetEnhancementImpl.d.ts +69 -0
  82. package/dist/handlers/enhancement/handleGetEnhancementImpl.d.ts.map +1 -0
  83. package/dist/handlers/enhancement/handleGetEnhancementImpl.js +171 -0
  84. package/dist/handlers/enhancement/handleGetEnhancementSpot.d.ts +53 -0
  85. package/dist/handlers/enhancement/handleGetEnhancementSpot.d.ts.map +1 -0
  86. package/dist/handlers/enhancement/handleGetEnhancementSpot.js +153 -0
  87. package/dist/handlers/enhancement/handleGetEnhancements.d.ts +64 -0
  88. package/dist/handlers/enhancement/handleGetEnhancements.d.ts.map +1 -0
  89. package/dist/handlers/enhancement/handleGetEnhancements.js +599 -0
  90. package/dist/handlers/function/handleCheckFunctionModule.d.ts +59 -0
  91. package/dist/handlers/function/handleCheckFunctionModule.d.ts.map +1 -0
  92. package/dist/handlers/function/handleCheckFunctionModule.js +140 -0
  93. package/dist/handlers/function/handleCreateFunctionGroup.d.ts +52 -0
  94. package/dist/handlers/function/handleCreateFunctionGroup.d.ts.map +1 -0
  95. package/dist/handlers/function/handleCreateFunctionGroup.js +114 -0
  96. package/dist/handlers/function/handleCreateFunctionModule.d.ts +57 -0
  97. package/dist/handlers/function/handleCreateFunctionModule.d.ts.map +1 -0
  98. package/dist/handlers/function/handleCreateFunctionModule.js +137 -0
  99. package/dist/handlers/function/handleGetFunction.d.ts +17 -0
  100. package/dist/handlers/function/handleGetFunction.d.ts.map +1 -0
  101. package/dist/handlers/function/handleGetFunction.js +172 -0
  102. package/dist/handlers/function/handleGetFunctionGroup.d.ts +16 -0
  103. package/dist/handlers/function/handleGetFunctionGroup.d.ts.map +1 -0
  104. package/dist/handlers/function/handleGetFunctionGroup.js +132 -0
  105. package/dist/handlers/function/handleUpdateFunctionModuleSource.d.ts +54 -0
  106. package/dist/handlers/function/handleUpdateFunctionModuleSource.d.ts.map +1 -0
  107. package/dist/handlers/function/handleUpdateFunctionModuleSource.js +108 -0
  108. package/dist/handlers/function/handleValidateFunctionModule.d.ts +58 -0
  109. package/dist/handlers/function/handleValidateFunctionModule.d.ts.map +1 -0
  110. package/dist/handlers/function/handleValidateFunctionModule.js +132 -0
  111. package/dist/handlers/function/readonly/handleGetFunctionGroup.d.ts +16 -0
  112. package/dist/handlers/function/readonly/handleGetFunctionGroup.d.ts.map +1 -0
  113. package/dist/handlers/function/readonly/handleGetFunctionGroup.js +132 -0
  114. package/dist/handlers/include/handleGetInclude.d.ts +16 -0
  115. package/dist/handlers/include/handleGetInclude.d.ts.map +1 -0
  116. package/dist/handlers/include/handleGetInclude.js +81 -0
  117. package/dist/handlers/include/handleGetIncludesList.d.ts +36 -0
  118. package/dist/handlers/include/handleGetIncludesList.d.ts.map +1 -0
  119. package/dist/handlers/include/handleGetIncludesList.js +223 -0
  120. package/dist/handlers/interface/handleCreateInterface.d.ts +64 -0
  121. package/dist/handlers/interface/handleCreateInterface.d.ts.map +1 -0
  122. package/dist/handlers/interface/handleCreateInterface.js +175 -0
  123. package/dist/handlers/interface/handleGetInterface.d.ts +40 -0
  124. package/dist/handlers/interface/handleGetInterface.d.ts.map +1 -0
  125. package/dist/handlers/interface/handleGetInterface.js +134 -0
  126. package/dist/handlers/interface/handleUpdateInterfaceSource.d.ts +48 -0
  127. package/dist/handlers/interface/handleUpdateInterfaceSource.d.ts.map +1 -0
  128. package/dist/handlers/interface/handleUpdateInterfaceSource.js +127 -0
  129. package/dist/handlers/interface/readonly/handleGetInterface.d.ts +44 -0
  130. package/dist/handlers/interface/readonly/handleGetInterface.d.ts.map +1 -0
  131. package/dist/handlers/interface/readonly/handleGetInterface.js +134 -0
  132. package/dist/handlers/package/handleCreatePackage.d.ts +38 -0
  133. package/dist/handlers/package/handleCreatePackage.d.ts.map +1 -0
  134. package/dist/handlers/package/handleCreatePackage.js +127 -0
  135. package/dist/handlers/package/handleGetPackage.d.ts +16 -0
  136. package/dist/handlers/package/handleGetPackage.d.ts.map +1 -0
  137. package/dist/handlers/package/handleGetPackage.js +94 -0
  138. package/dist/handlers/package/readonly/handleGetPackage.d.ts +21 -0
  139. package/dist/handlers/package/readonly/handleGetPackage.d.ts.map +1 -0
  140. package/dist/handlers/package/readonly/handleGetPackage.js +94 -0
  141. package/dist/handlers/program/handleCreateProgram.d.ts +73 -0
  142. package/dist/handlers/program/handleCreateProgram.d.ts.map +1 -0
  143. package/dist/handlers/program/handleCreateProgram.js +220 -0
  144. package/dist/handlers/program/handleGetProgFullCode.d.ts +67 -0
  145. package/dist/handlers/program/handleGetProgFullCode.d.ts.map +1 -0
  146. package/dist/handlers/program/handleGetProgFullCode.js +249 -0
  147. package/dist/handlers/program/handleGetProgram.d.ts +16 -0
  148. package/dist/handlers/program/handleGetProgram.d.ts.map +1 -0
  149. package/dist/handlers/program/handleGetProgram.js +71 -0
  150. package/dist/handlers/program/handleUpdateProgramSource.d.ts +44 -0
  151. package/dist/handlers/program/handleUpdateProgramSource.d.ts.map +1 -0
  152. package/dist/handlers/program/handleUpdateProgramSource.js +121 -0
  153. package/dist/handlers/program/readonly/handleGetProgram.d.ts +20 -0
  154. package/dist/handlers/program/readonly/handleGetProgram.d.ts.map +1 -0
  155. package/dist/handlers/program/readonly/handleGetProgram.js +71 -0
  156. package/dist/handlers/search/handleGetObjectsByType.d.ts +42 -0
  157. package/dist/handlers/search/handleGetObjectsByType.d.ts.map +1 -0
  158. package/dist/handlers/search/handleGetObjectsByType.js +166 -0
  159. package/dist/handlers/search/handleGetObjectsList.d.ts +46 -0
  160. package/dist/handlers/search/handleGetObjectsList.d.ts.map +1 -0
  161. package/dist/handlers/search/handleGetObjectsList.js +145 -0
  162. package/dist/handlers/search/handleSearchObject.d.ts +28 -0
  163. package/dist/handlers/search/handleSearchObject.d.ts.map +1 -0
  164. package/dist/handlers/search/handleSearchObject.js +119 -0
  165. package/dist/handlers/service_definition/readonly/handleGetServiceDefinition.d.ts +17 -0
  166. package/dist/handlers/service_definition/readonly/handleGetServiceDefinition.d.ts.map +1 -0
  167. package/dist/handlers/service_definition/readonly/handleGetServiceDefinition.js +136 -0
  168. package/dist/handlers/structure/handleCreateStructure.d.ts +107 -0
  169. package/dist/handlers/structure/handleCreateStructure.d.ts.map +1 -0
  170. package/dist/handlers/structure/handleCreateStructure.js +184 -0
  171. package/dist/handlers/structure/handleGetStructure.d.ts +16 -0
  172. package/dist/handlers/structure/handleGetStructure.d.ts.map +1 -0
  173. package/dist/handlers/structure/handleGetStructure.js +139 -0
  174. package/dist/handlers/structure/readonly/handleGetStructure.d.ts +16 -0
  175. package/dist/handlers/structure/readonly/handleGetStructure.d.ts.map +1 -0
  176. package/dist/handlers/structure/readonly/handleGetStructure.js +139 -0
  177. package/dist/handlers/system/handleDescribeByList.d.ts +36 -0
  178. package/dist/handlers/system/handleDescribeByList.d.ts.map +1 -0
  179. package/dist/handlers/system/handleDescribeByList.js +121 -0
  180. package/dist/handlers/system/handleGetAbapAST.d.ts +26 -0
  181. package/dist/handlers/system/handleGetAbapAST.d.ts.map +1 -0
  182. package/dist/handlers/system/handleGetAbapAST.js +172 -0
  183. package/dist/handlers/system/handleGetAbapSemanticAnalysis.d.ts +26 -0
  184. package/dist/handlers/system/handleGetAbapSemanticAnalysis.d.ts.map +1 -0
  185. package/dist/handlers/system/handleGetAbapSemanticAnalysis.js +353 -0
  186. package/dist/handlers/system/handleGetAbapSystemSymbols.d.ts +26 -0
  187. package/dist/handlers/system/handleGetAbapSystemSymbols.d.ts.map +1 -0
  188. package/dist/handlers/system/handleGetAbapSystemSymbols.js +574 -0
  189. package/dist/handlers/system/handleGetAllTypes.d.ts +22 -0
  190. package/dist/handlers/system/handleGetAllTypes.d.ts.map +1 -0
  191. package/dist/handlers/system/handleGetAllTypes.js +102 -0
  192. package/dist/handlers/system/handleGetInactiveObjects.d.ts +20 -0
  193. package/dist/handlers/system/handleGetInactiveObjects.d.ts.map +1 -0
  194. package/dist/handlers/system/handleGetInactiveObjects.js +41 -0
  195. package/dist/handlers/system/handleGetObjectInfo.d.ts +41 -0
  196. package/dist/handlers/system/handleGetObjectInfo.d.ts.map +1 -0
  197. package/dist/handlers/system/handleGetObjectInfo.js +210 -0
  198. package/dist/handlers/system/handleGetObjectNodeFromCache.d.ts +40 -0
  199. package/dist/handlers/system/handleGetObjectNodeFromCache.d.ts.map +1 -0
  200. package/dist/handlers/system/handleGetObjectNodeFromCache.js +70 -0
  201. package/dist/handlers/system/handleGetObjectStructure.d.ts +26 -0
  202. package/dist/handlers/system/handleGetObjectStructure.d.ts.map +1 -0
  203. package/dist/handlers/system/handleGetObjectStructure.js +103 -0
  204. package/dist/handlers/system/handleGetSession.d.ts +33 -0
  205. package/dist/handlers/system/handleGetSession.d.ts.map +1 -0
  206. package/dist/handlers/system/handleGetSession.js +63 -0
  207. package/dist/handlers/system/handleGetSqlQuery.d.ts +49 -0
  208. package/dist/handlers/system/handleGetSqlQuery.d.ts.map +1 -0
  209. package/dist/handlers/system/handleGetSqlQuery.js +176 -0
  210. package/dist/handlers/system/handleGetTransaction.d.ts +42 -0
  211. package/dist/handlers/system/handleGetTransaction.d.ts.map +1 -0
  212. package/dist/handlers/system/handleGetTransaction.js +91 -0
  213. package/dist/handlers/system/handleGetTypeInfo.d.ts +69 -0
  214. package/dist/handlers/system/handleGetTypeInfo.d.ts.map +1 -0
  215. package/dist/handlers/system/handleGetTypeInfo.js +169 -0
  216. package/dist/handlers/system/handleGetWhereUsed.d.ts +69 -0
  217. package/dist/handlers/system/handleGetWhereUsed.d.ts.map +1 -0
  218. package/dist/handlers/system/handleGetWhereUsed.js +405 -0
  219. package/dist/handlers/table/handleCheckTable.d.ts +55 -0
  220. package/dist/handlers/table/handleCheckTable.d.ts.map +1 -0
  221. package/dist/handlers/table/handleCheckTable.js +138 -0
  222. package/dist/handlers/table/handleCreateTable.d.ts +42 -0
  223. package/dist/handlers/table/handleCreateTable.d.ts.map +1 -0
  224. package/dist/handlers/table/handleCreateTable.js +118 -0
  225. package/dist/handlers/table/handleGetTable.d.ts +16 -0
  226. package/dist/handlers/table/handleGetTable.d.ts.map +1 -0
  227. package/dist/handlers/table/handleGetTable.js +140 -0
  228. package/dist/handlers/table/handleGetTableContents.d.ts +56 -0
  229. package/dist/handlers/table/handleGetTableContents.d.ts.map +1 -0
  230. package/dist/handlers/table/handleGetTableContents.js +387 -0
  231. package/dist/handlers/table/handleValidateTable.d.ts +53 -0
  232. package/dist/handlers/table/handleValidateTable.d.ts.map +1 -0
  233. package/dist/handlers/table/handleValidateTable.js +125 -0
  234. package/dist/handlers/table/readonly/handleGetTable.d.ts +20 -0
  235. package/dist/handlers/table/readonly/handleGetTable.d.ts.map +1 -0
  236. package/dist/handlers/table/readonly/handleGetTable.js +140 -0
  237. package/dist/handlers/transport/handleCreateTransport.d.ts +50 -0
  238. package/dist/handlers/transport/handleCreateTransport.d.ts.map +1 -0
  239. package/dist/handlers/transport/handleCreateTransport.js +151 -0
  240. package/dist/handlers/transport/handleGetTransport.d.ts +44 -0
  241. package/dist/handlers/transport/handleGetTransport.d.ts.map +1 -0
  242. package/dist/handlers/transport/handleGetTransport.js +183 -0
  243. package/dist/handlers/view/handleCreateView.d.ts +52 -0
  244. package/dist/handlers/view/handleCreateView.d.ts.map +1 -0
  245. package/dist/handlers/view/handleCreateView.js +139 -0
  246. package/dist/handlers/view/handleGetView.d.ts +26 -0
  247. package/dist/handlers/view/handleGetView.d.ts.map +1 -0
  248. package/dist/handlers/view/handleGetView.js +349 -0
  249. package/dist/handlers/view/handleUpdateViewSource.d.ts +44 -0
  250. package/dist/handlers/view/handleUpdateViewSource.d.ts.map +1 -0
  251. package/dist/handlers/view/handleUpdateViewSource.js +136 -0
  252. package/dist/handlers/view/readonly/handleGetView.d.ts +26 -0
  253. package/dist/handlers/view/readonly/handleGetView.d.ts.map +1 -0
  254. package/dist/handlers/view/readonly/handleGetView.js +349 -0
  255. package/dist/index.d.ts +94 -0
  256. package/dist/index.d.ts.map +1 -0
  257. package/dist/index.js +2453 -0
  258. package/dist/lib/activationUtils.d.ts +59 -0
  259. package/dist/lib/activationUtils.d.ts.map +1 -0
  260. package/dist/lib/activationUtils.js +168 -0
  261. package/dist/lib/config/ArgumentsParser.d.ts +2 -0
  262. package/dist/lib/config/ArgumentsParser.d.ts.map +1 -1
  263. package/dist/lib/config/ArgumentsParser.js +11 -1
  264. package/dist/lib/config/ArgumentsParser.js.map +1 -1
  265. package/dist/lib/config/IServerConfig.d.ts +2 -0
  266. package/dist/lib/config/IServerConfig.d.ts.map +1 -1
  267. package/dist/lib/config/ServerConfigManager.d.ts.map +1 -1
  268. package/dist/lib/config/ServerConfigManager.js +3 -0
  269. package/dist/lib/config/ServerConfigManager.js.map +1 -1
  270. package/dist/lib/getFullCodeCache.d.ts +3 -0
  271. package/dist/lib/getFullCodeCache.d.ts.map +1 -0
  272. package/dist/lib/getFullCodeCache.js +56 -0
  273. package/dist/lib/toolsRegistry.d.ts +13 -0
  274. package/dist/lib/toolsRegistry.d.ts.map +1 -0
  275. package/dist/lib/toolsRegistry.js +410 -0
  276. package/dist/server/AuthBrokerConfig.d.ts.map +1 -1
  277. package/dist/server/AuthBrokerConfig.js +14 -9
  278. package/dist/server/AuthBrokerConfig.js.map +1 -1
  279. package/dist/server/BaseMcpServer.d.ts.map +1 -1
  280. package/dist/server/BaseMcpServer.js +6 -0
  281. package/dist/server/BaseMcpServer.js.map +1 -1
  282. package/dist/server/launcher.js +4 -4
  283. package/dist/server/launcher.js.map +1 -1
  284. package/dist/utils/lockStateManager.d.ts +64 -0
  285. package/dist/utils/lockStateManager.d.ts.map +1 -0
  286. package/dist/utils/lockStateManager.js +173 -0
  287. package/dist/utils/lockStateManager.js.map +1 -0
  288. package/docs/user-guide/AUTHENTICATION.md +7 -0
  289. package/docs/user-guide/CLI_OPTIONS.md +14 -0
  290. package/package.json +2 -1
  291. package/dist/handlers/service_binding/high/handleListServiceBindings.d.ts +0 -44
  292. package/dist/handlers/service_binding/high/handleListServiceBindings.d.ts.map +0 -1
  293. package/dist/handlers/service_binding/high/handleListServiceBindings.js +0 -211
  294. package/dist/handlers/service_binding/high/handleListServiceBindings.js.map +0 -1
  295. package/dist/handlers/service_binding/high/serviceBindingXmlBuilder.d.ts +0 -11
  296. package/dist/handlers/service_binding/high/serviceBindingXmlBuilder.d.ts.map +0 -1
  297. package/dist/handlers/service_binding/high/serviceBindingXmlBuilder.js +0 -27
  298. package/dist/handlers/service_binding/high/serviceBindingXmlBuilder.js.map +0 -1
  299. package/dist/handlers/system/readonly/handleRuntimeGetDumpByUri.d.ts +0 -27
  300. package/dist/handlers/system/readonly/handleRuntimeGetDumpByUri.d.ts.map +0 -1
  301. package/dist/handlers/system/readonly/handleRuntimeGetDumpByUri.js +0 -47
  302. package/dist/handlers/system/readonly/handleRuntimeGetDumpByUri.js.map +0 -1
  303. package/dist/handlers/system/readonly/runtimeDumpReadCompat.d.ts +0 -8
  304. package/dist/handlers/system/readonly/runtimeDumpReadCompat.d.ts.map +0 -1
  305. package/dist/handlers/system/readonly/runtimeDumpReadCompat.js +0 -55
  306. package/dist/handlers/system/readonly/runtimeDumpReadCompat.js.map +0 -1
@@ -0,0 +1,119 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TOOL_DEFINITION = void 0;
4
+ exports.handleSearchObject = handleSearchObject;
5
+ const utils_1 = require("../../lib/utils");
6
+ const utils_2 = require("../../lib/utils");
7
+ const getObjectsListCache_1 = require("../../lib/getObjectsListCache");
8
+ exports.TOOL_DEFINITION = {
9
+ name: "SearchObject",
10
+ description: "Search for ABAP objects by name pattern. Parameters: object_name (with or without mask), object_type (optional), maxResults (optional). If object_type is specified, results are filtered by type.",
11
+ inputSchema: {
12
+ type: "object",
13
+ properties: {
14
+ object_name: { type: "string", description: "Object name or mask (e.g. 'MARA*')" },
15
+ object_type: { type: "string", description: "Optional ABAP object type (e.g. 'TABL', 'CLAS/OC')" },
16
+ maxResults: { type: "number", description: "Maximum number of results to return", default: 100 }
17
+ },
18
+ required: ["object_name"]
19
+ }
20
+ };
21
+ // --- New function for ADT error handling ---
22
+ function detectAdtSearchError(response) {
23
+ if (!response)
24
+ return null;
25
+ const status = response.status || response?.response?.status;
26
+ if (status !== 200) {
27
+ let msg = `ADT request failed (status ${status})`;
28
+ if (status === 406)
29
+ msg = "Invalid object_type (406 Not Acceptable)";
30
+ if (status === 400)
31
+ msg = "Bad request (400)";
32
+ return {
33
+ isError: true,
34
+ content: [{ type: "text", text: msg }]
35
+ };
36
+ }
37
+ return null;
38
+ }
39
+ async function handleSearchObject(args) {
40
+ try {
41
+ const { object_name, object_type, maxResults } = args;
42
+ if (!object_name) {
43
+ throw new utils_1.McpError(utils_1.ErrorCode.InvalidParams, 'object_name is required');
44
+ }
45
+ const query = object_name;
46
+ let url = `${await (0, utils_2.getBaseUrl)()}/sap/bc/adt/repository/informationsystem/search?operation=quickSearch&query=${(0, utils_2.encodeSapObjectName)(query)}&maxResults=${maxResults || 100}`;
47
+ // Append object_type as a filter when provided
48
+ if (object_type) {
49
+ url += `&objectType=${(0, utils_2.encodeSapObjectName)(object_type)}`;
50
+ }
51
+ const response = await (0, utils_2.makeAdtRequestWithTimeout)(url, 'GET', 'default');
52
+ // --- Error handling using new function ---
53
+ const adtError = detectAdtSearchError(response);
54
+ if (adtError)
55
+ return adtError;
56
+ let result = (0, utils_2.return_response)(response);
57
+ const { isError, ...rest } = result;
58
+ // Detect empty XML (<adtcore:objectReferences/>) results
59
+ const xmlText = rest.content?.[0]?.text || "";
60
+ if (!xmlText.includes("<adtcore:objectReference ")) {
61
+ // Return an empty result (not an error) when ADT finds nothing
62
+ return {
63
+ isError: false,
64
+ content: []
65
+ };
66
+ }
67
+ // Parse every <adtcore:objectReference .../> entry from the XML
68
+ const matches = Array.from(xmlText.matchAll(/<adtcore:objectReference\s+([^>]*)\/>/g));
69
+ if (!matches || matches.length === 0) {
70
+ // Return an empty result (not an error) when ADT finds nothing
71
+ return {
72
+ isError: false,
73
+ content: []
74
+ };
75
+ }
76
+ const resultsArr = [];
77
+ for (const m of matches) {
78
+ const attrs = m[1];
79
+ function extract(attr, def = "") {
80
+ const mm = attrs.match(new RegExp(attr + '="([^"]*)"'));
81
+ return mm ? mm[1] : def;
82
+ }
83
+ const name = extract("adtcore:name");
84
+ const type = extract("adtcore:type");
85
+ const description = extract("adtcore:description");
86
+ let pkgName = extract("adtcore:packageName");
87
+ // If packageName is missing, attempt to pull it from the raw XML via <adtcore:packageName>
88
+ if (!pkgName) {
89
+ const pkgMatch = xmlText.match(/<adtcore:packageName>([^<]*)<\/adtcore:packageName>/);
90
+ if (pkgMatch) {
91
+ pkgName = pkgMatch[1];
92
+ }
93
+ }
94
+ resultsArr.push({ name, type, description, packageName: pkgName });
95
+ }
96
+ getObjectsListCache_1.objectsListCache.setCache(result);
97
+ return {
98
+ isError: false,
99
+ content: [
100
+ {
101
+ type: "text",
102
+ text: JSON.stringify({ results: resultsArr, rawXML: xmlText })
103
+ }
104
+ ]
105
+ };
106
+ }
107
+ catch (error) {
108
+ // MCP-compliant error response: always return content[] with type "text"
109
+ return {
110
+ isError: true,
111
+ content: [
112
+ {
113
+ type: "text",
114
+ text: `ADT error: ${String(error)}`
115
+ }
116
+ ]
117
+ };
118
+ }
119
+ }
@@ -0,0 +1,17 @@
1
+ import * as z from 'zod';
2
+ export declare const TOOL_DEFINITION: {
3
+ readonly name: "GetServiceDefinition";
4
+ readonly description: "[read-only] Retrieve ABAP CDS Service Definition metadata and source code.";
5
+ readonly inputSchema: {
6
+ readonly service_definition_name: z.ZodString;
7
+ };
8
+ };
9
+ export declare function handleGetServiceDefinition(args: any): Promise<{
10
+ isError: boolean;
11
+ content: Array<{
12
+ type: string;
13
+ text?: string;
14
+ json?: any;
15
+ }>;
16
+ }>;
17
+ //# sourceMappingURL=handleGetServiceDefinition.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handleGetServiceDefinition.d.ts","sourceRoot":"","sources":["../../../../src/handlers/service_definition/readonly/handleGetServiceDefinition.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC;AAEzB,eAAO,MAAM,eAAe;;;;;;CAMlB,CAAC;AAsCX,wBAAsB,0BAA0B,CAAC,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,GAAG,CAAA;KAAE,CAAC,CAAA;CAAE,CAAC,CAsDtJ"}
@@ -0,0 +1,136 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.TOOL_DEFINITION = void 0;
37
+ exports.handleGetServiceDefinition = handleGetServiceDefinition;
38
+ const utils_1 = require("../../../lib/utils");
39
+ const adt_clients_1 = require("@mcp-abap-adt/adt-clients");
40
+ const fast_xml_parser_1 = require("fast-xml-parser");
41
+ const writeResultToFile_1 = require("../../../lib/writeResultToFile");
42
+ const z = __importStar(require("zod"));
43
+ exports.TOOL_DEFINITION = {
44
+ name: "GetServiceDefinition",
45
+ description: "[read-only] Retrieve ABAP CDS Service Definition metadata and source code.",
46
+ inputSchema: {
47
+ service_definition_name: z.string().describe("Name of the ABAP CDS Service Definition")
48
+ }
49
+ };
50
+ function parseServiceDefinitionXml(xml) {
51
+ const parser = new fast_xml_parser_1.XMLParser({
52
+ ignoreAttributes: false,
53
+ attributeNamePrefix: '',
54
+ parseAttributeValue: true,
55
+ trimValues: true
56
+ });
57
+ const result = parser.parse(xml);
58
+ // ADT Service Definition XML (SRVD/SRVD)
59
+ if (result['srvd:srvdSource'] || result['srvdSource']) {
60
+ const srvd = result['srvd:srvdSource'] || result['srvdSource'];
61
+ const packageRef = srvd['adtcore:packageRef'] || srvd['packageRef'];
62
+ return {
63
+ name: srvd['adtcore:name'] || srvd['name'],
64
+ objectType: 'service_definition',
65
+ description: srvd['adtcore:description'] || srvd['description'] || '',
66
+ package: packageRef?.['adtcore:name'] || packageRef?.['name'] || null,
67
+ uri: srvd['adtcore:uri'] || srvd['uri'] || null,
68
+ version: srvd['adtcore:version'] || srvd['version'] || null,
69
+ language: srvd['adtcore:language'] || srvd['language'] || null,
70
+ masterLanguage: srvd['adtcore:masterLanguage'] || srvd['masterLanguage'] || null,
71
+ masterSystem: srvd['adtcore:masterSystem'] || srvd['masterSystem'] || null,
72
+ responsible: srvd['adtcore:responsible'] || srvd['responsible'] || null,
73
+ createdBy: srvd['adtcore:createdBy'] || srvd['createdBy'] || null,
74
+ createdAt: srvd['adtcore:createdAt'] || srvd['createdAt'] || null,
75
+ changedBy: srvd['adtcore:changedBy'] || srvd['changedBy'] || null,
76
+ changedAt: srvd['adtcore:changedAt'] || srvd['changedAt'] || null
77
+ };
78
+ }
79
+ // fallback: return raw
80
+ return { raw: result };
81
+ }
82
+ async function handleGetServiceDefinition(args) {
83
+ try {
84
+ if (!args?.service_definition_name) {
85
+ throw new utils_1.McpError(utils_1.ErrorCode.InvalidParams, 'Service definition name is required');
86
+ }
87
+ const connection = (0, utils_1.getManagedConnection)();
88
+ const client = new adt_clients_1.ReadOnlyClient(connection);
89
+ await client.readServiceDefinition(args.service_definition_name);
90
+ const config = client.getServiceDefinitionReadResult();
91
+ const response = client.getReadResult();
92
+ if (!response) {
93
+ throw new utils_1.McpError(utils_1.ErrorCode.InternalError, 'Failed to read service definition');
94
+ }
95
+ // Parse XML responses; otherwise return the payload unchanged
96
+ if (typeof response.data === 'string' && response.data.trim().startsWith('<?xml')) {
97
+ const parsed = parseServiceDefinitionXml(response.data);
98
+ const result = {
99
+ isError: false,
100
+ content: [
101
+ {
102
+ type: "json",
103
+ json: {
104
+ ...parsed,
105
+ config: config || null,
106
+ raw_xml: response.data
107
+ }
108
+ }
109
+ ]
110
+ };
111
+ if (args.filePath) {
112
+ (0, writeResultToFile_1.writeResultToFile)(result, args.filePath);
113
+ }
114
+ return result;
115
+ }
116
+ else {
117
+ const plainResult = (0, utils_1.return_response)(response);
118
+ if (args.filePath) {
119
+ (0, writeResultToFile_1.writeResultToFile)(plainResult, args.filePath);
120
+ }
121
+ return plainResult;
122
+ }
123
+ }
124
+ catch (error) {
125
+ // MCP-compliant error response: always return content[] with type "text"
126
+ return {
127
+ isError: true,
128
+ content: [
129
+ {
130
+ type: "text",
131
+ text: `ADT error: ${String(error)}`
132
+ }
133
+ ]
134
+ };
135
+ }
136
+ }
@@ -0,0 +1,107 @@
1
+ /**
2
+ * CreateStructure Handler - ABAP Structure Creation via ADT API
3
+ *
4
+ * Uses StructureBuilder from @mcp-abap-adt/adt-clients for all operations.
5
+ * Session and lock management handled internally by builder.
6
+ *
7
+ * Workflow: validate -> create -> lock -> update -> check -> unlock -> (activate)
8
+ */
9
+ export declare const TOOL_DEFINITION: {
10
+ readonly name: "CreateStructure";
11
+ readonly description: "Create a new ABAP structure in SAP system with fields and type references. Includes create, activate, and verify steps.";
12
+ readonly inputSchema: {
13
+ readonly type: "object";
14
+ readonly properties: {
15
+ readonly structure_name: {
16
+ readonly type: "string";
17
+ readonly description: "Structure name (e.g., ZZ_S_TEST_001). Must follow SAP naming conventions.";
18
+ };
19
+ readonly description: {
20
+ readonly type: "string";
21
+ readonly description: "Structure description. If not provided, structure_name will be used.";
22
+ };
23
+ readonly package_name: {
24
+ readonly type: "string";
25
+ readonly description: "Package name (e.g., ZOK_LOCAL, $TMP for local objects)";
26
+ };
27
+ readonly transport_request: {
28
+ readonly type: "string";
29
+ readonly description: "Transport request number (e.g., E19K905635). Required for transportable packages.";
30
+ };
31
+ readonly fields: {
32
+ readonly type: "array";
33
+ readonly description: "Array of structure fields";
34
+ readonly items: {
35
+ readonly type: "object";
36
+ readonly properties: {
37
+ readonly name: {
38
+ readonly type: "string";
39
+ readonly description: "Field name (e.g., CLIENT, MATERIAL_ID)";
40
+ };
41
+ readonly data_type: {
42
+ readonly type: "string";
43
+ readonly description: "Data type: CHAR, NUMC, DATS, TIMS, DEC, INT1, INT2, INT4, INT8, CURR, QUAN, etc.";
44
+ };
45
+ readonly length: {
46
+ readonly type: "number";
47
+ readonly description: "Field length";
48
+ };
49
+ readonly decimals: {
50
+ readonly type: "number";
51
+ readonly description: "Decimal places (for DEC, CURR, QUAN types)";
52
+ readonly default: 0;
53
+ };
54
+ readonly domain: {
55
+ readonly type: "string";
56
+ readonly description: "Domain name for type reference (optional)";
57
+ };
58
+ readonly data_element: {
59
+ readonly type: "string";
60
+ readonly description: "Data element name for type reference (optional)";
61
+ };
62
+ readonly structure_ref: {
63
+ readonly type: "string";
64
+ readonly description: "Include another structure (optional)";
65
+ };
66
+ readonly table_ref: {
67
+ readonly type: "string";
68
+ readonly description: "Reference to table type (optional)";
69
+ };
70
+ readonly description: {
71
+ readonly type: "string";
72
+ readonly description: "Field description";
73
+ };
74
+ };
75
+ readonly required: readonly ["name"];
76
+ };
77
+ };
78
+ readonly includes: {
79
+ readonly type: "array";
80
+ readonly description: "Include other structures in this structure";
81
+ readonly items: {
82
+ readonly type: "object";
83
+ readonly properties: {
84
+ readonly name: {
85
+ readonly type: "string";
86
+ readonly description: "Include structure name";
87
+ };
88
+ readonly suffix: {
89
+ readonly type: "string";
90
+ readonly description: "Optional suffix for include fields";
91
+ };
92
+ };
93
+ readonly required: readonly ["name"];
94
+ };
95
+ };
96
+ };
97
+ readonly required: readonly ["structure_name", "package_name", "fields"];
98
+ };
99
+ };
100
+ /**
101
+ * Main handler for CreateStructure MCP tool
102
+ *
103
+ * Uses StructureBuilder from @mcp-abap-adt/adt-clients for all operations
104
+ * Session and lock management handled internally by builder
105
+ */
106
+ export declare function handleCreateStructure(args: any): Promise<any>;
107
+ //# sourceMappingURL=handleCreateStructure.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handleCreateStructure.d.ts","sourceRoot":"","sources":["../../../src/handlers/structure/handleCreateStructure.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAOH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0FlB,CAAC;AA6BX;;;;;GAKG;AACH,wBAAsB,qBAAqB,CAAC,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAmGnE"}
@@ -0,0 +1,184 @@
1
+ "use strict";
2
+ /**
3
+ * CreateStructure Handler - ABAP Structure Creation via ADT API
4
+ *
5
+ * Uses StructureBuilder from @mcp-abap-adt/adt-clients for all operations.
6
+ * Session and lock management handled internally by builder.
7
+ *
8
+ * Workflow: validate -> create -> lock -> update -> check -> unlock -> (activate)
9
+ */
10
+ Object.defineProperty(exports, "__esModule", { value: true });
11
+ exports.TOOL_DEFINITION = void 0;
12
+ exports.handleCreateStructure = handleCreateStructure;
13
+ const utils_1 = require("../../lib/utils");
14
+ const utils_2 = require("../../lib/utils");
15
+ const transportValidation_js_1 = require("../../utils/transportValidation.js");
16
+ const adt_clients_1 = require("@mcp-abap-adt/adt-clients");
17
+ exports.TOOL_DEFINITION = {
18
+ name: "CreateStructure",
19
+ description: "Create a new ABAP structure in SAP system with fields and type references. Includes create, activate, and verify steps.",
20
+ inputSchema: {
21
+ type: "object",
22
+ properties: {
23
+ structure_name: {
24
+ type: "string",
25
+ description: "Structure name (e.g., ZZ_S_TEST_001). Must follow SAP naming conventions."
26
+ },
27
+ description: {
28
+ type: "string",
29
+ description: "Structure description. If not provided, structure_name will be used."
30
+ },
31
+ package_name: {
32
+ type: "string",
33
+ description: "Package name (e.g., ZOK_LOCAL, $TMP for local objects)"
34
+ },
35
+ transport_request: {
36
+ type: "string",
37
+ description: "Transport request number (e.g., E19K905635). Required for transportable packages."
38
+ },
39
+ fields: {
40
+ type: "array",
41
+ description: "Array of structure fields",
42
+ items: {
43
+ type: "object",
44
+ properties: {
45
+ name: {
46
+ type: "string",
47
+ description: "Field name (e.g., CLIENT, MATERIAL_ID)"
48
+ },
49
+ data_type: {
50
+ type: "string",
51
+ description: "Data type: CHAR, NUMC, DATS, TIMS, DEC, INT1, INT2, INT4, INT8, CURR, QUAN, etc."
52
+ },
53
+ length: {
54
+ type: "number",
55
+ description: "Field length"
56
+ },
57
+ decimals: {
58
+ type: "number",
59
+ description: "Decimal places (for DEC, CURR, QUAN types)",
60
+ default: 0
61
+ },
62
+ domain: {
63
+ type: "string",
64
+ description: "Domain name for type reference (optional)"
65
+ },
66
+ data_element: {
67
+ type: "string",
68
+ description: "Data element name for type reference (optional)"
69
+ },
70
+ structure_ref: {
71
+ type: "string",
72
+ description: "Include another structure (optional)"
73
+ },
74
+ table_ref: {
75
+ type: "string",
76
+ description: "Reference to table type (optional)"
77
+ },
78
+ description: {
79
+ type: "string",
80
+ description: "Field description"
81
+ }
82
+ },
83
+ required: ["name"]
84
+ }
85
+ },
86
+ includes: {
87
+ type: "array",
88
+ description: "Include other structures in this structure",
89
+ items: {
90
+ type: "object",
91
+ properties: {
92
+ name: {
93
+ type: "string",
94
+ description: "Include structure name"
95
+ },
96
+ suffix: {
97
+ type: "string",
98
+ description: "Optional suffix for include fields"
99
+ }
100
+ },
101
+ required: ["name"]
102
+ }
103
+ }
104
+ },
105
+ required: ["structure_name", "package_name", "fields"]
106
+ }
107
+ };
108
+ /**
109
+ * Main handler for CreateStructure MCP tool
110
+ *
111
+ * Uses StructureBuilder from @mcp-abap-adt/adt-clients for all operations
112
+ * Session and lock management handled internally by builder
113
+ */
114
+ async function handleCreateStructure(args) {
115
+ try {
116
+ const createStructureArgs = args;
117
+ // Validate required parameters
118
+ if (!createStructureArgs?.structure_name) {
119
+ throw new utils_1.McpError(utils_1.ErrorCode.InvalidParams, 'Structure name is required');
120
+ }
121
+ if (!createStructureArgs?.package_name) {
122
+ throw new utils_1.McpError(utils_1.ErrorCode.InvalidParams, 'Package name is required');
123
+ }
124
+ // Validate transport_request: required for non-$TMP packages
125
+ (0, transportValidation_js_1.validateTransportRequest)(createStructureArgs.package_name, createStructureArgs.transport_request);
126
+ if (!createStructureArgs?.fields || !Array.isArray(createStructureArgs.fields) || createStructureArgs.fields.length === 0) {
127
+ throw new utils_1.McpError(utils_1.ErrorCode.InvalidParams, 'At least one field is required');
128
+ }
129
+ const connection = (0, utils_2.getManagedConnection)();
130
+ const structureName = createStructureArgs.structure_name.toUpperCase();
131
+ utils_2.logger.info(`Starting structure creation: ${structureName}`);
132
+ try {
133
+ // Create client
134
+ const client = new adt_clients_1.CrudClient(connection);
135
+ const shouldActivate = true; // Default to true for structures
136
+ // Validate
137
+ await client.validateStructure(structureName);
138
+ // Create
139
+ await client.createStructure(structureName, createStructureArgs.description || structureName, createStructureArgs.package_name, createStructureArgs.transport_request);
140
+ // Lock
141
+ await client.lockStructure(structureName);
142
+ const lockHandle = client.getLockHandle();
143
+ // Note: StructureBuilder internally generates DDL from fields/includes
144
+ // For now, skip update as structure creation already includes field definitions
145
+ // TODO: Implement DDL generation or enhance CrudClient to accept fields directly
146
+ // Check
147
+ await client.checkStructure(structureName);
148
+ // Unlock
149
+ await client.unlockStructure(structureName, lockHandle);
150
+ // Activate
151
+ if (shouldActivate) {
152
+ await client.activateStructure(structureName);
153
+ }
154
+ utils_2.logger.info(`✅ CreateStructure completed successfully: ${structureName}`);
155
+ return (0, utils_2.return_response)({
156
+ data: JSON.stringify({
157
+ success: true,
158
+ structure_name: structureName,
159
+ package_name: createStructureArgs.package_name,
160
+ transport_request: createStructureArgs.transport_request || 'local',
161
+ activated: shouldActivate,
162
+ message: `Structure ${structureName} created successfully${shouldActivate ? ' and activated' : ''}`
163
+ })
164
+ });
165
+ }
166
+ catch (error) {
167
+ utils_2.logger.error(`Error creating structure ${structureName}:`, error);
168
+ // Check if structure already exists
169
+ if (error.message?.includes('already exists') || error.response?.status === 409) {
170
+ throw new utils_1.McpError(utils_1.ErrorCode.InvalidParams, `Structure ${structureName} already exists. Please delete it first or use a different name.`);
171
+ }
172
+ const errorMessage = error.response?.data
173
+ ? (typeof error.response.data === 'string' ? error.response.data : JSON.stringify(error.response.data))
174
+ : error.message || String(error);
175
+ throw new utils_1.McpError(utils_1.ErrorCode.InternalError, `Failed to create structure ${structureName}: ${errorMessage}`);
176
+ }
177
+ }
178
+ catch (error) {
179
+ if (error instanceof utils_1.McpError) {
180
+ throw error;
181
+ }
182
+ return (0, utils_2.return_error)(error);
183
+ }
184
+ }
@@ -0,0 +1,16 @@
1
+ import * as z from 'zod';
2
+ export declare const TOOL_DEFINITION: {
3
+ readonly name: "GetStructure";
4
+ readonly description: "Retrieve ABAP Structure.";
5
+ readonly inputSchema: {
6
+ readonly structure_name: z.ZodString;
7
+ };
8
+ };
9
+ export declare function handleGetStructure(args: any): Promise<{
10
+ isError: boolean;
11
+ content: {
12
+ type: string;
13
+ text: any;
14
+ }[];
15
+ }>;
16
+ //# sourceMappingURL=handleGetStructure.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handleGetStructure.d.ts","sourceRoot":"","sources":["../../../src/handlers/structure/handleGetStructure.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC;AAEzB,eAAO,MAAM,eAAe;;;;;;CAMlB,CAAC;AAsCX,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,GAAG;;;;;;GAsDjD"}