@numends/abap-client 0.0.1 → 0.0.3

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/README.md CHANGED
@@ -1,95 +1,16 @@
1
1
  # @numends/abap-client
2
2
 
3
- WebSocket client that connects your local machine to ABAP MCP Cloud, enabling SAP ADT operations from within your VPN.
4
-
5
- ## How it works
6
-
7
- ```
8
- ┌─────────────┐ ┌──────────────┐
9
- │ Cursor/ │ │ abap-client │
10
- │ Claude IDE │ │ (this tool) │
11
- └──────┬──────┘ └──────┬───────┘
12
- │ │
13
- ↓ │
14
- ┌─────────────┐ WebSocket │
15
- │ MCP Cloud │◄──────────────────────────┤
16
- │ (Server) │ │
17
- └──────┬──────┘ │
18
- │ │
19
- └──────Command──────────────────────►
20
-
21
- ┌──────────────┐
22
- │ SAP S/4 │
23
- │ (VPN) │
24
- └──────────────┘
25
- ```
26
-
27
- 1. Connects to MCP Cloud via WebSocket (outbound connection)
28
- 2. Receives commands from MCP Cloud
29
- 3. Executes HTTP requests to SAP S/4HANA (within VPN)
30
- 4. Returns results back to MCP Cloud
31
- 5. Manages SAP session automatically (CSRF tokens, cookies, keep-alive)
3
+ Bridge between Arcanum MCP Cloud and your SAP system. Runs locally within your VPN and executes SAP ADT operations on demand.
32
4
 
33
5
  ## Quick Start
34
6
 
