@mcp-abap-adt/core 4.4.2 → 4.5.1

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.
package/CHANGELOG.md CHANGED
@@ -2,6 +2,20 @@
2
2
 
3
3
  ## [Unreleased]
4
4
 
5
+ ## [4.5.1] - 2026-03-26
6
+
7
+ ### Changed
8
+ - Rewrite `ListTransports` handler to use `AdtClient.getRequest().list()` with proper Accept negotiation instead of direct `connection.makeAdtRequest()`. Update `@mcp-abap-adt/adt-clients` to 3.13.0.
9
+ - Add integration tests for `ListTransports` handler.
10
+
11
+ ## [4.5.0] - 2026-03-26
12
+
13
+ ### Fixed
14
+ - Give `SAP_AUTH_TYPE` priority over `SAP_JWT_TOKEN` in test helpers — fixes onprem basic-auth tests failing when OS has stale BTP JWT token (#24).
15
+
16
+ ### Changed
17
+ - Update `@mcp-abap-adt/adt-clients` to 3.12.0 — adds 415 Content-Type negotiation with auto-retry and caching. Accept correction enabled by default (#22, #23).
18
+
5
19
  ## [4.4.2] - 2026-03-26
6
20
 
7
21
  ### Fixed
@@ -2,7 +2,7 @@
2
2
  * ListTransports Handler - List user's transport requests via ADT API
3
3
  *
4
4
  * Retrieves transport requests for the current user or specified user.
5
- * Uses /sap/bc/adt/cts/transportrequests endpoint with search filters.
5
+ * Uses AdtClient.getRequest().list() with proper Accept negotiation.
6
6
  */
7
7
  import type { HandlerContext } from '../../../lib/handlers/interfaces';
8
8
  export declare const TOOL_DEFINITION: {
@@ -1 +1 @@
1
- {"version":3,"file":"handleListTransports.d.ts","sourceRoot":"","sources":["../../../../src/handlers/transport/readonly/handleListTransports.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AAGvE,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;CAqBlB,CAAC;AAEX,UAAU,kBAAkB;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AA6CD,wBAAsB,oBAAoB,CACxC,OAAO,EAAE,cAAc,EACvB,IAAI,EAAE,kBAAkB;;;;;;GAuDzB"}
1
+ {"version":3,"file":"handleListTransports.d.ts","sourceRoot":"","sources":["../../../../src/handlers/transport/readonly/handleListTransports.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AAIvE,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;CAqBlB,CAAC;AAEX,UAAU,kBAAkB;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AA6CD,wBAAsB,oBAAoB,CACxC,OAAO,EAAE,cAAc,EACvB,IAAI,EAAE,kBAAkB;;;;;;GA6CzB"}
@@ -3,12 +3,14 @@
3
3
  * ListTransports Handler - List user's transport requests via ADT API
4
4
  *
5
5
  * Retrieves transport requests for the current user or specified user.
6
- * Uses /sap/bc/adt/cts/transportrequests endpoint with search filters.
6
+ * Uses AdtClient.getRequest().list() with proper Accept negotiation.
7
7
  */
8
8
  Object.defineProperty(exports, "__esModule", { value: true });
9
9
  exports.TOOL_DEFINITION = void 0;
10
10
  exports.handleListTransports = handleListTransports;
11
11
  const fast_xml_parser_1 = require("fast-xml-parser");
12
+ const clients_1 = require("../../../lib/clients");
13
+ const systemContext_1 = require("../../../lib/systemContext");
12
14
  const utils_1 = require("../../../lib/utils");
13
15
  exports.TOOL_DEFINITION = {
14
16
  name: 'ListTransports',
@@ -59,20 +61,17 @@ async function handleListTransports(context, args) {
59
61
  const { connection, logger } = context;
60
62
  try {
61
63
  const modifiableOnly = args?.modifiable_only !== false;
62
- // Build URL with query params
63
- const params = [];
64
- if (args?.user) {
65
- params.push(`user=${encodeURIComponent(args.user)}`);
66
- }
67
- if (modifiableOnly) {
68
- params.push('status=D'); // D = modifiable
69
- }
70
- const url = `/sap/bc/adt/cts/transportrequests${params.length > 0 ? `?${params.join('&')}` : ''}`;
71
- logger?.debug(`ListTransports: ${url}`);
72
- const response = await (0, utils_1.makeAdtRequestWithTimeout)(connection, url, 'GET', 'default', undefined, undefined, {
73
- Accept: 'application/vnd.sap.adt.transportorganizer.v1+xml',
64
+ const user = args?.user ||
65
+ (0, systemContext_1.getSystemContext)().responsible ||
66
+ process.env.SAP_USERNAME ||
67
+ '';
68
+ logger?.debug(`ListTransports: user=${user}, modifiable_only=${modifiableOnly}`);
69
+ const client = (0, clients_1.createAdtClient)(connection, logger);
70
+ const state = await client.getRequest().list({
71
+ user,
72
+ status: modifiableOnly ? 'D' : undefined,
74
73
  });
75
- const transports = parseTransportListXml(response.data);
74
+ const transports = parseTransportListXml(state.listResult?.data || '');
76
75
  logger?.info(`ListTransports: found ${transports.length} transport(s)`);
77
76
  return {
78
77
  isError: false,
@@ -1 +1 @@
1
- {"version":3,"file":"handleListTransports.js","sourceRoot":"","sources":["../../../../src/handlers/transport/readonly/handleListTransports.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AA6EH,oDAyDC;AApID,qDAA4C;AAE5C,8CAA6E;AAEhE,QAAA,eAAe,GAAG;IAC7B,IAAI,EAAE,gBAAgB;IACtB,YAAY,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAU;IAC1C,WAAW,EACT,+IAA+I;IACjJ,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,IAAI,EAAE;gBACJ,IAAI,EAAE,QAAQ;gBACd,WAAW,EACT,0EAA0E;aAC7E;YACD,eAAe,EAAE;gBACf,IAAI,EAAE,SAAS;gBACf,WAAW,EACT,sEAAsE;aACzE;SACF;QACD,QAAQ,EAAE,EAAE;KACb;CACO,CAAC;AAgBX,SAAS,qBAAqB,CAAC,OAAe;IAC5C,MAAM,MAAM,GAAG,IAAI,2BAAS,CAAC;QAC3B,gBAAgB,EAAE,KAAK;QACvB,mBAAmB,EAAE,EAAE;QACvB,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;YAChB,OAAO,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAClD,CAAC;KACF,CAAC,CAAC;IAEH,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAErC,iEAAiE;IACjE,MAAM,IAAI,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,MAAM,CAAC,UAAU,CAAC,IAAI,MAAM,CAAC;IAE/D,mBAAmB;IACnB,MAAM,QAAQ,GACZ,IAAI,EAAE,CAAC,YAAY,CAAC,IAAI,IAAI,EAAE,CAAC,cAAc,CAAC,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;IACvE,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;IAEpE,OAAO,WAAW;SACf,MAAM,CAAC,CAAC,GAA4B,EAAE,EAAE,CAAC,GAAG,CAAC;SAC7C,GAAG,CAAC,CAAC,GAA4B,EAAE,EAAE,CAAC,CAAC;QACtC,MAAM,EACH,GAAG,CAAC,WAAW,CAAY,IAAK,GAAG,CAAC,cAAc,CAAY,IAAI,EAAE;QACvE,WAAW,EACR,GAAG,CAAC,SAAS,CAAY,IAAK,GAAG,CAAC,gBAAgB,CAAY,IAAI,EAAE;QACvE,IAAI,EAAG,GAAG,CAAC,SAAS,CAAY,IAAI,EAAE;QACtC,MAAM,EAAG,GAAG,CAAC,WAAW,CAAY,IAAI,EAAE;QAC1C,KAAK,EAAG,GAAG,CAAC,UAAU,CAAY,IAAI,EAAE;QACxC,MAAM,EAAG,GAAG,CAAC,WAAW,CAAY,IAAI,EAAE;KAC3C,CAAC,CAAC;SACF,MAAM,CAAC,CAAC,CAAiB,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;AAC7C,CAAC;AAEM,KAAK,UAAU,oBAAoB,CACxC,OAAuB,EACvB,IAAwB;IAExB,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;IACvC,IAAI,CAAC;QACH,MAAM,cAAc,GAAG,IAAI,EAAE,eAAe,KAAK,KAAK,CAAC;QAEvD,8BAA8B;QAC9B,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,IAAI,IAAI,EAAE,IAAI,EAAE,CAAC;YACf,MAAM,CAAC,IAAI,CAAC,QAAQ,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACvD,CAAC;QACD,IAAI,cAAc,EAAE,CAAC;YACnB,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,iBAAiB;QAC5C,CAAC;QAED,MAAM,GAAG,GAAG,oCAAoC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QAElG,MAAM,EAAE,KAAK,CAAC,mBAAmB,GAAG,EAAE,CAAC,CAAC;QAExC,MAAM,QAAQ,GAAG,MAAM,IAAA,iCAAyB,EAC9C,UAAU,EACV,GAAG,EACH,KAAK,EACL,SAAS,EACT,SAAS,EACT,SAAS,EACT;YACE,MAAM,EAAE,mDAAmD;SAC5D,CACF,CAAC;QAEF,MAAM,UAAU,GAAG,qBAAqB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAExD,MAAM,EAAE,IAAI,CAAC,yBAAyB,UAAU,CAAC,MAAM,eAAe,CAAC,CAAC;QAExE,OAAO;YACL,OAAO,EAAE,KAAK;YACd,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAClB;wBACE,OAAO,EAAE,IAAI;wBACb,KAAK,EAAE,UAAU,CAAC,MAAM;wBACxB,UAAU;qBACX,EACD,IAAI,EACJ,CAAC,CACF;iBACF;aACF;SACF,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,IAAA,oBAAY,EAAC,KAAK,CAAC,CAAC;IAC7B,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"handleListTransports.js","sourceRoot":"","sources":["../../../../src/handlers/transport/readonly/handleListTransports.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AA+EH,oDA+CC;AA5HD,qDAA4C;AAC5C,kDAAuD;AAEvD,8DAA8D;AAC9D,8CAAkD;AAErC,QAAA,eAAe,GAAG;IAC7B,IAAI,EAAE,gBAAgB;IACtB,YAAY,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAU;IAC1C,WAAW,EACT,+IAA+I;IACjJ,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,IAAI,EAAE;gBACJ,IAAI,EAAE,QAAQ;gBACd,WAAW,EACT,0EAA0E;aAC7E;YACD,eAAe,EAAE;gBACf,IAAI,EAAE,SAAS;gBACf,WAAW,EACT,sEAAsE;aACzE;SACF;QACD,QAAQ,EAAE,EAAE;KACb;CACO,CAAC;AAgBX,SAAS,qBAAqB,CAAC,OAAe;IAC5C,MAAM,MAAM,GAAG,IAAI,2BAAS,CAAC;QAC3B,gBAAgB,EAAE,KAAK;QACvB,mBAAmB,EAAE,EAAE;QACvB,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;YAChB,OAAO,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAClD,CAAC;KACF,CAAC,CAAC;IAEH,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAErC,iEAAiE;IACjE,MAAM,IAAI,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,MAAM,CAAC,UAAU,CAAC,IAAI,MAAM,CAAC;IAE/D,mBAAmB;IACnB,MAAM,QAAQ,GACZ,IAAI,EAAE,CAAC,YAAY,CAAC,IAAI,IAAI,EAAE,CAAC,cAAc,CAAC,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;IACvE,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;IAEpE,OAAO,WAAW;SACf,MAAM,CAAC,CAAC,GAA4B,EAAE,EAAE,CAAC,GAAG,CAAC;SAC7C,GAAG,CAAC,CAAC,GAA4B,EAAE,EAAE,CAAC,CAAC;QACtC,MAAM,EACH,GAAG,CAAC,WAAW,CAAY,IAAK,GAAG,CAAC,cAAc,CAAY,IAAI,EAAE;QACvE,WAAW,EACR,GAAG,CAAC,SAAS,CAAY,IAAK,GAAG,CAAC,gBAAgB,CAAY,IAAI,EAAE;QACvE,IAAI,EAAG,GAAG,CAAC,SAAS,CAAY,IAAI,EAAE;QACtC,MAAM,EAAG,GAAG,CAAC,WAAW,CAAY,IAAI,EAAE;QAC1C,KAAK,EAAG,GAAG,CAAC,UAAU,CAAY,IAAI,EAAE;QACxC,MAAM,EAAG,GAAG,CAAC,WAAW,CAAY,IAAI,EAAE;KAC3C,CAAC,CAAC;SACF,MAAM,CAAC,CAAC,CAAiB,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;AAC7C,CAAC;AAEM,KAAK,UAAU,oBAAoB,CACxC,OAAuB,EACvB,IAAwB;IAExB,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;IACvC,IAAI,CAAC;QACH,MAAM,cAAc,GAAG,IAAI,EAAE,eAAe,KAAK,KAAK,CAAC;QACvD,MAAM,IAAI,GACR,IAAI,EAAE,IAAI;YACV,IAAA,gCAAgB,GAAE,CAAC,WAAW;YAC9B,OAAO,CAAC,GAAG,CAAC,YAAY;YACxB,EAAE,CAAC;QAEL,MAAM,EAAE,KAAK,CACX,wBAAwB,IAAI,qBAAqB,cAAc,EAAE,CAClE,CAAC;QAEF,MAAM,MAAM,GAAG,IAAA,yBAAe,EAAC,UAAU,EAAE,MAAM,CAAC,CAAC;QACnD,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,UAAU,EAAE,CAAC,IAAI,CAAC;YAC3C,IAAI;YACJ,MAAM,EAAE,cAAc,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS;SACzC,CAAC,CAAC;QAEH,MAAM,UAAU,GAAG,qBAAqB,CAAC,KAAK,CAAC,UAAU,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC;QAEvE,MAAM,EAAE,IAAI,CAAC,yBAAyB,UAAU,CAAC,MAAM,eAAe,CAAC,CAAC;QAExE,OAAO;YACL,OAAO,EAAE,KAAK;YACd,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAClB;wBACE,OAAO,EAAE,IAAI;wBACb,KAAK,EAAE,UAAU,CAAC,MAAM;wBACxB,UAAU;qBACX,EACD,IAAI,EACJ,CAAC,CACF;iBACF;aACF;SACF,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,IAAA,oBAAY,EAAC,KAAK,CAAC,CAAC;IAC7B,CAAC;AACH,CAAC"}
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": "4.4.2",
4
+ "version": "4.5.1",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
7
7
  "exports": {