@mcp-abap-adt/core 7.1.1 → 7.2.0
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 +33 -0
- package/README.md +6 -9
- package/dist/lib/config/IServerConfig.d.ts +6 -0
- package/dist/lib/config/IServerConfig.d.ts.map +1 -1
- package/dist/lib/config/ServerConfigManager.d.ts.map +1 -1
- package/dist/lib/config/ServerConfigManager.js +22 -2
- package/dist/lib/config/ServerConfigManager.js.map +1 -1
- package/dist/server/SseServer.d.ts +9 -0
- package/dist/server/SseServer.d.ts.map +1 -1
- package/dist/server/SseServer.js +16 -4
- package/dist/server/SseServer.js.map +1 -1
- package/dist/server/StreamableHttpServer.d.ts +9 -0
- package/dist/server/StreamableHttpServer.d.ts.map +1 -1
- package/dist/server/StreamableHttpServer.js +15 -3
- package/dist/server/StreamableHttpServer.js.map +1 -1
- package/dist/server/dnsRebindingProtection.d.ts +21 -0
- package/dist/server/dnsRebindingProtection.d.ts.map +1 -0
- package/dist/server/dnsRebindingProtection.js +45 -0
- package/dist/server/dnsRebindingProtection.js.map +1 -0
- package/dist/server/launcher.js +6 -0
- package/dist/server/launcher.js.map +1 -1
- package/docs/architecture/ARCHITECTURE.md +8 -6
- package/docs/architecture/HANDLER_EXPORTER.md +6 -6
- package/docs/architecture/README.md +1 -1
- package/docs/architecture/TOOLS_ARCHITECTURE.md +13 -4
- package/docs/configuration/YAML_CONFIG.md +19 -23
- package/docs/deployment/GITHUB_ACTIONS.md +2 -2
- package/docs/development/ASSISTANT_GUIDELINES.md +1 -1
- package/docs/development/tests/TESTING_AUTH.md +3 -3
- package/docs/installation/CLINE_CONFIGURATION.md +17 -21
- package/docs/installation/INSTALLATION.md +46 -38
- package/docs/installation/examples/README.md +10 -10
- package/docs/installation/examples/SERVICE_KEY_SETUP.md +3 -3
- package/docs/installation/examples/cline-stdio-npx-config.json +1 -1
- package/docs/installation/platforms/INSTALL_LINUX.md +34 -27
- package/docs/installation/platforms/INSTALL_MACOS.md +33 -26
- package/docs/installation/platforms/INSTALL_WINDOWS.md +33 -26
- package/docs/user-guide/AVAILABLE_TOOLS.md +110 -4
- package/docs/user-guide/AVAILABLE_TOOLS_COMPACT.md +1 -1
- package/docs/user-guide/AVAILABLE_TOOLS_HIGH.md +51 -2
- package/docs/user-guide/AVAILABLE_TOOLS_LEGACY.md +128 -4
- package/docs/user-guide/AVAILABLE_TOOLS_LOW.md +1 -1
- package/docs/user-guide/AVAILABLE_TOOLS_READONLY.md +59 -2
- package/docs/user-guide/CLIENT_CONFIGURATION.md +4 -4
- package/docs/user-guide/CLI_OPTIONS.md +76 -71
- package/docs/user-guide/HANDLERS_MANAGEMENT.md +9 -9
- package/docs/user-guide/README.md +8 -8
- package/package.json +3 -3
|
@@ -29,7 +29,7 @@ Load server configuration from a YAML file instead of command-line arguments. If
|
|
|
29
29
|
mcp-abap-adt --conf=config.yaml
|
|
30
30
|
|
|
31
31
|
# Override YAML values with command-line arguments
|
|
32
|
-
mcp-abap-adt --conf=config.yaml --
|
|
32
|
+
mcp-abap-adt --conf=config.yaml --port=8080
|
|
33
33
|
```
|
|
34
34
|
|
|
35
35
|
**Benefits:**
|
|
@@ -126,7 +126,7 @@ mcp-abap-adt --transport=http
|
|
|
126
126
|
mcp-abap-adt --transport=sse
|
|
127
127
|
```
|
|
128
128
|
|
|
129
|
-
**Note:**
|
|
129
|
+
**Note:** The default transport is `stdio`; running bare `mcp-abap-adt` starts stdio. Select the transport explicitly with `--transport=stdio|http|sse`. There are no `--http`/`--sse` standalone shortcuts; configure host and port with the generic `--host`/`--port` flags (and the path flags `--path`/`--sse-path`/`--post-path`).
|
|
130
130
|
|
|
131
131
|
## SAP Connection Type
|
|
132
132
|
|
|
@@ -227,17 +227,17 @@ Used with `--transport=http` or `--transport=streamable-http`.
|
|
|
227
227
|
|
|
228
228
|
### Port Configuration
|
|
229
229
|
|
|
230
|
-
**--
|
|
230
|
+
**--port=\<port\>**
|
|
231
231
|
|
|
232
232
|
HTTP server port (default: 3000).
|
|
233
233
|
|
|
234
234
|
```bash
|
|
235
|
-
mcp-abap-adt --transport=http --
|
|
235
|
+
mcp-abap-adt --transport=http --port=8080
|
|
236
236
|
```
|
|
237
237
|
|
|
238
238
|
### Host Binding
|
|
239
239
|
|
|
240
|
-
**--
|
|
240
|
+
**--host=\<host\>**
|
|
241
241
|
|
|
242
242
|
HTTP server host address (default: 127.0.0.1, localhost only for security).
|
|
243
243
|
|
|
@@ -247,10 +247,10 @@ HTTP server host address (default: 127.0.0.1, localhost only for security).
|
|
|
247
247
|
|
|
248
248
|
```bash
|
|
249
249
|
# Bind to localhost only (default, secure)
|
|
250
|
-
mcp-abap-adt --transport=http --
|
|
250
|
+
mcp-abap-adt --transport=http --host=127.0.0.1
|
|
251
251
|
|
|
252
252
|
# Bind to all interfaces (less secure, client must provide all headers)
|
|
253
|
-
mcp-abap-adt --transport=http --
|
|
253
|
+
mcp-abap-adt --transport=http --host=0.0.0.0
|
|
254
254
|
```
|
|
255
255
|
|
|
256
256
|
**When using 0.0.0.0:**
|
|
@@ -258,56 +258,56 @@ mcp-abap-adt --transport=http --http-host=0.0.0.0
|
|
|
258
258
|
- Server acts as a simple proxy - no default destination lookup
|
|
259
259
|
- All responsibility for connection configuration is on the client
|
|
260
260
|
|
|
261
|
-
###
|
|
261
|
+
### Path Configuration
|
|
262
262
|
|
|
263
|
-
**--http-
|
|
263
|
+
**--path=\<path\>** (alias **--http-path=\<path\>**)
|
|
264
264
|
|
|
265
|
-
|
|
265
|
+
HTTP endpoint path (default: /mcp/stream/http).
|
|
266
266
|
|
|
267
267
|
```bash
|
|
268
|
-
mcp-abap-adt --transport=http --http
|
|
268
|
+
mcp-abap-adt --transport=http --path=/mcp/stream/http
|
|
269
269
|
```
|
|
270
270
|
|
|
271
|
-
###
|
|
271
|
+
### Response Format
|
|
272
272
|
|
|
273
|
-
**--http-
|
|
273
|
+
**--http-json-response**
|
|
274
274
|
|
|
275
|
-
|
|
275
|
+
Enable JSON response format.
|
|
276
276
|
|
|
277
277
|
```bash
|
|
278
|
-
|
|
279
|
-
mcp-abap-adt --transport=http --http-allowed-origins=http://localhost:3000
|
|
280
|
-
|
|
281
|
-
# Multiple origins
|
|
282
|
-
mcp-abap-adt --transport=http --http-allowed-origins=http://localhost:3000,https://app.example.com
|
|
278
|
+
mcp-abap-adt --transport=http --http-json-response
|
|
283
279
|
```
|
|
284
280
|
|
|
285
|
-
|
|
281
|
+
### DNS-Rebinding Protection (HTTP)
|
|
286
282
|
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
```bash
|
|
290
|
-
mcp-abap-adt --transport=http --http-allowed-hosts=localhost,myapp.local
|
|
291
|
-
```
|
|
283
|
+
DNS-rebinding protection (Host + Origin allowlist; NOT browser CORS — no Access-Control-Allow-Origin headers are emitted):
|
|
292
284
|
|
|
293
|
-
|
|
285
|
+
- `--http-allowed-hosts=<list>` Comma-separated exact Host header values to allow,
|
|
286
|
+
including port (e.g. `localhost:3000`).
|
|
287
|
+
- `--http-allowed-origins=<list>` Comma-separated exact Origin header values to allow,
|
|
288
|
+
including scheme (e.g. `https://app.example.com`).
|
|
289
|
+
- `--http-enable-dns-protection` Enable validation. Required for the allowlists to take
|
|
290
|
+
effect; needs at least one of the two lists set.
|
|
291
|
+
A non-allowlisted Host/Origin gets HTTP 403.
|
|
294
292
|
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
293
|
+
Only effective when `--http-enable-dns-protection` is set AND at least one allowlist is non-empty.
|
|
294
|
+
Env vars: `MCP_HTTP_ALLOWED_HOSTS`, `MCP_HTTP_ALLOWED_ORIGINS`, `MCP_HTTP_ENABLE_DNS_PROTECTION`.
|
|
295
|
+
YAML keys: `http.allowed-hosts`, `http.allowed-origins`, `http.enable-dns-protection`.
|
|
298
296
|
|
|
299
297
|
```bash
|
|
300
|
-
|
|
298
|
+
# Enable DNS-rebinding protection for HTTP transport
|
|
299
|
+
mcp-abap-adt --transport=http \
|
|
300
|
+
--http-enable-dns-protection \
|
|
301
|
+
--http-allowed-hosts=localhost:3000 \
|
|
302
|
+
--http-allowed-origins=https://app.example.com
|
|
301
303
|
```
|
|
302
304
|
|
|
303
305
|
### Complete HTTP Example
|
|
304
306
|
|
|
305
307
|
```bash
|
|
306
308
|
mcp-abap-adt --transport=http \
|
|
307
|
-
--
|
|
308
|
-
--
|
|
309
|
-
--http-allowed-origins=http://localhost:3000,https://myapp.com \
|
|
310
|
-
--http-enable-dns-protection \
|
|
309
|
+
--port=8080 \
|
|
310
|
+
--host=0.0.0.0 \
|
|
311
311
|
--env-path=~/configs/sap-prod.env
|
|
312
312
|
```
|
|
313
313
|
|
|
@@ -317,17 +317,17 @@ Used with `mcp-abap-adt --transport=sse` or `--transport=sse`.
|
|
|
317
317
|
|
|
318
318
|
### Port Configuration
|
|
319
319
|
|
|
320
|
-
**--
|
|
320
|
+
**--port=\<port\>**
|
|
321
321
|
|
|
322
322
|
SSE server port (default: 3001).
|
|
323
323
|
|
|
324
324
|
```bash
|
|
325
|
-
mcp-abap-adt --transport=sse --
|
|
325
|
+
mcp-abap-adt --transport=sse --port=8081
|
|
326
326
|
```
|
|
327
327
|
|
|
328
328
|
### Host Binding
|
|
329
329
|
|
|
330
|
-
**--
|
|
330
|
+
**--host=\<host\>**
|
|
331
331
|
|
|
332
332
|
SSE server host address (default: 127.0.0.1, localhost only for security).
|
|
333
333
|
|
|
@@ -337,10 +337,10 @@ SSE server host address (default: 127.0.0.1, localhost only for security).
|
|
|
337
337
|
|
|
338
338
|
```bash
|
|
339
339
|
# Bind to localhost only (default, secure)
|
|
340
|
-
mcp-abap-adt --transport=sse --
|
|
340
|
+
mcp-abap-adt --transport=sse --host=127.0.0.1
|
|
341
341
|
|
|
342
342
|
# Bind to all interfaces (less secure, client must provide all headers)
|
|
343
|
-
mcp-abap-adt --transport=sse --
|
|
343
|
+
mcp-abap-adt --transport=sse --host=0.0.0.0
|
|
344
344
|
```
|
|
345
345
|
|
|
346
346
|
**When using 0.0.0.0:**
|
|
@@ -348,42 +348,50 @@ mcp-abap-adt --transport=sse --sse-host=0.0.0.0
|
|
|
348
348
|
- Server acts as a simple proxy - no default destination lookup
|
|
349
349
|
- All responsibility for connection configuration is on the client
|
|
350
350
|
|
|
351
|
-
###
|
|
351
|
+
### Path Configuration
|
|
352
352
|
|
|
353
|
-
**--sse-
|
|
353
|
+
**--sse-path=\<path\>**
|
|
354
354
|
|
|
355
|
-
|
|
355
|
+
SSE connection path (default: /sse).
|
|
356
356
|
|
|
357
|
-
|
|
358
|
-
mcp-abap-adt --transport=sse --sse-allowed-origins=http://localhost:3000,https://app.example.com
|
|
359
|
-
```
|
|
357
|
+
**--post-path=\<path\>**
|
|
360
358
|
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
Comma-separated list of allowed hosts.
|
|
359
|
+
SSE message post path (default: /messages).
|
|
364
360
|
|
|
365
361
|
```bash
|
|
366
|
-
mcp-abap-adt --transport=sse --sse-
|
|
362
|
+
mcp-abap-adt --transport=sse --sse-path=/sse --post-path=/messages
|
|
367
363
|
```
|
|
368
364
|
|
|
369
|
-
###
|
|
365
|
+
### DNS-Rebinding Protection (SSE)
|
|
366
|
+
|
|
367
|
+
DNS-rebinding protection (Host + Origin allowlist; NOT browser CORS — no Access-Control-Allow-Origin headers are emitted):
|
|
370
368
|
|
|
371
|
-
|
|
369
|
+
- `--sse-allowed-hosts=<list>` Comma-separated exact Host header values to allow,
|
|
370
|
+
including port (e.g. `localhost:3001`).
|
|
371
|
+
- `--sse-allowed-origins=<list>` Comma-separated exact Origin header values to allow,
|
|
372
|
+
including scheme (e.g. `https://app.example.com`).
|
|
373
|
+
- `--sse-enable-dns-protection` Enable validation. Required for the allowlists to take
|
|
374
|
+
effect; needs at least one of the two lists set.
|
|
375
|
+
A non-allowlisted Host/Origin gets HTTP 403.
|
|
372
376
|
|
|
373
|
-
|
|
377
|
+
Only effective when `--sse-enable-dns-protection` is set AND at least one allowlist is non-empty.
|
|
378
|
+
Env vars: `MCP_SSE_ALLOWED_HOSTS`, `MCP_SSE_ALLOWED_ORIGINS`, `MCP_SSE_ENABLE_DNS_PROTECTION`.
|
|
379
|
+
YAML keys: `sse.allowed-hosts`, `sse.allowed-origins`, `sse.enable-dns-protection`.
|
|
374
380
|
|
|
375
381
|
```bash
|
|
376
|
-
|
|
382
|
+
# Enable DNS-rebinding protection for SSE transport
|
|
383
|
+
mcp-abap-adt --transport=sse \
|
|
384
|
+
--sse-enable-dns-protection \
|
|
385
|
+
--sse-allowed-hosts=localhost:3001 \
|
|
386
|
+
--sse-allowed-origins=https://app.example.com
|
|
377
387
|
```
|
|
378
388
|
|
|
379
389
|
### Complete SSE Example
|
|
380
390
|
|
|
381
391
|
```bash
|
|
382
392
|
mcp-abap-adt --transport=sse \
|
|
383
|
-
--
|
|
384
|
-
--
|
|
385
|
-
--sse-allowed-origins=http://localhost:3000 \
|
|
386
|
-
--sse-enable-dns-protection \
|
|
393
|
+
--port=3001 \
|
|
394
|
+
--host=0.0.0.0 \
|
|
387
395
|
--env-path=~/configs/sap-dev.env
|
|
388
396
|
```
|
|
389
397
|
|
|
@@ -406,17 +414,17 @@ Alternative to command line arguments. Environment variables can be set in shell
|
|
|
406
414
|
- `MCP_HTTP_PORT` - Default HTTP port
|
|
407
415
|
- `MCP_HTTP_HOST` - Default HTTP host (default: 127.0.0.1)
|
|
408
416
|
- `MCP_HTTP_ENABLE_JSON_RESPONSE` - Enable JSON responses (true|false)
|
|
409
|
-
- `
|
|
410
|
-
- `
|
|
411
|
-
- `MCP_HTTP_ENABLE_DNS_PROTECTION` - Enable
|
|
417
|
+
- `MCP_HTTP_ALLOWED_HOSTS` - Comma-separated exact Host header values (DNS-rebinding protection; includes port, e.g. `localhost:3000`)
|
|
418
|
+
- `MCP_HTTP_ALLOWED_ORIGINS` - Comma-separated exact Origin header values (DNS-rebinding protection; includes scheme, e.g. `https://app.example.com`)
|
|
419
|
+
- `MCP_HTTP_ENABLE_DNS_PROTECTION` - Enable Host/Origin allowlist validation (true|false; NOT browser CORS — no Access-Control-Allow-Origin headers are emitted)
|
|
412
420
|
|
|
413
421
|
### SSE Transport
|
|
414
422
|
|
|
415
423
|
- `MCP_SSE_PORT` - Default SSE port
|
|
416
424
|
- `MCP_SSE_HOST` - Default SSE host
|
|
417
|
-
- `
|
|
418
|
-
- `
|
|
419
|
-
- `MCP_SSE_ENABLE_DNS_PROTECTION` - Enable
|
|
425
|
+
- `MCP_SSE_ALLOWED_HOSTS` - Comma-separated exact Host header values (DNS-rebinding protection; includes port, e.g. `localhost:3001`)
|
|
426
|
+
- `MCP_SSE_ALLOWED_ORIGINS` - Comma-separated exact Origin header values (DNS-rebinding protection; includes scheme, e.g. `https://app.example.com`)
|
|
427
|
+
- `MCP_SSE_ENABLE_DNS_PROTECTION` - Enable Host/Origin allowlist validation (true|false; NOT browser CORS — no Access-Control-Allow-Origin headers are emitted)
|
|
420
428
|
|
|
421
429
|
### SAP Connection
|
|
422
430
|
|
|
@@ -459,7 +467,6 @@ These are typically set in `.env` file:
|
|
|
459
467
|
**Shell environment:**
|
|
460
468
|
```bash
|
|
461
469
|
export MCP_HTTP_PORT=8080
|
|
462
|
-
export MCP_HTTP_ALLOWED_ORIGINS=http://localhost:3000
|
|
463
470
|
mcp-abap-adt --transport=http
|
|
464
471
|
```
|
|
465
472
|
|
|
@@ -467,7 +474,6 @@ mcp-abap-adt --transport=http
|
|
|
467
474
|
```bash
|
|
468
475
|
# ~/.mcp-abap-adt.env
|
|
469
476
|
MCP_HTTP_PORT=8080
|
|
470
|
-
MCP_HTTP_ALLOWED_ORIGINS=http://localhost:3000,https://myapp.com
|
|
471
477
|
|
|
472
478
|
# Use it
|
|
473
479
|
mcp-abap-adt --transport=http --env-path ~/.mcp-abap-adt.env
|
|
@@ -477,7 +483,7 @@ mcp-abap-adt --transport=http --env-path ~/.mcp-abap-adt.env
|
|
|
477
483
|
|
|
478
484
|
When the same option is specified multiple ways, this is the priority order (highest to lowest):
|
|
479
485
|
|
|
480
|
-
1. **Command line arguments** (`--
|
|
486
|
+
1. **Command line arguments** (`--port=8080`)
|
|
481
487
|
2. **Environment variables** (`MCP_HTTP_PORT=8080`)
|
|
482
488
|
3. **Default values**
|
|
483
489
|
|
|
@@ -485,7 +491,7 @@ Example:
|
|
|
485
491
|
```bash
|
|
486
492
|
# Port 9000 wins (command line)
|
|
487
493
|
export MCP_HTTP_PORT=8080
|
|
488
|
-
mcp-abap-adt --transport=http --
|
|
494
|
+
mcp-abap-adt --transport=http --port=9000
|
|
489
495
|
```
|
|
490
496
|
|
|
491
497
|
## Common Usage Patterns
|
|
@@ -544,8 +550,7 @@ EOF
|
|
|
544
550
|
# Run with explicit config
|
|
545
551
|
mcp-abap-adt --transport=http \
|
|
546
552
|
--env-path=/etc/mcp-abap-adt/prod.env \
|
|
547
|
-
--
|
|
548
|
-
--http-enable-dns-protection
|
|
553
|
+
--port=8080
|
|
549
554
|
```
|
|
550
555
|
|
|
551
556
|
### Multi-Environment
|
|
@@ -560,7 +565,7 @@ mcp-abap-adt --transport=http \
|
|
|
560
565
|
# Quick switch
|
|
561
566
|
alias mcp-dev='mcp-abap-adt --env-path=~/sap-configs/dev.env'
|
|
562
567
|
alias mcp-test='mcp-abap-adt --env-path=~/sap-configs/test.env'
|
|
563
|
-
alias mcp-prod='mcp-abap-adt --transport=http --env-path=~/sap-configs/prod.env --
|
|
568
|
+
alias mcp-prod='mcp-abap-adt --transport=http --env-path=~/sap-configs/prod.env --port=8080'
|
|
564
569
|
|
|
565
570
|
# Use
|
|
566
571
|
mcp-dev
|
|
@@ -590,7 +595,7 @@ mcp-abap-adt 2>&1 | grep MCP-ENV
|
|
|
590
595
|
lsof -i :3000
|
|
591
596
|
|
|
592
597
|
# Use different port
|
|
593
|
-
mcp-abap-adt --transport=http --
|
|
598
|
+
mcp-abap-adt --transport=http --port=3001
|
|
594
599
|
```
|
|
595
600
|
|
|
596
601
|
### Can't Find .env File
|
|
@@ -62,7 +62,7 @@ V2 server supports flexible handler set configuration through the `--exposition`
|
|
|
62
62
|
- Object search
|
|
63
63
|
- Code search
|
|
64
64
|
|
|
65
|
-
6. **system** -
|
|
65
|
+
6. **system** - Included only when the exposition includes `readonly` (added alongside the read-only group)
|
|
66
66
|
- Where-used analysis (GetWhereUsed)
|
|
67
67
|
- Type information (GetTypeInfo)
|
|
68
68
|
- Object info (GetObjectInfo)
|
|
@@ -75,25 +75,25 @@ V2 server supports flexible handler set configuration through the `--exposition`
|
|
|
75
75
|
|
|
76
76
|
## Usage
|
|
77
77
|
|
|
78
|
-
**Note:** `search`
|
|
78
|
+
**Note:** The `search` handler group is ALWAYS included regardless of `--exposition`. The `system` handler group is included only when the exposition contains `readonly` (it is registered together with the read-only group). The default exposition is `readonly,high`, so both are present by default.
|
|
79
79
|
|
|
80
80
|
### Command Line
|
|
81
81
|
|
|
82
82
|
```bash
|
|
83
|
-
# Default: readonly + high (+ search + system
|
|
84
|
-
node bin/mcp-abap-adt
|
|
83
|
+
# Default: readonly + high (+ search always; + system because readonly is present)
|
|
84
|
+
node bin/mcp-abap-adt.js --transport=stdio --env-path=.env
|
|
85
85
|
|
|
86
86
|
# Only read-only operations (safest)
|
|
87
|
-
node bin/mcp-abap-adt
|
|
87
|
+
node bin/mcp-abap-adt.js --transport=stdio --env-path=.env --exposition=readonly
|
|
88
88
|
|
|
89
89
|
# Read-only + high-level writes (recommended)
|
|
90
|
-
node bin/mcp-abap-adt
|
|
90
|
+
node bin/mcp-abap-adt.js --transport=stdio --env-path=.env --exposition=readonly,high
|
|
91
91
|
|
|
92
92
|
# Compact facade only
|
|
93
|
-
node bin/mcp-abap-adt
|
|
93
|
+
node bin/mcp-abap-adt.js --transport=stdio --env-path=.env --exposition=compact
|
|
94
94
|
|
|
95
95
|
# Low-level writes (use instead of `high`, not together)
|
|
96
|
-
node bin/mcp-abap-adt
|
|
96
|
+
node bin/mcp-abap-adt.js --transport=stdio --env-path=.env --exposition=readonly,low
|
|
97
97
|
```
|
|
98
98
|
|
|
99
99
|
#### Validation rules
|
|
@@ -129,7 +129,7 @@ Set `MCP_EXPOSITION`:
|
|
|
129
129
|
|
|
130
130
|
```bash
|
|
131
131
|
export MCP_EXPOSITION=readonly,high
|
|
132
|
-
node bin/mcp-abap-adt
|
|
132
|
+
node bin/mcp-abap-adt.js --transport=stdio --env-path=.env
|
|
133
133
|
```
|
|
134
134
|
|
|
135
135
|
## Generating Handler Documentation
|
|
@@ -14,11 +14,11 @@ Install from a pre-built `.tgz` package:
|
|
|
14
14
|
|
|
15
15
|
```bash
|
|
16
16
|
# Install globally
|
|
17
|
-
npm install -g ./
|
|
17
|
+
npm install -g ./mcp-abap-adt-core-<version>.tgz
|
|
18
18
|
|
|
19
19
|
# Available commands:
|
|
20
|
-
mcp-abap-adt #
|
|
21
|
-
mcp-abap-adt --transport=
|
|
20
|
+
mcp-abap-adt # stdio transport (default, for MCP clients)
|
|
21
|
+
mcp-abap-adt --transport=http # HTTP server
|
|
22
22
|
mcp-abap-adt --transport=sse # SSE server
|
|
23
23
|
```
|
|
24
24
|
|
|
@@ -33,7 +33,7 @@ SAP_JWT_TOKEN=your-jwt-token
|
|
|
33
33
|
EOF
|
|
34
34
|
|
|
35
35
|
# Run HTTP server
|
|
36
|
-
mcp-abap-adt --transport=http --port
|
|
36
|
+
mcp-abap-adt --transport=http --port=3000
|
|
37
37
|
```
|
|
38
38
|
|
|
39
39
|
See [Installation Guide](../installation/INSTALLATION.md#package-installation-details) for detailed instructions.
|
|
@@ -91,7 +91,7 @@ objects for each package. Each object includes:
|
|
|
91
91
|
|
|
92
92
|
After installing from package, these commands are available:
|
|
93
93
|
|
|
94
|
-
### `mcp-abap-adt` - Default
|
|
94
|
+
### `mcp-abap-adt` - Default stdio transport
|
|
95
95
|
```bash
|
|
96
96
|
mcp-abap-adt [--env <destination>] [--env-path /path/to/.env]
|
|
97
97
|
```
|
|
@@ -113,15 +113,15 @@ Starts HTTP server with Server-Sent Events transport.
|
|
|
113
113
|
|
|
114
114
|
### Example 1: HTTP Server on Port 8080
|
|
115
115
|
```bash
|
|
116
|
-
mcp-abap-adt --transport=http --port
|
|
116
|
+
mcp-abap-adt --transport=http --port=8080
|
|
117
117
|
```
|
|
118
118
|
|
|
119
119
|
### Example 2: SSE Server Accessible from Network
|
|
120
120
|
```bash
|
|
121
|
-
mcp-abap-adt --transport=sse --host
|
|
121
|
+
mcp-abap-adt --transport=sse --host=0.0.0.0 --port=3000
|
|
122
122
|
```
|
|
123
123
|
|
|
124
124
|
### Example 3: Custom Environment File
|
|
125
125
|
```bash
|
|
126
|
-
mcp-abap-adt --transport=http --env-path /opt/config/.env.production --port
|
|
126
|
+
mcp-abap-adt --transport=http --env-path /opt/config/.env.production --port=8080
|
|
127
127
|
```
|
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": "7.
|
|
4
|
+
"version": "7.2.0",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
7
7
|
"exports": {
|
|
@@ -50,6 +50,7 @@
|
|
|
50
50
|
"shared:setup": "jest --testPathPatterns='admin/shared-deps/setup' --testPathIgnorePatterns='[]' --runInBand --passWithNoTests",
|
|
51
51
|
"shared:teardown": "jest --testPathPatterns='admin/shared-deps/teardown' --testPathIgnorePatterns='[]' --runInBand --passWithNoTests",
|
|
52
52
|
"shared:check": "jest --testPathPatterns='admin/shared-deps/check' --testPathIgnorePatterns='[]' --passWithNoTests",
|
|
53
|
+
"polygon:backup": "adt-backup backup --package ZMCP_SHR_PKG --env-path trial.env --output tests/fixtures/polygon.backup.yaml",
|
|
53
54
|
"lint": "npx biome check --write src",
|
|
54
55
|
"lint:check": "npx biome check src",
|
|
55
56
|
"format": "npx biome format --write src",
|
|
@@ -169,8 +170,7 @@
|
|
|
169
170
|
"CHANGELOG.md"
|
|
170
171
|
],
|
|
171
172
|
"bin": {
|
|
172
|
-
"mcp-abap-adt": "./bin/mcp-abap-adt.js"
|
|
173
|
-
"mcp-abap-adt-v2": "./bin/mcp-abap-adt-v2.js"
|
|
173
|
+
"mcp-abap-adt": "./bin/mcp-abap-adt.js"
|
|
174
174
|
},
|
|
175
175
|
"jest": {
|
|
176
176
|
"preset": "ts-jest",
|