@futdevpro/nts-dynamo 1.15.298 → 1.15.304
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/build/_collections/operation-rest.util.d.ts +5 -1
- package/build/_collections/operation-rest.util.d.ts.map +1 -1
- package/build/_collections/operation-rest.util.js +19 -5
- package/build/_collections/operation-rest.util.js.map +1 -1
- package/build/_modules/mcp/_collections/mcp-tool-definition.util.d.ts +83 -0
- package/build/_modules/mcp/_collections/mcp-tool-definition.util.d.ts.map +1 -0
- package/build/_modules/mcp/_collections/mcp-tool-definition.util.js +215 -0
- package/build/_modules/mcp/_collections/mcp-tool-definition.util.js.map +1 -0
- package/build/_modules/mcp/_models/interfaces/dynts-mcp.interface.d.ts +17 -1
- package/build/_modules/mcp/_models/interfaces/dynts-mcp.interface.d.ts.map +1 -1
- package/build/_modules/mcp/_models/interfaces/dynts-mcp.interface.js +0 -11
- package/build/_modules/mcp/_models/interfaces/dynts-mcp.interface.js.map +1 -1
- package/build/_modules/mcp/_services/dynts-mcp.adapter.d.ts +6 -2
- package/build/_modules/mcp/_services/dynts-mcp.adapter.d.ts.map +1 -1
- package/build/_modules/mcp/_services/dynts-mcp.adapter.js +18 -11
- package/build/_modules/mcp/_services/dynts-mcp.adapter.js.map +1 -1
- package/build/_modules/mcp/index.d.ts +1 -0
- package/build/_modules/mcp/index.d.ts.map +1 -1
- package/build/_modules/mcp/index.js +1 -0
- package/build/_modules/mcp/index.js.map +1 -1
- package/package.json +2 -2
|
@@ -45,7 +45,11 @@ export declare class DyNTS_OperationRest_Util {
|
|
|
45
45
|
private static readIfMatch;
|
|
46
46
|
/** Reads a single header value (the first one when repeated). */
|
|
47
47
|
private static readHeader;
|
|
48
|
-
/**
|
|
48
|
+
/**
|
|
49
|
+
* A `true`/`false` flag; absent = `false`. Any other text is refused, never read as `false`: a `dryRun=1` would
|
|
50
|
+
* otherwise run the real write (the MCP adapter refuses a non-boolean `dryRun` the same way).
|
|
51
|
+
* @throws 400 `DyNTS-OPR-INT`
|
|
52
|
+
*/
|
|
49
53
|
private static readFlag;
|
|
50
54
|
/** Builds a coded 400 input error. */
|
|
51
55
|
private static inputError;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"operation-rest.util.d.ts","sourceRoot":"","sources":["../../src/_collections/operation-rest.util.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAE5C,OAAO,EACgC,sBAAsB,EAAE,uBAAuB,EAErF,MAAM,uBAAuB,CAAC;AAW/B,kGAAkG;AAClG,eAAO,MAAM,6BAA6B,EAAE,MAA+B,CAAC;AAE5E;;;;;;;;;;;;;;;;GAgBG;AACH,qBAAa,wBAAwB;IACnC;;;;;OAKG;WACU,MAAM,CACjB,SAAS,EAAE,uBAAuB,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,OAAO,CAAC,EAC/D,GAAG,EAAE,OAAO,EACZ,GAAG,EAAE,QAAQ,GACZ,OAAO,CAAC,IAAI,CAAC;IAYhB;;;OAGG;IACH,MAAM,CAAC,YAAY,CAAC,GAAG,EAAE,OAAO,GAAG,sBAAsB;
|
|
1
|
+
{"version":3,"file":"operation-rest.util.d.ts","sourceRoot":"","sources":["../../src/_collections/operation-rest.util.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAE5C,OAAO,EACgC,sBAAsB,EAAE,uBAAuB,EAErF,MAAM,uBAAuB,CAAC;AAW/B,kGAAkG;AAClG,eAAO,MAAM,6BAA6B,EAAE,MAA+B,CAAC;AAE5E;;;;;;;;;;;;;;;;GAgBG;AACH,qBAAa,wBAAwB;IACnC;;;;;OAKG;WACU,MAAM,CACjB,SAAS,EAAE,uBAAuB,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,OAAO,CAAC,EAC/D,GAAG,EAAE,OAAO,EACZ,GAAG,EAAE,QAAQ,GACZ,OAAO,CAAC,IAAI,CAAC;IAYhB;;;OAGG;IACH,MAAM,CAAC,YAAY,CAAC,GAAG,EAAE,OAAO,GAAG,sBAAsB;IAqBzD;;;;;OAKG;IACH,MAAM,CAAC,WAAW,CAAC,SAAS,EAAE,uBAAuB,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE,OAAO,GAAG,OAAO,EAAE;IA0B5G,+DAA+D;IAC/D,OAAO,CAAC,MAAM,CAAC,MAAM;IAkDrB,kEAAkE;IAClE,OAAO,CAAC,MAAM,CAAC,WAAW;IAM1B,iEAAiE;IACjE,OAAO,CAAC,MAAM,CAAC,UAAU;IAOzB;;;;OAIG;IACH,OAAO,CAAC,MAAM,CAAC,QAAQ;IAcvB,sCAAsC;IACtC,OAAO,CAAC,MAAM,CAAC,UAAU;CAU1B"}
|
|
@@ -55,8 +55,11 @@ class DyNTS_OperationRest_Util {
|
|
|
55
55
|
clientUserId: identity.clientUserId,
|
|
56
56
|
apiKeyScopes: identity.apiKeyScopes,
|
|
57
57
|
ifMatch: DyNTS_OperationRest_Util.readIfMatch(req),
|
|
58
|
-
|
|
59
|
-
|
|
58
|
+
// both are read (and checked), so a malformed header is refused even next to a valid query flag
|
|
59
|
+
dryRun: [
|
|
60
|
+
DyNTS_OperationRest_Util.readFlag(req?.query?.dryRun, 'dryRun'),
|
|
61
|
+
DyNTS_OperationRest_Util.readFlag(req?.headers?.['x-dry-run'], 'X-Dry-Run'),
|
|
62
|
+
].includes(true),
|
|
60
63
|
requestId: DyNTS_OperationRest_Util.readHeader(req, 'x-request-id'),
|
|
61
64
|
});
|
|
62
65
|
}
|
|
@@ -126,9 +129,20 @@ class DyNTS_OperationRest_Util {
|
|
|
126
129
|
const single = Array.isArray(value) ? value[0] : value;
|
|
127
130
|
return single?.trim() || undefined;
|
|
128
131
|
}
|
|
129
|
-
/**
|
|
130
|
-
|
|
131
|
-
|
|
132
|
+
/**
|
|
133
|
+
* A `true`/`false` flag; absent = `false`. Any other text is refused, never read as `false`: a `dryRun=1` would
|
|
134
|
+
* otherwise run the real write (the MCP adapter refuses a non-boolean `dryRun` the same way).
|
|
135
|
+
* @throws 400 `DyNTS-OPR-INT`
|
|
136
|
+
*/
|
|
137
|
+
static readFlag(value, name) {
|
|
138
|
+
const text = Array.isArray(value) ? value[value.length - 1] : value;
|
|
139
|
+
if (text === undefined || text === 'false') {
|
|
140
|
+
return false;
|
|
141
|
+
}
|
|
142
|
+
if (text !== 'true') {
|
|
143
|
+
throw DyNTS_OperationRest_Util.inputError('DyNTS-OPR-INT', `"${name}" must be true or false`, name);
|
|
144
|
+
}
|
|
145
|
+
return true;
|
|
132
146
|
}
|
|
133
147
|
/** Builds a coded 400 input error. */
|
|
134
148
|
static inputError(code, message, input) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"operation-rest.util.js","sourceRoot":"","sources":["../../src/_collections/operation-rest.util.ts"],"names":[],"mappings":";;;AAEA,sDAG+B;AAG/B,qEAAuE;AAEvE,mEAAgE;AAGhE,uHAAuH;AACvH,MAAM,4BAA4B,GAAW,yCAAyC,CAAC;AAEvF,kGAAkG;AACrF,QAAA,6BAA6B,GAAW,sBAAsB,CAAC;AAE5E;;;;;;;;;;;;;;;;GAgBG;AACH,MAAa,wBAAwB;IACnC;;;;;OAKG;IACH,MAAM,CAAC,KAAK,CAAC,MAAM,CACjB,SAA+D,EAC/D,GAAY,EACZ,GAAa;QAEb,MAAM,GAAG,GAA2B,wBAAwB,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;QAC/E,MAAM,MAAM,GAAc,wBAAwB,CAAC,WAAW,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;QAC/E,MAAM,OAAO,GAAsC,MAAM,mCAAsB,CAAC,OAAO,CAAC,SAAS,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;QAEhH,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;YAChD,GAAG,CAAC,SAAS,CAAC,qCAA6B,EAAE,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QAC3E,CAAC;QAED,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAC3B,CAAC;IAED;;;OAGG;IACH,MAAM,CAAC,YAAY,CAAC,GAAY;QAC9B,MAAM,QAAQ,GACZ,oCAAmB,EAAE,cAAc,EAAE,EAAE,+BAA+B,EAAE,CAAC,GAAG,CAAC;YAC7E,EAAE,QAAQ,EAAE,oCAAuB,CAAC,IAAI,EAAE,CAAC;QAE7C,OAAO,IAAI,mCAAsB,CAAC;YAChC,SAAS,EAAE,MAAM;YACjB,QAAQ,EAAE,QAAQ,CAAC,QAAQ;YAC3B,MAAM,EAAE,QAAQ,CAAC,MAAM;YACvB,YAAY,EAAE,QAAQ,CAAC,YAAY;YACnC,YAAY,EAAE,QAAQ,CAAC,YAAY;YACnC,OAAO,EAAE,wBAAwB,CAAC,WAAW,CAAC,GAAG,CAAC;YAClD,MAAM,EAAE,wBAAwB,CAAC,QAAQ,CAAC,GAAG,EAAE,KAAK,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"operation-rest.util.js","sourceRoot":"","sources":["../../src/_collections/operation-rest.util.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import { DyNTS_Operation_Identity } from '../../../_models/interfaces/operation-identity.interface';
|
|
2
|
+
import { DyNTS_McpTool_Params } from '../_models/control-models/mcp-tool-params.control-model';
|
|
3
|
+
import { DyNTS_Mcp_CallInfo, DyNTS_Mcp_ServerInfo, DyNTS_Mcp_ToolDefinition, DyNTS_Mcp_ToolOutcome } from '../_models/interfaces/dynts-mcp.interface';
|
|
4
|
+
import { DyNTS_Mcp_Settings } from '../_models/interfaces/mcp-settings.interface';
|
|
5
|
+
/**
|
|
6
|
+
* Turns operation-based tools into the MCP tool registry (HP-DOPL MP-3.5, DMCP-001/010) — the place where the MP-3
|
|
7
|
+
* pieces meet. For every ADVERTISED `DyNTS_McpTool_Params` one `DyNTS_Mcp_ToolDefinition` is built, whose handler runs:
|
|
8
|
+
*
|
|
9
|
+
* identity (REST-equal) → `DyFM_Operation_Context` (`transport: 'mcp'`) → args → positional inputs →
|
|
10
|
+
* `DyNTS_McpToolLoad_Util` (heavy tools) → `DyFM_OperationRun_Util.execute` (authz, guardrails, run) → `mapOutput`.
|
|
11
|
+
* Every error is thrown and turned into a caller-safe MCP error by the adapter (`DyNTS_McpError_Util`).
|
|
12
|
+
*
|
|
13
|
+
* Identity: over Streamable HTTP it is `DyNTS_AuthService.getOperationIdentityFromRequest(request)` — the SAME as the
|
|
14
|
+
* REST path, so a token gets the same issuer (accountId) on both; over stdio (no request) it is the given
|
|
15
|
+
* `stdioIdentity`, otherwise anonymous (an `issuerRequired` operation then answers 401 → forbidden).
|
|
16
|
+
*
|
|
17
|
+
* A generated `capabilities` tool (read-only) lists the advertised tools (DMCP-010).
|
|
18
|
+
*
|
|
19
|
+
* @example
|
|
20
|
+
* ```ts
|
|
21
|
+
* protected getTools(): DyNTS_Mcp_ToolDefinition[] {
|
|
22
|
+
* return DyNTS_McpToolDefinition_Util.fromParams({ serverInfo: this.getServerInfo(), tools: [ getNoteTool ] });
|
|
23
|
+
* }
|
|
24
|
+
* ```
|
|
25
|
+
*/
|
|
26
|
+
export declare class DyNTS_McpToolDefinition_Util {
|
|
27
|
+
/**
|
|
28
|
+
* Builds the tool definitions of the advertised tools + the `capabilities` tool.
|
|
29
|
+
* @param set.tools - the operation tools
|
|
30
|
+
* @param set.serverInfo - the server identity (shown by `capabilities`)
|
|
31
|
+
* @param set.stdioIdentity - the caller identity of stdio calls (e.g. the local operator's account)
|
|
32
|
+
* @param set.settings - the MCP settings (default: `DyNTS_global_settings.mcp_settings`)
|
|
33
|
+
* @throws 500 `DyNTS-MTD-DUP` when two advertised tools have the same name
|
|
34
|
+
*/
|
|
35
|
+
static fromParams(set: {
|
|
36
|
+
tools: DyNTS_McpTool_Params[];
|
|
37
|
+
serverInfo: DyNTS_Mcp_ServerInfo;
|
|
38
|
+
stdioIdentity?: DyNTS_Operation_Identity;
|
|
39
|
+
settings?: DyNTS_Mcp_Settings | null;
|
|
40
|
+
}): DyNTS_Mcp_ToolDefinition[];
|
|
41
|
+
/**
|
|
42
|
+
* Runs one tool call through the single execution path.
|
|
43
|
+
* @param set.tool - the tool
|
|
44
|
+
* @param set.args - the `tools/call` arguments
|
|
45
|
+
* @param set.call - where the call came from
|
|
46
|
+
* @param set.stdioIdentity - the identity of stdio calls
|
|
47
|
+
*/
|
|
48
|
+
static call(set: {
|
|
49
|
+
tool: DyNTS_McpTool_Params;
|
|
50
|
+
args: unknown;
|
|
51
|
+
call?: DyNTS_Mcp_CallInfo;
|
|
52
|
+
stdioIdentity?: DyNTS_Operation_Identity;
|
|
53
|
+
}): Promise<DyNTS_Mcp_ToolOutcome>;
|
|
54
|
+
/**
|
|
55
|
+
* The positional inputs of an operation from the `tools/call` arguments — the MCP twin of the REST adapter:
|
|
56
|
+
* the declared inputs in declaration order (typed, defaults applied), then the body (the remaining arguments) when the
|
|
57
|
+
* operation takes one.
|
|
58
|
+
* @param tool - the tool
|
|
59
|
+
* @param args - the arguments object
|
|
60
|
+
* @throws 400 `DyNTS-MTD-INR` (missing) · `DyNTS-MTD-INT` (wrong type / not in the enum) · `DyNTS-MTD-UNK` (unknown)
|
|
61
|
+
*/
|
|
62
|
+
static buildInputs(tool: DyNTS_McpTool_Params, args: Record<string, unknown>): unknown[];
|
|
63
|
+
/** The generated read-only `capabilities` tool (DMCP-010). */
|
|
64
|
+
private static capabilitiesTool;
|
|
65
|
+
/**
|
|
66
|
+
* Refuses a guardrail argument of the wrong type instead of ignoring it: a `dryRun: "true"` would otherwise run the
|
|
67
|
+
* real write, and a non-string `ifMatch` would silently drop the concurrency protection. A declared input of the
|
|
68
|
+
* same name is checked as an input instead.
|
|
69
|
+
* @throws 400 `DyNTS-MTD-INT`
|
|
70
|
+
*/
|
|
71
|
+
private static checkGuardrailArgs;
|
|
72
|
+
/** The caller identity: the REST-equal request identity over HTTP, the configured one over stdio. */
|
|
73
|
+
private static identityOf;
|
|
74
|
+
/** The arguments as an object (missing = empty). */
|
|
75
|
+
private static argsObject;
|
|
76
|
+
/** Checks a JSON value against the declared basic type and enum. */
|
|
77
|
+
private static checkType;
|
|
78
|
+
/** A caller-facing 400 input error (the message is safe: it names only our own tool and inputs). */
|
|
79
|
+
private static inputError;
|
|
80
|
+
/** A coded error. */
|
|
81
|
+
private static error;
|
|
82
|
+
}
|
|
83
|
+
//# sourceMappingURL=mcp-tool-definition.util.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mcp-tool-definition.util.d.ts","sourceRoot":"","sources":["../../../../src/_modules/mcp/_collections/mcp-tool-definition.util.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,wBAAwB,EAAE,MAAM,0DAA0D,CAAC;AAGpG,OAAO,EAAE,oBAAoB,EAAE,MAAM,yDAAyD,CAAC;AAC/F,OAAO,EACL,kBAAkB,EAAE,oBAAoB,EAAE,wBAAwB,EAAE,qBAAqB,EAC1F,MAAM,2CAA2C,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,8CAA8C,CAAC;AAQlF;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,qBAAa,4BAA4B;IACvC;;;;;;;OAOG;IACH,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE;QACrB,KAAK,EAAE,oBAAoB,EAAE,CAAC;QAC9B,UAAU,EAAE,oBAAoB,CAAC;QACjC,aAAa,CAAC,EAAE,wBAAwB,CAAC;QACzC,QAAQ,CAAC,EAAE,kBAAkB,GAAG,IAAI,CAAC;KACtC,GAAG,wBAAwB,EAAE;IAgC9B;;;;;;OAMG;WACU,IAAI,CAAC,GAAG,EAAE;QACrB,IAAI,EAAE,oBAAoB,CAAC;QAC3B,IAAI,EAAE,OAAO,CAAC;QACd,IAAI,CAAC,EAAE,kBAAkB,CAAC;QAC1B,aAAa,CAAC,EAAE,wBAAwB,CAAC;KAC1C,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAyBlC;;;;;;;OAOG;IACH,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,oBAAoB,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,EAAE;IAmCxF,8DAA8D;IAC9D,OAAO,CAAC,MAAM,CAAC,gBAAgB;IAwB/B;;;;;OAKG;IACH,OAAO,CAAC,MAAM,CAAC,kBAAkB;IAcjC,qGAAqG;IACrG,OAAO,CAAC,MAAM,CAAC,UAAU;IAazB,oDAAoD;IACpD,OAAO,CAAC,MAAM,CAAC,UAAU;IAYzB,oEAAoE;IACpE,OAAO,CAAC,MAAM,CAAC,SAAS;IA+BxB,oGAAoG;IACpG,OAAO,CAAC,MAAM,CAAC,UAAU;IAIzB,qBAAqB;IACrB,OAAO,CAAC,MAAM,CAAC,KAAK;CAQrB"}
|
|
@@ -0,0 +1,215 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DyNTS_McpToolDefinition_Util = void 0;
|
|
4
|
+
const fsm_dynamo_1 = require("@futdevpro/fsm-dynamo");
|
|
5
|
+
const global_settings_const_1 = require("../../../_collections/global-settings.const");
|
|
6
|
+
const global_service_1 = require("../../../_services/core/global.service");
|
|
7
|
+
const mcp_tool_exposure_type_enum_1 = require("../_enums/mcp-tool-exposure.type-enum");
|
|
8
|
+
const mcp_tool_load_util_1 = require("./mcp-tool-load.util");
|
|
9
|
+
/** The guardrail arguments an MCP call may carry next to the inputs (never passed to the operation as input). */
|
|
10
|
+
const DyNTS_mcpGuardrailArgs = ['ifMatch', 'dryRun'];
|
|
11
|
+
/**
|
|
12
|
+
* Turns operation-based tools into the MCP tool registry (HP-DOPL MP-3.5, DMCP-001/010) — the place where the MP-3
|
|
13
|
+
* pieces meet. For every ADVERTISED `DyNTS_McpTool_Params` one `DyNTS_Mcp_ToolDefinition` is built, whose handler runs:
|
|
14
|
+
*
|
|
15
|
+
* identity (REST-equal) → `DyFM_Operation_Context` (`transport: 'mcp'`) → args → positional inputs →
|
|
16
|
+
* `DyNTS_McpToolLoad_Util` (heavy tools) → `DyFM_OperationRun_Util.execute` (authz, guardrails, run) → `mapOutput`.
|
|
17
|
+
* Every error is thrown and turned into a caller-safe MCP error by the adapter (`DyNTS_McpError_Util`).
|
|
18
|
+
*
|
|
19
|
+
* Identity: over Streamable HTTP it is `DyNTS_AuthService.getOperationIdentityFromRequest(request)` — the SAME as the
|
|
20
|
+
* REST path, so a token gets the same issuer (accountId) on both; over stdio (no request) it is the given
|
|
21
|
+
* `stdioIdentity`, otherwise anonymous (an `issuerRequired` operation then answers 401 → forbidden).
|
|
22
|
+
*
|
|
23
|
+
* A generated `capabilities` tool (read-only) lists the advertised tools (DMCP-010).
|
|
24
|
+
*
|
|
25
|
+
* @example
|
|
26
|
+
* ```ts
|
|
27
|
+
* protected getTools(): DyNTS_Mcp_ToolDefinition[] {
|
|
28
|
+
* return DyNTS_McpToolDefinition_Util.fromParams({ serverInfo: this.getServerInfo(), tools: [ getNoteTool ] });
|
|
29
|
+
* }
|
|
30
|
+
* ```
|
|
31
|
+
*/
|
|
32
|
+
class DyNTS_McpToolDefinition_Util {
|
|
33
|
+
/**
|
|
34
|
+
* Builds the tool definitions of the advertised tools + the `capabilities` tool.
|
|
35
|
+
* @param set.tools - the operation tools
|
|
36
|
+
* @param set.serverInfo - the server identity (shown by `capabilities`)
|
|
37
|
+
* @param set.stdioIdentity - the caller identity of stdio calls (e.g. the local operator's account)
|
|
38
|
+
* @param set.settings - the MCP settings (default: `DyNTS_global_settings.mcp_settings`)
|
|
39
|
+
* @throws 500 `DyNTS-MTD-DUP` when two advertised tools have the same name
|
|
40
|
+
*/
|
|
41
|
+
static fromParams(set) {
|
|
42
|
+
const settings = set.settings === undefined ? global_settings_const_1.DyNTS_global_settings.mcp_settings : set.settings;
|
|
43
|
+
const advertised = set.tools.filter((tool) => tool.isAdvertised(settings));
|
|
44
|
+
const definitions = advertised.map((tool) => ({
|
|
45
|
+
name: tool.getToolName(settings),
|
|
46
|
+
description: tool.description,
|
|
47
|
+
inputSchema: tool.inputSchema,
|
|
48
|
+
handler: (args, call) => DyNTS_McpToolDefinition_Util.call({ tool: tool, args: args, call: call, stdioIdentity: set.stdioIdentity }),
|
|
49
|
+
}));
|
|
50
|
+
definitions.push(DyNTS_McpToolDefinition_Util.capabilitiesTool({
|
|
51
|
+
serverInfo: set.serverInfo, tools: advertised, settings: settings,
|
|
52
|
+
}));
|
|
53
|
+
const seen = new Set();
|
|
54
|
+
definitions.forEach((definition) => {
|
|
55
|
+
if (seen.has(definition.name)) {
|
|
56
|
+
throw DyNTS_McpToolDefinition_Util.error({
|
|
57
|
+
status: 500, code: 'DyNTS-MTD-DUP', message: `two MCP tools are advertised as "${definition.name}"`,
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
seen.add(definition.name);
|
|
61
|
+
});
|
|
62
|
+
return definitions;
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* Runs one tool call through the single execution path.
|
|
66
|
+
* @param set.tool - the tool
|
|
67
|
+
* @param set.args - the `tools/call` arguments
|
|
68
|
+
* @param set.call - where the call came from
|
|
69
|
+
* @param set.stdioIdentity - the identity of stdio calls
|
|
70
|
+
*/
|
|
71
|
+
static async call(set) {
|
|
72
|
+
const args = DyNTS_McpToolDefinition_Util.argsObject(set.tool, set.args);
|
|
73
|
+
DyNTS_McpToolDefinition_Util.checkGuardrailArgs(set.tool, args);
|
|
74
|
+
const identity = DyNTS_McpToolDefinition_Util.identityOf(set.call, set.stdioIdentity);
|
|
75
|
+
const ctx = new fsm_dynamo_1.DyFM_Operation_Context({
|
|
76
|
+
transport: 'mcp',
|
|
77
|
+
authKind: identity.authKind,
|
|
78
|
+
issuer: identity.issuer,
|
|
79
|
+
clientUserId: identity.clientUserId,
|
|
80
|
+
apiKeyScopes: identity.apiKeyScopes,
|
|
81
|
+
ifMatch: typeof args.ifMatch === 'string' && args.ifMatch ? args.ifMatch : undefined,
|
|
82
|
+
dryRun: args.dryRun === true,
|
|
83
|
+
});
|
|
84
|
+
const inputs = DyNTS_McpToolDefinition_Util.buildInputs(set.tool, args);
|
|
85
|
+
const outcome = await mcp_tool_load_util_1.DyNTS_McpToolLoad_Util.run(set.tool, () => fsm_dynamo_1.DyFM_OperationRun_Util.execute(set.tool.operation, ctx, inputs));
|
|
86
|
+
const data = await set.tool.mapOutput(outcome.result, ctx);
|
|
87
|
+
// the warnings travel with the result, like the REST header (D-6: a legacy key call must be told)
|
|
88
|
+
return outcome.warnings.length ? { data: data, warnings: [...outcome.warnings] } : { data: data };
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* The positional inputs of an operation from the `tools/call` arguments — the MCP twin of the REST adapter:
|
|
92
|
+
* the declared inputs in declaration order (typed, defaults applied), then the body (the remaining arguments) when the
|
|
93
|
+
* operation takes one.
|
|
94
|
+
* @param tool - the tool
|
|
95
|
+
* @param args - the arguments object
|
|
96
|
+
* @throws 400 `DyNTS-MTD-INR` (missing) · `DyNTS-MTD-INT` (wrong type / not in the enum) · `DyNTS-MTD-UNK` (unknown)
|
|
97
|
+
*/
|
|
98
|
+
static buildInputs(tool, args) {
|
|
99
|
+
const declared = Object.entries(tool.operation.inputs ?? {});
|
|
100
|
+
const names = declared.map(([name]) => name);
|
|
101
|
+
const inputs = declared.map(([name, input]) => {
|
|
102
|
+
const value = args[name];
|
|
103
|
+
if (value === undefined || value === null) {
|
|
104
|
+
if (input.required === true && input.default === undefined) {
|
|
105
|
+
throw DyNTS_McpToolDefinition_Util.inputError('DyNTS-MTD-INR', `${tool.tool}: "${name}" is required`);
|
|
106
|
+
}
|
|
107
|
+
return input.default;
|
|
108
|
+
}
|
|
109
|
+
return DyNTS_McpToolDefinition_Util.checkType(tool, name, input, value);
|
|
110
|
+
});
|
|
111
|
+
const rest = {};
|
|
112
|
+
Object.keys(args)
|
|
113
|
+
.filter((key) => !names.includes(key) && !DyNTS_mcpGuardrailArgs.includes(key))
|
|
114
|
+
.forEach((key) => {
|
|
115
|
+
rest[key] = args[key];
|
|
116
|
+
});
|
|
117
|
+
if (tool.operation.bodyParams || tool.operation.isBodyUntyped) {
|
|
118
|
+
inputs.push(rest);
|
|
119
|
+
}
|
|
120
|
+
else if (Object.keys(rest).length) {
|
|
121
|
+
throw DyNTS_McpToolDefinition_Util.inputError('DyNTS-MTD-UNK', `${tool.tool}: unknown argument(s) ${Object.keys(rest).join(', ')}`);
|
|
122
|
+
}
|
|
123
|
+
return inputs;
|
|
124
|
+
}
|
|
125
|
+
/** The generated read-only `capabilities` tool (DMCP-010). */
|
|
126
|
+
static capabilitiesTool(set) {
|
|
127
|
+
return {
|
|
128
|
+
name: `${set.settings?.toolPrefix ?? ''}capabilities`,
|
|
129
|
+
description: 'Lists the tools of this MCP server: name, description, whether it is read-only or heavy.',
|
|
130
|
+
inputSchema: { type: 'object', properties: {}, additionalProperties: false },
|
|
131
|
+
handler: async () => ({
|
|
132
|
+
data: {
|
|
133
|
+
server: { name: set.serverInfo.name, version: set.serverInfo.version },
|
|
134
|
+
readOnlyServer: set.settings?.readOnly === true,
|
|
135
|
+
tools: set.tools.map((tool) => ({
|
|
136
|
+
name: tool.getToolName(set.settings),
|
|
137
|
+
description: tool.description,
|
|
138
|
+
readOnly: tool.exposure === mcp_tool_exposure_type_enum_1.DyNTS_McpToolExposure_Type.readOnly,
|
|
139
|
+
heavy: tool.isHeavy,
|
|
140
|
+
})),
|
|
141
|
+
},
|
|
142
|
+
}),
|
|
143
|
+
};
|
|
144
|
+
}
|
|
145
|
+
/**
|
|
146
|
+
* Refuses a guardrail argument of the wrong type instead of ignoring it: a `dryRun: "true"` would otherwise run the
|
|
147
|
+
* real write, and a non-string `ifMatch` would silently drop the concurrency protection. A declared input of the
|
|
148
|
+
* same name is checked as an input instead.
|
|
149
|
+
* @throws 400 `DyNTS-MTD-INT`
|
|
150
|
+
*/
|
|
151
|
+
static checkGuardrailArgs(tool, args) {
|
|
152
|
+
const declared = tool.operation.inputs ?? {};
|
|
153
|
+
if (!declared.dryRun && args.dryRun !== undefined && typeof args.dryRun !== 'boolean') {
|
|
154
|
+
throw DyNTS_McpToolDefinition_Util.inputError('DyNTS-MTD-INT', `${tool.tool}: "dryRun" must be a boolean`);
|
|
155
|
+
}
|
|
156
|
+
if (!declared.ifMatch && args.ifMatch !== undefined && (typeof args.ifMatch !== 'string' || !args.ifMatch)) {
|
|
157
|
+
throw DyNTS_McpToolDefinition_Util.inputError('DyNTS-MTD-INT', `${tool.tool}: "ifMatch" must be the etag string of the entity`);
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
/** The caller identity: the REST-equal request identity over HTTP, the configured one over stdio. */
|
|
161
|
+
static identityOf(call, stdioIdentity) {
|
|
162
|
+
const anonymous = { authKind: fsm_dynamo_1.DyFM_OperationAuth_Type.none };
|
|
163
|
+
if (call?.request) {
|
|
164
|
+
return global_service_1.DyNTS_GlobalService?.getAuthService()?.getOperationIdentityFromRequest?.(call.request) ?? anonymous;
|
|
165
|
+
}
|
|
166
|
+
return stdioIdentity ?? anonymous;
|
|
167
|
+
}
|
|
168
|
+
/** The arguments as an object (missing = empty). */
|
|
169
|
+
static argsObject(tool, args) {
|
|
170
|
+
if (args === undefined || args === null) {
|
|
171
|
+
return {};
|
|
172
|
+
}
|
|
173
|
+
if (typeof args !== 'object' || Array.isArray(args)) {
|
|
174
|
+
throw DyNTS_McpToolDefinition_Util.inputError('DyNTS-MTD-ARG', `${tool.tool}: the arguments must be an object`);
|
|
175
|
+
}
|
|
176
|
+
return args;
|
|
177
|
+
}
|
|
178
|
+
/** Checks a JSON value against the declared basic type and enum. */
|
|
179
|
+
static checkType(tool, name, input, value) {
|
|
180
|
+
const expected = {
|
|
181
|
+
[fsm_dynamo_1.DyFM_BasicProperty_Type.string]: 'string',
|
|
182
|
+
[fsm_dynamo_1.DyFM_BasicProperty_Type.number]: 'number',
|
|
183
|
+
[fsm_dynamo_1.DyFM_BasicProperty_Type.boolean]: 'boolean',
|
|
184
|
+
}[input.type];
|
|
185
|
+
let converted = value;
|
|
186
|
+
if (expected && (typeof value !== expected || (expected === 'number' && !Number.isFinite(value)))) {
|
|
187
|
+
throw DyNTS_McpToolDefinition_Util.inputError('DyNTS-MTD-INT', `${tool.tool}: "${name}" must be a ${expected}`);
|
|
188
|
+
}
|
|
189
|
+
if (input.type === fsm_dynamo_1.DyFM_BasicProperty_Type.date) {
|
|
190
|
+
converted = new Date(value);
|
|
191
|
+
if (typeof value !== 'string' || Number.isNaN(converted.getTime())) {
|
|
192
|
+
throw DyNTS_McpToolDefinition_Util.inputError('DyNTS-MTD-INT', `${tool.tool}: "${name}" must be an ISO date`);
|
|
193
|
+
}
|
|
194
|
+
}
|
|
195
|
+
if (input.enum && !input.enum.includes(value)) {
|
|
196
|
+
throw DyNTS_McpToolDefinition_Util.inputError('DyNTS-MTD-INT', `${tool.tool}: "${name}" must be one of ${input.enum.join(', ')}`);
|
|
197
|
+
}
|
|
198
|
+
return converted;
|
|
199
|
+
}
|
|
200
|
+
/** A caller-facing 400 input error (the message is safe: it names only our own tool and inputs). */
|
|
201
|
+
static inputError(code, message) {
|
|
202
|
+
return DyNTS_McpToolDefinition_Util.error({ status: 400, code: code, message: message, userMessage: message });
|
|
203
|
+
}
|
|
204
|
+
/** A coded error. */
|
|
205
|
+
static error(set) {
|
|
206
|
+
return new fsm_dynamo_1.DyFM_Error({
|
|
207
|
+
status: set.status,
|
|
208
|
+
errorCode: `${global_settings_const_1.DyNTS_global_settings.systemShortCodeName}|${set.code}`,
|
|
209
|
+
message: set.message,
|
|
210
|
+
userMessage: set.userMessage,
|
|
211
|
+
});
|
|
212
|
+
}
|
|
213
|
+
}
|
|
214
|
+
exports.DyNTS_McpToolDefinition_Util = DyNTS_McpToolDefinition_Util;
|
|
215
|
+
//# sourceMappingURL=mcp-tool-definition.util.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mcp-tool-definition.util.js","sourceRoot":"","sources":["../../../../src/_modules/mcp/_collections/mcp-tool-definition.util.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { IncomingMessage } from 'http';
|
|
1
2
|
/**
|
|
2
3
|
* MCP-réteg shared vokabulár (BFR-AM-003) — a domain-agnosztikus MCP-szerver-base + adaptor közös
|
|
3
4
|
* típusai. Egy fájlban a szorosan összetartozó tool-/transport-típusok (`*.interface.ts` az
|
|
@@ -47,13 +48,28 @@ export interface DyNTS_Mcp_ToolOutcome {
|
|
|
47
48
|
data: unknown;
|
|
48
49
|
/** `true`, ha a kimenet strukturált hiba — az adaptor `isError`-re fordítja. */
|
|
49
50
|
isError?: boolean;
|
|
51
|
+
/**
|
|
52
|
+
* Non-fatal warnings of a successful call (e.g. `legacy-api-key`, `if-match-ignored`) — the MCP twin of the REST
|
|
53
|
+
* `X-Operation-Warnings` header; the adapter sends them as a second text block, so the agent sees them.
|
|
54
|
+
*/
|
|
55
|
+
warnings?: string[];
|
|
50
56
|
}
|
|
51
57
|
/**
|
|
52
58
|
* Egy tool-handler aláírása. Az `args` a nyers tool-argumentumok (JSON); a handler a saját
|
|
53
59
|
* input-shape-jére validál + a `DyNTS_Mcp_ToolOutcome`-ot adja. A hibát NEM nyeli el (strukturált
|
|
54
60
|
* hiba-payload `isError:true`-val VAGY dobott exception, amit az adaptor egységes MCP-error-ré fordít).
|
|
55
61
|
*/
|
|
56
|
-
export type DyNTS_Mcp_ToolHandler = (args: unknown) => Promise<DyNTS_Mcp_ToolOutcome>;
|
|
62
|
+
export type DyNTS_Mcp_ToolHandler = (args: unknown, call?: DyNTS_Mcp_CallInfo) => Promise<DyNTS_Mcp_ToolOutcome>;
|
|
63
|
+
/**
|
|
64
|
+
* Where a tool call came from (HP-DOPL MP-3.5) — the second, optional handler argument, so a handler can resolve the
|
|
65
|
+
* caller identity the same way as the REST path (`getOperationIdentityFromRequest(call.request)`).
|
|
66
|
+
*/
|
|
67
|
+
export interface DyNTS_Mcp_CallInfo {
|
|
68
|
+
/** The transport of the call. */
|
|
69
|
+
transport: DyNTS_Mcp_TransportKind;
|
|
70
|
+
/** The HTTP request (Streamable HTTP only) — carries what the endpoint guard put on it. */
|
|
71
|
+
request?: IncomingMessage;
|
|
72
|
+
}
|
|
57
73
|
/**
|
|
58
74
|
* Egy MCP tool-definíció (a `registerTool` egységes shape-je). A consumer ezt a shape-et használja az
|
|
59
75
|
* advertised halmazba (`name`+`description`+`inputSchema`+`handler`). A `tools/list` a regisztrált
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dynts-mcp.interface.d.ts","sourceRoot":"","sources":["../../../../../src/_modules/mcp/_models/interfaces/dynts-mcp.interface.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH;;;;GAIG;AACH,MAAM,WAAW,oBAAoB;IACjC,yEAAyE;IACzE,IAAI,EAAE,MAAM,CAAC;IACb,+CAA+C;IAC/C,UAAU,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,oBAAoB,CAAA;KAAE,CAAC;IACrD,+BAA+B;IAC/B,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,kDAAkD;IAClD,KAAK,CAAC,EAAE,oBAAoB,CAAC;IAC7B,2DAA2D;IAC3D,IAAI,CAAC,EAAE,CAAC,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,EAAE,CAAC;IACrC,+DAA+D;IAC/D,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,qCAAqC;IACrC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,6DAA6D;IAC7D,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,+CAA+C;IAC/C,KAAK,CAAC,EAAE,oBAAoB,EAAE,CAAC;CAClC;AAED;;;;;GAKG;AACH,MAAM,WAAW,qBAAqB;IAClC,oEAAoE;IACpE,IAAI,EAAE,OAAO,CAAC;IACd,gFAAgF;IAChF,OAAO,CAAC,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"dynts-mcp.interface.d.ts","sourceRoot":"","sources":["../../../../../src/_modules/mcp/_models/interfaces/dynts-mcp.interface.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,MAAM,CAAC;AAE5C;;;;;;;;;;GAUG;AAEH;;;;GAIG;AACH,MAAM,WAAW,oBAAoB;IACjC,yEAAyE;IACzE,IAAI,EAAE,MAAM,CAAC;IACb,+CAA+C;IAC/C,UAAU,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,oBAAoB,CAAA;KAAE,CAAC;IACrD,+BAA+B;IAC/B,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,kDAAkD;IAClD,KAAK,CAAC,EAAE,oBAAoB,CAAC;IAC7B,2DAA2D;IAC3D,IAAI,CAAC,EAAE,CAAC,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,EAAE,CAAC;IACrC,+DAA+D;IAC/D,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,qCAAqC;IACrC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,6DAA6D;IAC7D,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,+CAA+C;IAC/C,KAAK,CAAC,EAAE,oBAAoB,EAAE,CAAC;CAClC;AAED;;;;;GAKG;AACH,MAAM,WAAW,qBAAqB;IAClC,oEAAoE;IACpE,IAAI,EAAE,OAAO,CAAC;IACd,gFAAgF;IAChF,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;CACvB;AAED;;;;GAIG;AACH,MAAM,MAAM,qBAAqB,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,kBAAkB,KAAK,OAAO,CAAC,qBAAqB,CAAC,CAAC;AAEjH;;;GAGG;AACH,MAAM,WAAW,kBAAkB;IAC/B,iCAAiC;IACjC,SAAS,EAAE,uBAAuB,CAAC;IACnC,2FAA2F;IAC3F,OAAO,CAAC,EAAE,eAAe,CAAC;CAC7B;AAED;;;;GAIG;AACH,MAAM,WAAW,wBAAwB;IACrC,4FAA4F;IAC5F,IAAI,EAAE,MAAM,CAAC;IACb,sFAAsF;IACtF,WAAW,EAAE,MAAM,CAAC;IACpB,gEAAgE;IAChE,WAAW,EAAE,oBAAoB,CAAC;IAClC,uDAAuD;IACvD,OAAO,EAAE,qBAAqB,CAAC;CAClC;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACjC,gEAAgE;IAChE,IAAI,EAAE,MAAM,CAAC;IACb,uEAAuE;IACvE,OAAO,EAAE,MAAM,CAAC;CACnB;AAED;;;;GAIG;AACH,MAAM,MAAM,uBAAuB,GAAG,OAAO,GAAG,iBAAiB,CAAC;AAElE;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACnC,8CAA8C;IAC9C,SAAS,CAAC,EAAE,uBAAuB,CAAC;CACvC;AAED;;;;;GAKG;AACH,MAAM,WAAW,oBAAoB;IACjC,4DAA4D;IAC5D,OAAO,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAC1C,4EAA4E;IAC5E,OAAO,CAAC,EAAE,OAAO,CAAC;CACrB"}
|
|
@@ -1,14 +1,3 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* MCP-réteg shared vokabulár (BFR-AM-003) — a domain-agnosztikus MCP-szerver-base + adaptor közös
|
|
4
|
-
* típusai. Egy fájlban a szorosan összetartozó tool-/transport-típusok (`*.interface.ts` az
|
|
5
|
-
* egy-export-per-file konvenció ismert kivétele a tightly-coupled shape-ekre).
|
|
6
|
-
*
|
|
7
|
-
* Boundary: a `DyNTS_McpToolDefinition` + a `DyNTS_Mcp_Adapter` egyetlen `registerTool` choke-pontot
|
|
8
|
-
* ad — a hivatalos `@modelcontextprotocol/sdk` KIZÁRÓLAG az adaptor mögött él, így egy jövőbeli
|
|
9
|
-
* transport-/SDK-csere NEM-breaking (csak az adaptor cserélődik, a `DyNTS_Mcp_Server_ServiceBase` + a
|
|
10
|
-
* consumer-tool-ok változatlanok). A consumer a SAJÁT tool-jait regisztrálja (a bedrock NEM definiál
|
|
11
|
-
* domain-tool-okat — csak a server-base + a transport + a registry).
|
|
12
|
-
*/
|
|
13
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
14
3
|
//# sourceMappingURL=dynts-mcp.interface.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dynts-mcp.interface.js","sourceRoot":"","sources":["../../../../../src/_modules/mcp/_models/interfaces/dynts-mcp.interface.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"dynts-mcp.interface.js","sourceRoot":"","sources":["../../../../../src/_modules/mcp/_models/interfaces/dynts-mcp.interface.ts"],"names":[],"mappings":""}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { IncomingMessage, ServerResponse } from 'http';
|
|
2
|
-
import { DyNTS_Mcp_CallResult, DyNTS_Mcp_ServerInfo, DyNTS_Mcp_ToolDefinition } from '../_models/interfaces/dynts-mcp.interface';
|
|
2
|
+
import { DyNTS_Mcp_CallInfo, DyNTS_Mcp_CallResult, DyNTS_Mcp_ServerInfo, DyNTS_Mcp_ToolDefinition } from '../_models/interfaces/dynts-mcp.interface';
|
|
3
3
|
/**
|
|
4
4
|
* `DyNTS_Mcp_Adapter` (BFR-AM-003) — a hivatalos `@modelcontextprotocol/sdk` köré épített **vékony
|
|
5
5
|
* adaptor-réteg**. EZ az EGYETLEN hely a `/mcp` submodule-ban, ahol a SDK-típusok megjelennek — a
|
|
@@ -62,6 +62,7 @@ export declare class DyNTS_Mcp_Adapter {
|
|
|
62
62
|
dispatchToolCall(set: {
|
|
63
63
|
name: string;
|
|
64
64
|
arguments?: unknown;
|
|
65
|
+
call?: DyNTS_Mcp_CallInfo;
|
|
65
66
|
}): Promise<DyNTS_Mcp_CallResult>;
|
|
66
67
|
/**
|
|
67
68
|
* Loads the SDK; a missing SDK becomes a coded error that says what to install.
|
|
@@ -74,7 +75,10 @@ export declare class DyNTS_Mcp_Adapter {
|
|
|
74
75
|
private createServer;
|
|
75
76
|
/** A `tools/list` és a `tools/call` JSON-RPC handler bekötése a SDK-szerverre. */
|
|
76
77
|
private installHandlers;
|
|
77
|
-
/**
|
|
78
|
+
/**
|
|
79
|
+
* Egy sikeres (vagy strukturált-hiba) handler-outcome → `CallToolResult` (text-JSON content). The warnings, when
|
|
80
|
+
* there are any, follow as a second `{ warnings }` text block — the first block stays the plain payload.
|
|
81
|
+
*/
|
|
78
82
|
private toCallResult;
|
|
79
83
|
/**
|
|
80
84
|
* An error → `CallToolResult { isError:true }` with a CALLER-SAFE payload (HP-DOPL MP-3.6): `{ ok:false, error:{ code,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dynts-mcp.adapter.d.ts","sourceRoot":"","sources":["../../../../src/_modules/mcp/_services/dynts-mcp.adapter.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,MAAM,CAAC;AAO5D,OAAO,EACL,oBAAoB,EACpB,oBAAoB,EACpB,wBAAwB,EAEzB,MAAM,2CAA2C,CAAC;AAcnD;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBAAa,iBAAiB;IAE5B,6FAA6F;IAC7F,OAAO,CAAC,MAAM,CAAC,SAAS,CAiBtB;IAEF,yGAAyG;IACzG,OAAO,CAAC,MAAM,CAAuB;IAErC,6DAA6D;IAC7D,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAuB;IAElD,uFAAuF;IACvF,OAAO,CAAC,QAAQ,CAAC,KAAK,CACwB;gBAElC,GAAG,EAAE,oBAAoB;IAKrC;;;SAGK;IACE,YAAY,CAAC,UAAU,EAAE,wBAAwB,GAAG,IAAI;IAI/D,8EAA8E;IACvE,sBAAsB,IAAI,MAAM,EAAE;IAIzC;;;SAGK;IACQ,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAOxC;;;;;;;;;OASG;IACU,iBAAiB,CAAC,GAAG,EAAE,eAAe,EAAE,GAAG,EAAE,cAAc,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAiBxG,qEAAqE;IACxD,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAOnC;;;;SAIK;IACQ,gBAAgB,CAAC,GAAG,EAAE;
|
|
1
|
+
{"version":3,"file":"dynts-mcp.adapter.d.ts","sourceRoot":"","sources":["../../../../src/_modules/mcp/_services/dynts-mcp.adapter.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,MAAM,CAAC;AAO5D,OAAO,EACL,kBAAkB,EAClB,oBAAoB,EACpB,oBAAoB,EACpB,wBAAwB,EAEzB,MAAM,2CAA2C,CAAC;AAcnD;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBAAa,iBAAiB;IAE5B,6FAA6F;IAC7F,OAAO,CAAC,MAAM,CAAC,SAAS,CAiBtB;IAEF,yGAAyG;IACzG,OAAO,CAAC,MAAM,CAAuB;IAErC,6DAA6D;IAC7D,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAuB;IAElD,uFAAuF;IACvF,OAAO,CAAC,QAAQ,CAAC,KAAK,CACwB;gBAElC,GAAG,EAAE,oBAAoB;IAKrC;;;SAGK;IACE,YAAY,CAAC,UAAU,EAAE,wBAAwB,GAAG,IAAI;IAI/D,8EAA8E;IACvE,sBAAsB,IAAI,MAAM,EAAE;IAIzC;;;SAGK;IACQ,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAOxC;;;;;;;;;OASG;IACU,iBAAiB,CAAC,GAAG,EAAE,eAAe,EAAE,GAAG,EAAE,cAAc,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAiBxG,qEAAqE;IACxD,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAOnC;;;;SAIK;IACQ,gBAAgB,CAAC,GAAG,EAAE;QACjC,IAAI,EAAE,MAAM,CAAC;QACb,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,IAAI,CAAC,EAAE,kBAAkB,CAAC;KAC3B,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAsBjC;;;OAGG;mBACkB,OAAO;IAO5B,sEAAsE;IACtE,OAAO,CAAC,SAAS;IAQjB,8GAA8G;IAC9G,OAAO,CAAC,YAAY;IAWpB,kFAAkF;IAClF,OAAO,CAAC,eAAe;IA4BvB;;;OAGG;IACH,OAAO,CAAC,YAAY;IAUpB;;;;OAIG;IACH,OAAO,CAAC,WAAW;IAiBnB,mGAAmG;IACnG,OAAO,CAAC,SAAS;CAOlB"}
|
|
@@ -119,7 +119,7 @@ class DyNTS_Mcp_Adapter {
|
|
|
119
119
|
*/
|
|
120
120
|
async handleHttpRequest(req, res, body) {
|
|
121
121
|
const sdk = await DyNTS_Mcp_Adapter.loadSdk();
|
|
122
|
-
const server = this.createServer(sdk);
|
|
122
|
+
const server = this.createServer(sdk, { transport: 'streamable-http', request: req });
|
|
123
123
|
const transport = new sdk.StreamableHTTPServerTransport({
|
|
124
124
|
sessionIdGenerator: undefined, enableJsonResponse: true,
|
|
125
125
|
});
|
|
@@ -150,7 +150,7 @@ class DyNTS_Mcp_Adapter {
|
|
|
150
150
|
return this.errorResult(new mcp_method_not_found_error_1.DyNTS_Mcp_MethodNotFoundError(`Unknown tool: '${set.name}'. Advertised tools: ${this.getAdvertisedToolNames().join(', ')}.`), set.name);
|
|
151
151
|
}
|
|
152
152
|
try {
|
|
153
|
-
const outcome = await definition.handler(set.arguments);
|
|
153
|
+
const outcome = await definition.handler(set.arguments, set.call);
|
|
154
154
|
return this.toCallResult(outcome);
|
|
155
155
|
}
|
|
156
156
|
catch (error) {
|
|
@@ -173,18 +173,20 @@ class DyNTS_Mcp_Adapter {
|
|
|
173
173
|
/** The stdio SDK server, created once with the handlers installed. */
|
|
174
174
|
getServer(sdk) {
|
|
175
175
|
if (!this.server) {
|
|
176
|
-
this.server = this.createServer(sdk);
|
|
176
|
+
this.server = this.createServer(sdk, { transport: 'stdio' });
|
|
177
177
|
}
|
|
178
178
|
return this.server;
|
|
179
179
|
}
|
|
180
180
|
/** A new SDK server with the tools/list + tools/call handlers installed (stdio: once · HTTP: per request). */
|
|
181
|
-
createServer(sdk) {
|
|
181
|
+
createServer(sdk, call) {
|
|
182
182
|
const server = new sdk.Server({ name: this.serverInfo.name, version: this.serverInfo.version }, { capabilities: { tools: {} } });
|
|
183
|
-
this.installHandlers(server, sdk);
|
|
183
|
+
this.installHandlers({ server: server, sdk: sdk, call: call });
|
|
184
184
|
return server;
|
|
185
185
|
}
|
|
186
186
|
/** A `tools/list` és a `tools/call` JSON-RPC handler bekötése a SDK-szerverre. */
|
|
187
|
-
installHandlers(
|
|
187
|
+
installHandlers(set) {
|
|
188
|
+
const server = set.server;
|
|
189
|
+
const sdk = set.sdk;
|
|
188
190
|
// tools/list — PONTOSAN a regisztrált (advertised) tool-okat hirdeti.
|
|
189
191
|
server.setRequestHandler(sdk.ListToolsRequestSchema, async () => ({
|
|
190
192
|
tools: Array.from(this.tools.values()).map((definition) => ({
|
|
@@ -199,17 +201,22 @@ class DyNTS_Mcp_Adapter {
|
|
|
199
201
|
server.setRequestHandler(sdk.CallToolRequestSchema, async (request) => (await this.dispatchToolCall({
|
|
200
202
|
name: request.params.name,
|
|
201
203
|
arguments: request.params.arguments,
|
|
204
|
+
call: set.call,
|
|
202
205
|
})));
|
|
203
206
|
}
|
|
204
207
|
// =========================================================================
|
|
205
208
|
// CallToolResult fordítás (a transport-payload — text-JSON; egységes hiba-fordítás)
|
|
206
209
|
// =========================================================================
|
|
207
|
-
/**
|
|
210
|
+
/**
|
|
211
|
+
* Egy sikeres (vagy strukturált-hiba) handler-outcome → `CallToolResult` (text-JSON content). The warnings, when
|
|
212
|
+
* there are any, follow as a second `{ warnings }` text block — the first block stays the plain payload.
|
|
213
|
+
*/
|
|
208
214
|
toCallResult(outcome) {
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
}
|
|
215
|
+
const content = [{ type: 'text', text: this.stringify(outcome.data) }];
|
|
216
|
+
if (outcome.warnings?.length) {
|
|
217
|
+
content.push({ type: 'text', text: this.stringify({ warnings: outcome.warnings }) });
|
|
218
|
+
}
|
|
219
|
+
return { content: content, isError: outcome.isError === true };
|
|
213
220
|
}
|
|
214
221
|
/**
|
|
215
222
|
* An error → `CallToolResult { isError:true }` with a CALLER-SAFE payload (HP-DOPL MP-3.6): `{ ok:false, error:{ code,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dynts-mcp.adapter.js","sourceRoot":"","sources":["../../../../src/_modules/mcp/_services/dynts-mcp.adapter.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAeA,iFAAmF;AACnF,mEAAqE;AACrE,6FAA6F;
|
|
1
|
+
{"version":3,"file":"dynts-mcp.adapter.js","sourceRoot":"","sources":["../../../../src/_modules/mcp/_services/dynts-mcp.adapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,6 +15,7 @@ export * from './_models/control-models/mcp-tool-params.control-model';
|
|
|
15
15
|
export * from './_collections/mcp-error.util';
|
|
16
16
|
export * from './_collections/mcp-http-endpoint.util';
|
|
17
17
|
export * from './_collections/mcp-ref.util';
|
|
18
|
+
export * from './_collections/mcp-tool-definition.util';
|
|
18
19
|
export * from './_collections/mcp-tool-load.util';
|
|
19
20
|
export * from './_services/dynts-mcp.adapter';
|
|
20
21
|
export * from './_services/mcp-server.service-base';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/_modules/mcp/index.ts"],"names":[],"mappings":"AAQA,cAAc,mCAAmC,CAAC;AAClD,cAAc,sCAAsC,CAAC;AAGrD,cAAc,0CAA0C,CAAC;AACzD,cAAc,+CAA+C,CAAC;AAC9D,cAAc,mDAAmD,CAAC;AAClE,cAAc,6CAA6C,CAAC;AAC5D,cAAc,0DAA0D,CAAC;AAGzE,cAAc,iCAAiC,CAAC;AAChD,cAAc,qCAAqC,CAAC;AACpD,cAAc,sCAAsC,CAAC;AACrD,cAAc,qCAAqC,CAAC;AACpD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,6CAA6C,CAAC;AAG5D,cAAc,wDAAwD,CAAC;AAGvE,cAAc,+BAA+B,CAAC;AAC9C,cAAc,uCAAuC,CAAC;AACtD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,mCAAmC,CAAC;AAGlD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,qCAAqC,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/_modules/mcp/index.ts"],"names":[],"mappings":"AAQA,cAAc,mCAAmC,CAAC;AAClD,cAAc,sCAAsC,CAAC;AAGrD,cAAc,0CAA0C,CAAC;AACzD,cAAc,+CAA+C,CAAC;AAC9D,cAAc,mDAAmD,CAAC;AAClE,cAAc,6CAA6C,CAAC;AAC5D,cAAc,0DAA0D,CAAC;AAGzE,cAAc,iCAAiC,CAAC;AAChD,cAAc,qCAAqC,CAAC;AACpD,cAAc,sCAAsC,CAAC;AACrD,cAAc,qCAAqC,CAAC;AACpD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,6CAA6C,CAAC;AAG5D,cAAc,wDAAwD,CAAC;AAGvE,cAAc,+BAA+B,CAAC;AAC9C,cAAc,uCAAuC,CAAC;AACtD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,yCAAyC,CAAC;AACxD,cAAc,mCAAmC,CAAC;AAGlD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,qCAAqC,CAAC"}
|
|
@@ -27,6 +27,7 @@ tslib_1.__exportStar(require("./_models/control-models/mcp-tool-params.control-m
|
|
|
27
27
|
tslib_1.__exportStar(require("./_collections/mcp-error.util"), exports);
|
|
28
28
|
tslib_1.__exportStar(require("./_collections/mcp-http-endpoint.util"), exports);
|
|
29
29
|
tslib_1.__exportStar(require("./_collections/mcp-ref.util"), exports);
|
|
30
|
+
tslib_1.__exportStar(require("./_collections/mcp-tool-definition.util"), exports);
|
|
30
31
|
tslib_1.__exportStar(require("./_collections/mcp-tool-load.util"), exports);
|
|
31
32
|
// SERVICES
|
|
32
33
|
tslib_1.__exportStar(require("./_services/dynts-mcp.adapter"), exports);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/_modules/mcp/index.ts"],"names":[],"mappings":";AAEA,iGAAiG;AACjG,6FAA6F;AAC7F,4GAA4G;AAC5G,kGAAkG;;;AAElG,QAAQ;AACR,4EAAkD;AAClD,+EAAqD;AAErD,aAAa;AACb,mFAAyD;AACzD,wFAA8D;AAC9D,4FAAkE;AAClE,sFAA4D;AAC5D,mGAAyE;AAEzE,SAAS;AACT,0EAAgD;AAChD,8EAAoD;AACpD,+EAAqD;AACrD,8EAAoD;AACpD,oFAA0D;AAC1D,sFAA4D;AAE5D,iBAAiB;AACjB,iGAAuE;AAEvE,cAAc;AACd,wEAA8C;AAC9C,gFAAsD;AACtD,sEAA4C;AAC5C,4EAAkD;AAElD,WAAW;AACX,wEAA8C;AAC9C,8EAAoD"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/_modules/mcp/index.ts"],"names":[],"mappings":";AAEA,iGAAiG;AACjG,6FAA6F;AAC7F,4GAA4G;AAC5G,kGAAkG;;;AAElG,QAAQ;AACR,4EAAkD;AAClD,+EAAqD;AAErD,aAAa;AACb,mFAAyD;AACzD,wFAA8D;AAC9D,4FAAkE;AAClE,sFAA4D;AAC5D,mGAAyE;AAEzE,SAAS;AACT,0EAAgD;AAChD,8EAAoD;AACpD,+EAAqD;AACrD,8EAAoD;AACpD,oFAA0D;AAC1D,sFAA4D;AAE5D,iBAAiB;AACjB,iGAAuE;AAEvE,cAAc;AACd,wEAA8C;AAC9C,gFAAsD;AACtD,sEAA4C;AAC5C,kFAAwD;AACxD,4EAAkD;AAElD,WAAW;AACX,wEAA8C;AAC9C,8EAAoD"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@futdevpro/nts-dynamo",
|
|
3
|
-
"version": "01.15.
|
|
3
|
+
"version": "01.15.304",
|
|
4
4
|
"description": "Dynamic NodeTS (NodeJS-Typescript), MongoDB Backend System Framework by Future Development Program Ltd.",
|
|
5
5
|
"DyBu_settings": {
|
|
6
6
|
"packageType": "server-package",
|
|
@@ -499,7 +499,7 @@
|
|
|
499
499
|
}
|
|
500
500
|
},
|
|
501
501
|
"devDependencies": {
|
|
502
|
-
"@futdevpro/fsm-dynamo": "1.20.
|
|
502
|
+
"@futdevpro/fsm-dynamo": "1.20.67",
|
|
503
503
|
"@futdevpro/dynamo-eslint": "1.20.29",
|
|
504
504
|
"@discordjs/opus": "^0.10.0",
|
|
505
505
|
"@discordjs/voice": "^0.18.0",
|