35
- ### Prerequisites
36
-
37
- - Node.js 20 or higher
38
- - VPN access to the SAP system
39
- - An `arc_*` API key from the [Arcanum admin portal](https://arcanum.mcps.b2rise.com)
40
- - SAP environments registered in the admin portal
41
-
42
- ### Run with npx (no install needed)
7
+ **Requirements:** Node.js 20+, VPN access to the SAP system, and an API key from [arcanum.mcps.b2rise.com](https://arcanum.mcps.b2rise.com).
43
8
 
44
9
  ```bash
45
10
  npx @numends/abap-client
46
11
  ```
47
12
 
48
- On first run, you'll be prompted to enter your API key interactively. It will be saved to a `.env` file automatically so you won't need to enter it again.
49
-
50
- You can also pass it directly:
51
-
52
- ```bash
53
- API_KEY=arc_your_key_here npx @numends/abap-client
54
- ```
55
-
56
- ### Global install
57
-
58
- ```bash
59
- npm install -g @numends/abap-client
60
- abap-client
61
- ```
62
-
63
- ## Configuration
64
-
65
- The only required configuration is your API key. All other settings (WebSocket URL, admin URL, keep-alive) are handled automatically.
66
-
67
- | Variable | Required | Description |
68
- |----------|----------|-------------|
69
- | `API_KEY` | Yes | Your `arc_*` API key from the admin portal |
70
- | `ENV` | No | Set to `DEVELOPMENT` to use QAS endpoints |
71
-
72
- SAP system credentials are managed in the [Arcanum admin portal](https://arcanum.mcps.b2rise.com) and fetched automatically on startup.
73
-
74
- ## Troubleshooting
75
-
76
- ### "401 Unauthorized" from SAP
77
- - Verify SAP username and password in the admin portal
78
- - Check that the SAP user has the required ADT permissions
79
-
80
- ### Connection keeps reconnecting
81
- - Check if API_KEY is valid and has an active subscription
82
- - Verify the MCP Cloud server is accessible
83
-
84
- ### "No SAP environments configured"
85
- - Register your SAP systems in the admin portal first
86
-
87
- ## Security
88
-
89
- - Never commit `.env` files with real credentials
90
- - API keys should be treated as secrets
91
- - SAP passwords are encrypted at rest in the admin portal
92
- - Connections to MCP Cloud use WSS (TLS)
13
+ On first run you'll be asked for your API key. It's saved to `~/.abap-client/.env` automatically.
93
14
 
94
15
  ## License
95
16
 
package/dist/config.js CHANGED
@@ -41,8 +41,7 @@ export async function fetchSapSystems() {
41
41
  ...sapSystems[activeSystemKey],
42
42
  systemKey: activeSystemKey,
43
43
  };
44
- console.log(` ✅ Loaded ${systemKeys.length} SAP system(s): ${systemKeys.join(', ')}`);
45
- console.log(` 📌 Active system: ${activeSystemKey}`);
44
+ console.log(` ${systemKeys.length} SAP system(s) loaded. Active: ${activeSystemKey}`);
46
45
  return sapSystems;
47
46
  }
48
47
  export function getSapConfig(systemKey = null) {
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -4,4 +4,4 @@
4
4
  * WebSocket client that connects to MCP Cloud and executes SAP ADT operations locally.
5
5
  * SAP environments are fetched from the Arcanum admin portal on startup.
6
6
  */
7
- import 'dotenv/config';
7
+ export {};
package/dist/index.js CHANGED
@@ -4,13 +4,20 @@
4
4
  * WebSocket client that connects to MCP Cloud and executes SAP ADT operations locally.
5
5
  * SAP environments are fetched from the Arcanum admin portal on startup.
6
6
  */
7
- import 'dotenv/config';
8
7
  import { createInterface } from 'readline';
9
- import { writeFileSync, existsSync, readFileSync } from 'fs';
8
+ import { writeFileSync, existsSync, readFileSync, mkdirSync } from 'fs';
10
9
  import { join } from 'path';
10
+ import { homedir } from 'os';
11
+ import { config as dotenvConfig } from 'dotenv';
11
12
  import { CONFIG, fetchSapSystems } from './config.js';
12
13
  import { WebSocketClient } from './websocket-client.js';
13
- const ENV_PATH = join(process.cwd(), '.env');
14
+ const CONFIG_DIR = join(homedir(), '.abap-client');
15
+ const ENV_PATH = join(CONFIG_DIR, '.env');
16
+ dotenvConfig({ path: ENV_PATH });
17
+ if (process.env.API_KEY && !CONFIG.API_KEY) {
18
+ CONFIG.API_KEY = process.env.API_KEY;
19
+ }
20
+ const args = process.argv.slice(2);
14
21
  function prompt(question) {
15
22
  const rl = createInterface({ input: process.stdin, output: process.stdout });
16
23
  return new Promise((resolve) => {
@@ -21,6 +28,9 @@ function prompt(question) {
21
28
  });
22
29
  }
23
30
  function saveApiKey(apiKey) {
31
+ if (!existsSync(CONFIG_DIR)) {
32
+ mkdirSync(CONFIG_DIR, { recursive: true });
33
+ }
24
34
  if (existsSync(ENV_PATH)) {
25
35
  const content = readFileSync(ENV_PATH, 'utf-8');
26
36
  if (content.includes('API_KEY=')) {
@@ -35,66 +45,81 @@ function saveApiKey(apiKey) {
35
45
  writeFileSync(ENV_PATH, `API_KEY=${apiKey}\n`);
36
46
  }
37
47
  }
38
- async function interactiveSetup() {
48
+ async function askApiKey() {
39
49
  console.log('');
40
- console.log('🔧 First-time setup');
41
- console.log('─────────────────────────────────────────────');
50
+ console.log(' You need an API key to connect to Arcanum MCP Cloud.');
51
+ console.log(' Get yours at: https://arcanum.mcps.b2rise.com');
42
52
  console.log('');
43
- console.log('You need an API key to connect to Arcanum MCP Cloud.');
44
- console.log('Get yours at: https://arcanum.mcps.b2rise.com');
45
- console.log('');
46
- const apiKey = await prompt(' Paste your API key (arc_...): ');
53
+ const apiKey = await prompt(' Paste your API key (arc_...): ');
47
54
  if (!apiKey || !apiKey.startsWith('arc_')) {
48
- console.error('\nInvalid API key. It must start with "arc_".');
55
+ console.error('\n Invalid API key. It must start with "arc_".');
49
56
  process.exit(1);
50
57
  }
51
58
  saveApiKey(apiKey);
52
- console.log(`\nAPI key saved to ${ENV_PATH}`);
53
- console.log(' You won\'t need to enter it again.\n');
59
+ console.log('\n API key saved to ~/.abap-client/.env');
54
60
  return apiKey;
55
61
  }
62
+ async function handleSetup() {
63
+ console.log('');
64
+ console.log(' Setup');
65
+ console.log(' ─────────────────────────────────────────────');
66
+ const apiKey = await askApiKey();
67
+ CONFIG.API_KEY = apiKey;
68
+ console.log(' Done!\n');
69
+ }
70
+ function handleHelp() {
71
+ console.log('');
72
+ console.log(' Usage: abap-client [command]');
73
+ console.log('');
74
+ console.log(' Commands:');
75
+ console.log(' (none) Start the client');
76
+ console.log(' --setup Configure or change API key');
77
+ console.log(' --help Show this help');
78
+ console.log('');
79
+ }
56
80
  async function main() {
57
- console.log('╔════════════════════════════════════════════════════════════╗');
58
- console.log('║ ABAP Client - SAP WebSocket Bridge ║');
59
- console.log('║ Connects to MCP Cloud and executes SAP operations ║');
60
- console.log('╚════════════════════════════════════════════════════════════╝\n');
81
+ if (args.includes('--help') || args.includes('-h')) {
82
+ handleHelp();
83
+ return;
84
+ }
85
+ console.log('');
86
+ console.log(' ABAP Client - SAP WebSocket Bridge');
87
+ console.log(' ═══════════════════════════════════\n');
88
+ if (args.includes('--setup')) {
89
+ await handleSetup();
90
+ return;
91
+ }
61
92
  if (!CONFIG.API_KEY) {
62
- const apiKey = await interactiveSetup();
93
+ console.log(' First-time setup');
94
+ console.log(' ─────────────────────────────────────────────');
95
+ const apiKey = await askApiKey();
63
96
  CONFIG.API_KEY = apiKey;
97
+ console.log('');
64
98
  }
65
- console.log('📋 Configuration:');
66
- console.log(` WebSocket: ${CONFIG.WS_URL}`);
67
- console.log(` Admin: ${CONFIG.MCP_ADMIN_URL}`);
68
- console.log(` API Key: ${CONFIG.API_KEY.substring(0, 12)}...`);
69
- console.log('');
70
- console.log('🔄 Fetching SAP environments from admin...');
99
+ console.log(' Loading SAP environments...');
71
100
  try {
72
101
  await fetchSapSystems();
73
102
  }
74
103
  catch (error) {
75
- console.error(`\n❌ Failed to fetch SAP environments: ${error.message}`);
104
+ console.error(` Failed to load SAP environments: ${error.message}`);
76
105
  process.exit(1);
77
106
  }
78
107
  console.log('');
79
- console.log(` SAP System: ${CONFIG.SAP.baseUrl}`);
80
- console.log(` SAP Client: ${CONFIG.SAP.client}`);
81
- console.log(` SAP User: ${CONFIG.SAP.username}`);
82
- console.log('');
83
108
  const client = new WebSocketClient(CONFIG);
84
109
  client.connect();
85
110
  process.on('SIGINT', () => {
86
- console.log('\n\n⚠️ Shutting down gracefully...');
111
+ console.log('\n Shutting down...');
87
112
  client.disconnect();
88
113
  process.exit(0);
89
114
  });
90
115
  process.on('SIGTERM', () => {
91
- console.log('\n\n⚠️ Shutting down gracefully...');
116
+ console.log('\n Shutting down...');
92
117
  client.disconnect();
93
118
  process.exit(0);
94
119
  });
95
120
  }
96
121
  main().catch((error) => {
97
- console.error(`❌ Fatal error: ${error.message}`);
122
+ console.error(` Fatal error: ${error.message}`);
98
123
  process.exit(1);
99
124
  });
100
125
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -21,5 +21,4 @@ export declare class LockManager {
21
21
  clearLock(objectName: string, objectType: string, suffix?: string): boolean;
22
22
  clearAll(): number;
23
23
  getStats(): LockStats;
24
- printLockTable(operation?: string): void;
25
24
  }
@@ -22,12 +22,9 @@ export class LockManager {
22
22
  }
23
23
  const age = Date.now() - lock.timestamp;
24
24
  if (age > this.lockTTL) {
25
- console.log(` ⏰ Lock expired for ${key} (age: ${Math.round(age / 1000 / 60)}min)`);
26
25
  this.locks.delete(key);
27
26
  return null;
28
27
  }
29
- console.log(` 🔓 Found cached lock for ${key} (age: ${Math.round(age / 1000)}s)`);
30
- this.printLockTable('GET_LOCK (cache hit)');
31
28
  return lock;
32
29
  }
33
30
  saveLock(objectName, objectType, lockHandle, transportRequest, suffix = '') {
@@ -37,27 +34,14 @@ export class LockManager {
37
34
  transportRequest,
38
35
  timestamp: Date.now()
39
36
  });
40
- console.log(` 🔒 Lock cached for ${key}`);
41
- console.log(` lockHandle: ${lockHandle}`);
42
- console.log(` transportRequest: ${transportRequest || '(empty)'}`);
43
- this.printLockTable('SAVE_LOCK');
44
37
  }
45
38
  clearLock(objectName, objectType, suffix = '') {
46
39
  const key = this.buildKey(objectName, objectType, suffix);
47
- const deleted = this.locks.delete(key);
48
- if (deleted) {
49
- console.log(` 🗑️ Lock cleared for ${key}`);
50
- this.printLockTable('CLEAR_LOCK');
51
- }
52
- return deleted;
40
+ return this.locks.delete(key);
53
41
  }
54
42
  clearAll() {
55
43
  const count = this.locks.size;
56
44
  this.locks.clear();
57
- if (count > 0) {
58
- console.log(` 🧹 All locks cleared (${count} lock(s))`);
59
- this.printLockTable('CLEAR_ALL');
60
- }
61
45
  return count;
62
46
  }
63
47
  getStats() {
@@ -66,27 +50,5 @@ export class LockManager {
66
50
  locks: Array.from(this.locks.keys())
67
51
  };
68
52
  }
69
- printLockTable(operation = '') {
70
- console.log('');
71
- console.log(' ╔══════════════════════════════════════════════════════════════════════════════');
72
- console.log(' ║ 🔐 LOCK TABLE ' + (operation ? '(after ' + operation + ')' : '') + ' - ' + this.locks.size + ' active lock(s)');
73
- console.log(' ╠══════════════════════════════════════════════════════════════════════════════');
74
- if (this.locks.size === 0) {
75
- console.log(' ║ (empty - no locks cached)');
76
- }
77
- else {
78
- let idx = 1;
79
- for (const [key, lock] of this.locks) {
80
- const age = Math.round((Date.now() - lock.timestamp) / 1000);
81
- console.log(' ║ [' + idx + '] ' + key);
82
- console.log(' ║ Handle: ' + lock.lockHandle);
83
- console.log(' ║ Transport: ' + (lock.transportRequest || '(none)'));
84
- console.log(' ║ Age: ' + age + 's');
85
- idx++;
86
- }
87
- }
88
- console.log(' ╚══════════════════════════════════════════════════════════════════════════════');
89
- console.log('');
90
- }
91
53
  }
92
54
  //# sourceMappingURL=lock-manager.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"lock-manager.js","sourceRoot":"","sources":["../src/lock-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lock-manager.js","sourceRoot":"","sources":["../src/lock-manager.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAarC,MAAM,OAAO,WAAW;IACZ,KAAK,GAAG,IAAI,GAAG,EAAqB,CAAC;IACrC,OAAO,CAAS;IAExB;QACI,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,IAAI,EAAE,KAAK,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;IACxD,CAAC;IAED,QAAQ,CAAC,UAAkB,EAAE,UAAkB,EAAE,MAAM,GAAG,EAAE;QACxD,OAAO,MAAM;YACT,CAAC,CAAC,GAAG,UAAU,CAAC,WAAW,EAAE,IAAI,UAAU,CAAC,WAAW,EAAE,IAAI,MAAM,CAAC,WAAW,EAAE,EAAE;YACnF,CAAC,CAAC,GAAG,UAAU,CAAC,WAAW,EAAE,IAAI,UAAU,CAAC,WAAW,EAAE,EAAE,CAAC;IACpE,CAAC;IAED,OAAO,CAAC,UAAkB,EAAE,UAAkB,EAAE,MAAM,GAAG,EAAE;QACvD,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;QAC1D,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAEjC,IAAI,CAAC,IAAI,EAAE,CAAC;YACR,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC;QACxC,IAAI,GAAG,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;YACrB,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACvB,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,QAAQ,CAAC,UAAkB,EAAE,UAAkB,EAAE,UAAkB,EAAE,gBAAwB,EAAE,MAAM,GAAG,EAAE;QACtG,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;QAC1D,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE;YAChB,UAAU;YACV,gBAAgB;YAChB,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;SACxB,CAAC,CAAC;IACP,CAAC;IAED,SAAS,CAAC,UAAkB,EAAE,UAAkB,EAAE,MAAM,GAAG,EAAE;QACzD,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;QAC1D,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IAClC,CAAC;IAED,QAAQ;QACJ,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;QAC9B,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QACnB,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,QAAQ;QACJ,OAAO;YACH,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI;YAC5B,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;SACvC,CAAC;IACN,CAAC;CACJ"}
@@ -27,8 +27,6 @@ export declare class SAPClient {
27
27
  constructor(config?: SapActiveConfig);
28
28
  executeCallspec(callspec: Callspec): Promise<CallspecResult>;
29
29
  private extractDataFromResponse;
30
- private logRequest;
31
- private logResponse;
32
30
  fetchCsrfToken(): Promise<void>;
33
31
  clearSession(): void;
34
32
  ping(): Promise<{
@@ -40,12 +40,10 @@ export class SAPClient {
40
40
  }
41
41
  if (response.headers['x-csrf-token']) {
42
42
  this.csrfToken = response.headers['x-csrf-token'];
43
- console.log(` [KEY] CSRF token obtained: ${this.csrfToken.substring(0, 15)}...`);
44
43
  }
45
44
  return response;
46
45
  }, (error) => {
47
46
  if (error.response?.status === 401 || error.response?.status === 403) {
48
- console.error(` [WARN] Session error (${error.response.status}) - clearing session...`);
49
47
  this.clearSession();
50
48
  }
51
49
  return Promise.reject(error);
@@ -75,8 +73,6 @@ export class SAPClient {
75
73
  if (finalHeaders['Cookie'] === '<SESSION_COOKIE>') {
76
74
  delete finalHeaders['Cookie'];
77
75
  }
78
- console.log(` [HTTP] ${method} ${url}`);
79
- this.logRequest(method, url, finalHeaders, finalBody);
80
76
  try {
81
77
  const response = await this.client.request({
82
78
  method,
@@ -85,16 +81,8 @@ export class SAPClient {
85
81
  data: finalBody || undefined,
86
82
  timeout: 60000
87
83
  });
88
- console.log(` [OK] ${response.status} ${response.statusText}`);
89
- this.logResponse(response);
90
84
  const extractedData = this.extractDataFromResponse(response.data, extract_from_response);
91
85
  const { hasErrors, errorMessages } = parseSAPResponse(response.data);
92
- if (hasErrors) {
93
- console.log(` [WARN] Found ${errorMessages.length} error(s) in SAP response`);
94
- errorMessages.forEach((errMsg, index) => {
95
- console.log(` [ERR] Error ${index + 1}: ${errMsg}`);
96
- });
97
- }
98
86
  return {
99
87
  success: !hasErrors,
100
88
  status: response.status,
@@ -112,7 +100,6 @@ export class SAPClient {
112
100
  }
113
101
  catch (error) {
114
102
  const axiosErr = error;
115
- console.error(` [ERR] ${axiosErr.response?.status || 'Error'} ${axiosErr.message}`);
116
103
  return {
117
104
  success: false,
118
105
  status: axiosErr.response?.status,
@@ -123,92 +110,23 @@ export class SAPClient {
123
110
  }
124
111
  extractDataFromResponse(responseData, extractRules) {
125
112
  const extractedData = {};
126
- console.log(' [DEBUG] extract_from_response:', extractRules);
127
- console.log(' [DEBUG] response.data type:', typeof responseData);
128
- console.log(' [DEBUG] response.data (first 200 chars):', typeof responseData === 'string' ? responseData.substring(0, 200) : 'NOT A STRING');
129
113
  if (extractRules && typeof responseData === 'string') {
130
- console.log(' [DEBUG] Attempting to extract values from XML...');
131
114
  if (extractRules.lock_handle) {
132
- console.log(' [DEBUG] Looking for lockHandle in XML...');
133
115
  const lockHandleMatch = responseData.match(/<(?:adtcore:)?(?:lock[Hh]andle|LOCK_HANDLE)>(.*?)<\/(?:adtcore:)?(?:lock[Hh]andle|LOCK_HANDLE)>/);
134
116
  if (lockHandleMatch) {
135
117
  extractedData.lockHandle = lockHandleMatch[1];
136
- console.log(` [KEY] Extracted lock_handle: ${extractedData.lockHandle}`);
137
- }
138
- else {
139
- console.log(' [WARN] lockHandle NOT found in XML');
140
118
  }
141
119
  }
142
120
  if (extractRules.transport_request) {
143
- console.log(' [DEBUG] Looking for transportRequest in XML...');
144
121
  const transportMatch = responseData.match(/<(?:adtcore:)?(?:corrNr|CORRNR)>(.*?)<\/(?:adtcore:)?(?:corrNr|CORRNR)>/);
145
122
  if (transportMatch) {
146
123
  extractedData.transportRequest = transportMatch[1];
147
- console.log(` [KEY] Extracted transport_request: ${extractedData.transportRequest}`);
148
- }
149
- else {
150
- console.log(' [WARN] transportRequest NOT found in XML (or empty)');
151
124
  }
152
125
  }
153
126
  }
154
- else {
155
- console.log(` [WARN] No extraction: extract_from_response=${!!extractRules}, is string=${typeof responseData === 'string'}`);
156
- }
157
127
  return extractedData;
158
128
  }
159
- logRequest(method, url, headers, body) {
160
- console.log('\n ================================================================');
161
- console.log(' | [REQ] DETAILED REQUEST LOG');
162
- console.log(' |---------------------------------------------------------------');
163
- console.log(` | Method: ${method}`);
164
- console.log(` | URL: ${url}`);
165
- console.log(' |---------------------------------------------------------------');
166
- console.log(' | [HEADERS] REQUEST HEADERS:');
167
- Object.entries(headers).forEach(([key, value]) => {
168
- console.log(` | ${key}: ${value}`);
169
- });
170
- if (this.csrfToken) {
171
- console.log(' |---------------------------------------------------------------');
172
- console.log(` | [CSRF] CSRF Token: ${this.csrfToken}`);
173
- }
174
- if (body && (method === 'POST' || method === 'PUT')) {
175
- console.log(' |---------------------------------------------------------------');
176
- console.log(` | [BODY] REQUEST BODY (${body.length} chars):`);
177
- console.log(' |');
178
- body.split('\n').forEach(line => {
179
- console.log(` | ${line}`);
180
- });
181
- }
182
- console.log(' ================================================================\n');
183
- }
184
- logResponse(response) {
185
- console.log('\n ================================================================');
186
- console.log(' | [RES] DETAILED RESPONSE LOG');
187
- console.log(' |---------------------------------------------------------------');
188
- console.log(` | Status: ${response.status} ${response.statusText}`);
189
- console.log(' |---------------------------------------------------------------');
190
- console.log(' | [HEADERS] RESPONSE HEADERS:');
191
- if (response.headers) {
192
- Object.entries(response.headers).forEach(([key, value]) => {
193
- console.log(` | ${key}: ${value}`);
194
- });
195
- }
196
- console.log(' |---------------------------------------------------------------');
197
- console.log(` | [DATA] RESPONSE BODY (${typeof response.data === 'string' ? response.data.length : '?'} chars):`);
198
- if (typeof response.data === 'string' && response.data.length < 2000) {
199
- console.log(' |');
200
- response.data.split('\n').forEach((line) => {
201
- console.log(` | ${line}`);
202
- });
203
- }
204
- else if (typeof response.data === 'string') {
205
- console.log(' | (First 500 chars):');
206
- console.log(` | ${response.data.substring(0, 500)}...`);
207
- }
208
- console.log(' ================================================================\n');
209
- }
210
129
  async fetchCsrfToken() {
211
- console.log(' [KEY] Fetching CSRF token...');
212
130
  try {
213
131
  await this.client.get('/sap/bc/adt/compatibility/graph', {
214
132
  headers: { 'X-CSRF-Token': 'Fetch' }
@@ -224,7 +142,6 @@ export class SAPClient {
224
142
  clearSession() {
225
143
  this.csrfToken = null;
226
144
  this.cookies.clear();
227
- console.log(' [CLEAN] Session cleared');
228
145
  }
229
146
  async ping() {
230
147
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"sap-client.js","sourceRoot":"","sources":["../src/sap-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sap-client.js","sourceRoot":"","sources":["../src/sap-client.ts"],"names":[],"mappings":"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"}
@@ -22,22 +22,14 @@ export class WebSocketClient {
22
22
  }
23
23
  connect() {
24
24
  if (this.ws) {
25
- if (this.ws.readyState === WebSocket.CONNECTING) {
26
- console.log('⚠️ Already connecting, skipping duplicate connection attempt');
27
- return;
28
- }
29
- if (this.ws.readyState === WebSocket.OPEN) {
30
- console.log('⚠️ Already connected, skipping duplicate connection attempt');
25
+ if (this.ws.readyState === WebSocket.CONNECTING || this.ws.readyState === WebSocket.OPEN) {
31
26
  return;
32
27
  }
33
28
  }
34
29
  if (this.isReconnecting) {
35
- console.log('⚠️ Reconnection already scheduled, skipping duplicate attempt');
36
30
  return;
37
31
  }
38
- console.log('\n🔌 Connecting to MCP Cloud...');
39
- console.log(` URL: ${this.config.WS_URL}`);
40
- console.log(` API_KEY: ${this.config.API_KEY.substring(0, 15)}...`);
32
+ console.log(' Connecting...');
41
33
  this.ws = new WebSocket(this.config.WS_URL, {
42
34
  headers: {
43
35
  'Authorization': `Bearer ${this.config.API_KEY}`
@@ -49,7 +41,7 @@ export class WebSocketClient {
49
41
  this.ws.on('close', () => this.onClose());
50
42
  }
51
43
  onOpen() {
52
- console.log('Connected to MCP Cloud!\n');
44
+ console.log(' Connected!\n');
53
45
  if (this.reconnectTimer) {
54
46
  clearTimeout(this.reconnectTimer);
55
47
  this.reconnectTimer = null;
@@ -63,30 +55,22 @@ export class WebSocketClient {
63
55
  }
64
56
  const intervalMs = this.config.KEEPALIVE?.intervalMs || 300000;
65
57
  this.keepAliveTimer = setInterval(async () => {
66
- console.log(' 💓 Pinging SAP to keep session alive...');
67
58
  const result = await this.sapClient.ping();
68
- if (result.success) {
69
- console.log(` ✅ SAP ping successful (status: ${result.status})`);
70
- }
71
- else {
72
- console.error(` ⚠️ SAP ping failed: ${result.error}`);
59
+ if (!result.success) {
60
+ console.error(' Keep-alive failed');
73
61
  }
74
62
  }, intervalMs);
75
- const minutes = Math.floor(intervalMs / 60000);
76
- console.log(` 💓 SAP keep-alive started (ping every ${minutes} min)`);
77
63
  }
78
64
  stopKeepAlive() {
79
65
  if (this.keepAliveTimer) {
80
66
  clearInterval(this.keepAliveTimer);
81
67
  this.keepAliveTimer = null;
82
- console.log(' 💓 SAP keep-alive stopped');
83
68
  }
84
69
  }
85
70
  async onMessage(data) {
86
71
  try {
87
72
  const message = JSON.parse(data.toString());
88
73
  if (message.type === 'welcome') {
89
- console.log('👋 Welcome message:', message.message);
90
74
  return;
91
75
  }
92
76
  if (message.action && ['switch_system', 'reset_session', 'get_status', 'list_systems', 'refresh_systems'].includes(message.action)) {
@@ -104,10 +88,9 @@ export class WebSocketClient {
104
88
  }
105
89
  const { requestId, action, callspecs } = message;
106
90
  if (!requestId || !action) {
107
- console.error('❌ Invalid message format (missing requestId or action)');
108
91
  return;
109
92
  }
110
- console.log(`\n📥 Received command: ${action} (request: ${requestId})`);
93
+ console.log(` >> ${action}`);
111
94
  const executionResult = await this.executeCallspecs(action, callspecs || []);
112
95
  if (Array.isArray(callspecs) && Array.isArray(executionResult.results)) {
113
96
  for (let i = 0; i < callspecs.length; i++) {
@@ -121,50 +104,44 @@ export class WebSocketClient {
121
104
  if (objectName && objectType) {
122
105
  this.lockManager.clearLock(objectName, objectType);
123
106
  this.lockManager.clearLock(objectName, objectType, 'TESTCLASSES');
124
- console.log(` 🧹 Lock cache cleared for ${objectName} (UNLOCK succeeded)`);
125
107
  }
126
108
  }
127
109
  }
128
110
  }
129
111
  this.sendResponse(requestId, executionResult.allSuccessful, executionResult.results);
130
- console.log(`✅ Command completed: ${action}\n`);
112
+ console.log(` << ${action} ${executionResult.allSuccessful ? 'OK' : 'FAIL'}`);
131
113
  }
132
114
  catch (error) {
133
- console.error(`❌ Error processing message: ${error.message}`);
134
- console.error(` Stack: ${error.stack}`);
115
+ console.error(` Error: ${error.message}`);
135
116
  try {
136
117
  const parsedMessage = JSON.parse(data.toString());
137
118
  if (parsedMessage?.requestId) {
138
119
  this.sendResponse(parsedMessage.requestId, false, { error: error.message });
139
120
  }
140
121
  }
141
- catch (ignoreParseError) {
142
- console.error(' ⚠️ Could not send error response');
122
+ catch {
123
+ // could not send error response
143
124
  }
144
125
  }
145
126
  }
146
127
  async handleCommand(message) {
147
128
  if (message.command === 'clear_locks') {
148
- console.log('\n🧹 Clearing all locks...');
149
129
  this.lockManager.clearAll();
150
130
  return;
151
131
  }
152
132
  if (message.command === 'lock_stats') {
153
133
  const stats = this.lockManager.getStats();
154
- console.log('\n📊 Lock Statistics:');
155
- console.log(` Active locks: ${stats.activeLocks}`);
156
- console.log(` Locks: ${stats.locks.join(', ') || 'none'}`);
134
+ if (message.requestId) {
135
+ this.sendResponse(message.requestId, true, stats);
136
+ }
157
137
  return;
158
138
  }
159
139
  if (message.command === 'switch_system') {
160
- console.log(`\n🔄 Switching SAP system to: ${message.system}`);
161
140
  try {
162
141
  const result = switchSystem(message.system);
163
142
  this.sapClient = new SAPClient(CONFIG.SAP);
164
143
  this.lockManager.clearAll();
165
- console.log(`Switched to ${result.config.name}`);
166
- console.log(` 🔍 URL: ${result.config.baseUrl}`);
167
- console.log(` 🏢 Client: ${result.config.client}`);
144
+ console.log(` Switched to ${result.system}`);
168
145
  if (message.requestId) {
169
146
  this.sendResponse(message.requestId, true, {
170
147
  success: true,
@@ -175,7 +152,6 @@ export class WebSocketClient {
175
152
  }
176
153
  }
177
154
  catch (error) {
178
- console.error(` ❌ Switch failed: ${error.message}`);
179
155
  if (message.requestId) {
180
156
  this.sendResponse(message.requestId, false, {
181
157
  success: false,
@@ -186,10 +162,8 @@ export class WebSocketClient {
186
162
  return;
187
163
  }
188
164
  if (message.command === 'reset_session') {
189
- console.log('\n🔄 Resetting SAP session...');
190
165
  this.sapClient.clearSession();
191
166
  this.lockManager.clearAll();
192
- console.log(' ✅ Session reset complete');
193
167
  if (message.requestId) {
194
168
  this.sendResponse(message.requestId, true, {
195
169
  success: true,
@@ -199,7 +173,6 @@ export class WebSocketClient {
199
173
  return;
200
174
  }
201
175
  if (message.command === 'get_status') {
202
- console.log('\n📊 Getting system status...');
203
176
  const currentSystem = getActiveSystem();
204
177
  const lockStats = this.lockManager.getStats();
205
178
  const status = {
@@ -213,22 +186,14 @@ export class WebSocketClient {
213
186
  locks: lockStats.locks,
214
187
  connected: this.ws?.readyState === WebSocket.OPEN
215
188
  };
216
- console.log(` System: ${status.activeSystem} (${status.systemName})`);
217
- console.log(` Session: ${status.hasSession ? 'Active' : 'Not established'}`);
218
- console.log(` Locks: ${status.activeLocks}`);
219
189
  if (message.requestId) {
220
190
  this.sendResponse(message.requestId, true, status);
221
191
  }
222
192
  return;
223
193
  }
224
194
  if (message.command === 'list_systems') {
225
- console.log('\n📋 Listing available systems...');
226
195
  const systems = getAvailableSystems();
227
196
  const currentSystem = getActiveSystem();
228
- systems.forEach(sys => {
229
- const marker = sys.key === currentSystem ? ' ← active' : '';
230
- console.log(` ${sys.key}: ${sys.name} (${sys.baseUrl})${marker}`);
231
- });
232
197
  if (message.requestId) {
233
198
  this.sendResponse(message.requestId, true, {
234
199
  systems,
@@ -238,14 +203,12 @@ export class WebSocketClient {
238
203
  return;
239
204
  }
240
205
  if (message.command === 'refresh_systems') {
241
- console.log('\n🔄 Refreshing SAP environments from admin...');
242
206
  try {
243
207
  await fetchSapSystems();
244
208
  this.sapClient = new SAPClient(CONFIG.SAP);
245
209
  this.lockManager.clearAll();
246
210
  const systems = getAvailableSystems();
247
211
  const currentSystem = getActiveSystem();
248
- console.log(` ✅ Refreshed ${systems.length} system(s)`);
249
212
  if (message.requestId) {
250
213
  this.sendResponse(message.requestId, true, {
251
214
  success: true,
@@ -256,7 +219,6 @@ export class WebSocketClient {
256
219
  }
257
220
  }
258
221
  catch (error) {
259
- console.error(` ❌ Refresh failed: ${error.message}`);
260
222
  if (message.requestId) {
261
223
  this.sendResponse(message.requestId, false, {
262
224
  success: false,
@@ -268,7 +230,6 @@ export class WebSocketClient {
268
230
  }
269
231
  }
270
232
  async executeCallspecs(action, callspecs) {
271
- console.log(` Executing ${action} on SAP...`);
272
233
  if (Array.isArray(callspecs)) {
273
234
  const results = [];
274
235
  const extractedValues = {};
@@ -290,24 +251,12 @@ export class WebSocketClient {
290
251
  }
291
252
  }
292
253
  }
293
- if (objectName && objectType) {
294
- if (lockSuffix) {
295
- console.log(` 🏷️ Detected: ${objectName} (${objectType}:${lockSuffix})`);
296
- }
297
- else {
298
- console.log(` 🏷️ Detected: ${objectName} (${objectType})`);
299
- }
300
- }
301
254
  for (let i = 0; i < callspecs.length; i++) {
302
255
  const callspec = callspecs[i];
303
- console.log(`\n 📋 Processing callspec: ${callspec.name || callspec.step}`);
304
- console.log(' 🔍 DEBUG - Full callspec received:', JSON.stringify(callspec, null, 2));
305
- console.log(` Original URL: ${callspec.url}`);
306
256
  const isLock = isLockOperation(callspec);
307
257
  if (isLock && objectName && objectType) {
308
258
  const cachedLock = this.lockManager.getLock(objectName, objectType, lockSuffix);
309
259
  if (cachedLock) {
310
- console.log(' ⚡ SKIPPING LOCK - Using cached lock!');
311
260
  extractedValues.lockHandle = cachedLock.lockHandle;
312
261
  extractedValues.transportRequest = cachedLock.transportRequest;
313
262
  results.push({
@@ -320,84 +269,53 @@ export class WebSocketClient {
320
269
  transportRequest: cachedLock.transportRequest,
321
270
  }
322
271
  });
323
- console.log(' ✅ Using cached lock (skip HTTP request)');
324
272
  continue;
325
273
  }
326
274
  }
327
275
  const processedCallspec = { ...callspec };
328
276
  if (processedCallspec.url) {
329
- const originalUrl = processedCallspec.url;
330
277
  if (extractedValues.lockHandle) {
331
- console.log(` 🔑 Substituting <LOCK_HANDLE> with: ${extractedValues.lockHandle}`);
332
278
  processedCallspec.url = processedCallspec.url.replace(/<LOCK_HANDLE>/g, extractedValues.lockHandle);
333
279
  }
334
- else if (processedCallspec.url.includes('<LOCK_HANDLE>')) {
335
- console.log(' ⚠️ URL contains <LOCK_HANDLE> but no value available!');
336
- }
337
280
  if (extractedValues.transportRequest) {
338
- console.log(` 🔑 Substituting <TRANSPORT_REQUEST> with: ${extractedValues.transportRequest}`);
339
281
  processedCallspec.url = processedCallspec.url.replace(/<TRANSPORT_REQUEST>/g, extractedValues.transportRequest);
340
282
  }
341
- else if (processedCallspec.url.includes('<TRANSPORT_REQUEST>')) {
342
- console.log(' ⚠️ URL contains <TRANSPORT_REQUEST> but no value available!');
343
- }
344
- if (originalUrl !== processedCallspec.url) {
345
- console.log(` ✅ URL after substitution: ${processedCallspec.url}`);
346
- }
347
- else {
348
- console.log(' ℹ️ URL unchanged (no placeholders or no values)');
349
- }
350
283
  }
351
284
  if (processedCallspec.body === '<NAMING_JSON>' && extractedValues.namingJson) {
352
- console.log(' 📦 Substituting <NAMING_JSON> with naming JSON from Step 1');
353
285
  const namingWithPackage = { ...extractedValues.namingJson };
354
286
  if (processedCallspec.package) {
355
287
  namingWithPackage.metadata = namingWithPackage.metadata || {};
356
288
  namingWithPackage.metadata.package = processedCallspec.package;
357
- console.log(` 📦 Injected package: ${processedCallspec.package}`);
358
289
  }
359
290
  processedCallspec.body = JSON.stringify(namingWithPackage);
360
291
  }
361
- else if (processedCallspec.body === '<NAMING_JSON>' && !extractedValues.namingJson) {
362
- console.log(' ⚠️ Body contains <NAMING_JSON> but no naming JSON available!');
363
- }
364
292
  const result = await this.sapClient.executeCallspec(processedCallspec);
365
293
  if (result.success && result.data?.raw && typeof result.data.raw === 'string') {
366
294
  if (result.data.raw.includes('<SEVERITY>ERROR</SEVERITY>')) {
367
- console.log(' ⚠️ Validation returned SEVERITY=ERROR');
368
295
  const shortTextMatch = result.data.raw.match(/<SHORT_TEXT>([^<]*)<\/SHORT_TEXT>/);
369
296
  if (shortTextMatch) {
370
- console.log(`Error: ${shortTextMatch[1]}`);
297
+ console.log(` Error: ${shortTextMatch[1]}`);
371
298
  }
372
299
  result.success = false;
373
300
  result.validationError = true;
374
301
  }
375
302
  }
376
303
  results.push(result);
377
- console.log(` 📊 Result: success=${result.success}, status=${result.status}`);
378
304
  if (result.success && result.data) {
379
- console.log(' 🔍 Checking for extractable values...');
380
305
  if (result.data.lockHandle) {
381
306
  extractedValues.lockHandle = result.data.lockHandle;
382
- console.log(` 🔑 Extracted lock_handle: ${extractedValues.lockHandle}`);
383
307
  if (isLock && objectName && objectType) {
384
308
  this.lockManager.saveLock(objectName, objectType, result.data.lockHandle, result.data.transportRequest || '', lockSuffix);
385
309
  }
386
310
  }
387
311
  if (result.data.transportRequest) {
388
312
  extractedValues.transportRequest = result.data.transportRequest;
389
- console.log(` 🔑 Extracted transport_request: ${extractedValues.transportRequest}`);
390
313
  }
391
314
  if (result.data.raw && typeof result.data.raw === 'object') {
392
315
  extractedValues.namingJson = result.data.raw;
393
- console.log(' 📦 Saved naming JSON for RAP UI workflow');
394
- }
395
- if (!result.data.lockHandle && !result.data.transportRequest && !(result.data.raw && typeof result.data.raw === 'object')) {
396
- console.log(' ℹ️ No extractable values in this response');
397
316
  }
398
317
  }
399
318
  if (!result.success) {
400
- console.error(' ⚠️ Callspec failed, stopping execution');
401
319
  allSuccessful = false;
402
320
  break;
403
321
  }
@@ -411,7 +329,6 @@ export class WebSocketClient {
411
329
  }
412
330
  sendResponse(requestId, success, data) {
413
331
  if (!this.ws || this.ws.readyState !== WebSocket.OPEN) {
414
- console.error('❌ Cannot send response: WebSocket not connected');
415
332
  return;
416
333
  }
417
334
  this.ws.send(JSON.stringify({
@@ -421,29 +338,25 @@ export class WebSocketClient {
421
338
  data,
422
339
  timestamp: new Date().toISOString()
423
340
  }));
424
- console.log(` 📤 Response sent (success: ${success})`);
425
341
  }
426
342
  onError(error) {
427
- console.error(`❌ WebSocket error: ${error.message}`);
343
+ console.error(` Connection error: ${error.message}`);
428
344
  }
429
345
  onClose() {
430
- console.log('\n⚠️ Disconnected from MCP Cloud');
346
+ console.log(' Disconnected');
431
347
  this.ws = null;
432
348
  this.stopKeepAlive();
433
349
  this.sapClient.clearSession();
434
350
  this.lockManager.clearAll();
435
351
  const reconnectDelay = this.config.RETRY?.delayMs || 5000;
436
352
  if (!this.isReconnecting && !this.reconnectTimer) {
437
- console.log(` Reconnecting in ${reconnectDelay / 1000}s...`);
353
+ console.log(` Reconnecting in ${reconnectDelay / 1000}s...`);
438
354
  this.isReconnecting = true;
439
355
  this.reconnectTimer = setTimeout(() => {
440
356
  this.isReconnecting = false;
441
357
  this.connect();
442
358
  }, reconnectDelay);
443
359
  }
444
- else {
445
- console.log(' ⚠️ Reconnection already scheduled, skipping');
446
- }
447
360
  }
448
361
  disconnect() {
449
362
  if (this.reconnectTimer) {
@@ -1 +1 @@
1
- {"version":3,"file":"websocket-client.js","sourceRoot":"","sources":["../src/websocket-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"websocket-client.js","sourceRoot":"","sources":["../src/websocket-client.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@numends/abap-client",
3
- "version": "0.0.1",
3
+ "version": "0.0.3",
4
4
  "description": "WebSocket client for ABAP MCP - Connects to MCP Cloud and executes SAP ADT operations locally",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",