@node-in-layers/mcp-server 2.0.3 → 2.1.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/mcp.js CHANGED
@@ -8,46 +8,12 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
8
8
  });
9
9
  };
10
10
  import { randomUUID } from 'crypto';
11
- import { createErrorObject, isErrorObject, } from '@node-in-layers/core';
12
- import { ValidationError } from 'functional-models';
13
- import { createMcpToolBulkDelete, createMcpToolBulkInsert, createMcpToolDelete, createMcpToolRetrieve, createMcpToolSearch, createMcpToolSave, defaultModelTypeParser, } from 'functional-models-orm-mcp';
14
11
  import { createSimpleServer } from '@l4t/mcp-ai/simple-server/index.js';
15
- import { asyncMap } from 'modern-async';
16
12
  import { McpNamespace, } from './types.js';
17
- import { describeFeatureMcpTool, listFeaturesMcpTool, describeModelMcpTool, listModelsMcpTool, listDomainsMcpTool, isNilAnnotatedFunction, nilAnnotatedFunctionToOpenApi, createOpenApiForNonNilAnnotatedFunction, } from './libs.js';
13
+ import { create as createModelsMcp } from './models.js';
14
+ import { create as createNilMcp } from './nil.js';
18
15
  const DEFAULT_RESPONSE_REQUEST_LOG_LEVEL = 'info';
19
- const createMcpResponse = (result, opts) => {
20
- const isError = (opts === null || opts === void 0 ? void 0 : opts.isError) || isErrorObject(result);
21
- return Object.assign(Object.assign({}, (isError ? { isError: true } : {})), { content: [
22
- {
23
- type: 'text',
24
- text: JSON.stringify(result !== undefined ? result : '""'),
25
- },
26
- ] });
27
- };
28
- const createDomainNotFoundError = () => createErrorObject('DOMAIN_NOT_FOUND', 'Domain not found');
29
- const createModelNotFoundError = () => createErrorObject('MODEL_NOT_FOUND', 'Model not found');
30
- const createFeatureNotFoundError = () => createErrorObject('FEATURE_NOT_FOUND', 'Feature not found');
31
- const createModelsNotFoundError = () => createErrorObject('MODELS_NOT_FOUND', 'Models not found');
32
- const isDomainHidden = (hiddenPaths) => (domain) => {
33
- return hiddenPaths.has(domain);
34
- };
35
- const areAllModelsHidden = (hiddenPaths) => (domain) => {
36
- return hiddenPaths.has(`${domain}.cruds`);
37
- };
38
- const isFeatureHidden = (hiddenPaths) => (domain, featureName) => {
39
- return hiddenPaths.has(`${domain}.${featureName}`);
40
- };
41
- const isModelHidden = (hiddenPaths) => (domain, modelName) => {
42
- return hiddenPaths.has(`${domain}.cruds.${modelName}`);
43
- };
44
16
  const create = (context) => {
45
- const hiddenPaths = new Set([
46
- '@node-in-layers/core',
47
- '@node-in-layers/data',
48
- '@node-in-layers/mcp-server',
49
- ...(context.config[McpNamespace].hiddenPaths || []),
50
- ]);
51
17
  const tools = [];
52
18
  const sets = [];
53
19
  const preRouteMiddleware = [];
@@ -56,10 +22,6 @@ const create = (context) => {
56
22
  // eslint-disable-next-line functional/immutable-data
57
23
  tools.push(tool);
58
24
  };
59
- const isDomainHiddenFunc = isDomainHidden(hiddenPaths);
60
- const areAllModelsHiddenFunc = areAllModelsHidden(hiddenPaths);
61
- const isFeatureHiddenFunc = isFeatureHidden(hiddenPaths);
62
- const isModelHiddenFunc = isModelHidden(hiddenPaths);
63
25
  const _wrapToolsWithLogger = (tool) => {
64
26
  const execute = (input) => __awaiter(void 0, void 0, void 0, function* () {
65
27
  var _a, _b, _c, _d, _e, _f;
@@ -86,199 +48,30 @@ const create = (context) => {
86
48
  });
87
49
  return Object.assign(Object.assign({}, tool), { execute });
88
50
  };
89
- const _listDomainsTool = () => {
90
- return Object.assign(Object.assign({}, listDomainsMcpTool()), { execute: _execute(() => __awaiter(void 0, void 0, void 0, function* () {
91
- const domains = Object.entries(context.features).reduce((acc, [domainName]) => {
92
- var _a;
93
- if (isDomainHiddenFunc(domainName)) {
94
- return acc;
95
- }
96
- const description = (_a = context.config['@node-in-layers/core'].apps.find(app => app.name === domainName)) === null || _a === void 0 ? void 0 : _a.description;
97
- return acc.concat(Object.assign({ name: domainName }, (description ? { description } : {})));
98
- }, []);
99
- return createMcpResponse(domains);
100
- })) });
101
- };
102
- const _describeFeatureTool = () => {
103
- return Object.assign(Object.assign({}, describeFeatureMcpTool()), { execute: _execute((input) => __awaiter(void 0, void 0, void 0, function* () {
104
- var _a;
105
- const domain = input.domain;
106
- const featureName = input.featureName;
107
- const feature = (_a = context[domain]) === null || _a === void 0 ? void 0 : _a[featureName];
108
- if (!feature ||
109
- isDomainHiddenFunc(domain) ||
110
- isFeatureHiddenFunc(domain, featureName)) {
111
- return createFeatureNotFoundError();
112
- }
113
- const openapi = isNilAnnotatedFunction(feature)
114
- ? nilAnnotatedFunctionToOpenApi(feature.name, feature)
115
- : createOpenApiForNonNilAnnotatedFunction(feature.name);
116
- return createMcpResponse(openapi);
117
- })) });
118
- };
119
- const _listFeaturesTool = () => {
120
- return Object.assign(Object.assign({}, listFeaturesMcpTool()), { execute: _execute((input) => __awaiter(void 0, void 0, void 0, function* () {
121
- const domain = input.domain;
122
- if (isDomainHiddenFunc(domain)) {
123
- return createDomainNotFoundError();
124
- }
125
- const features = domain.features;
126
- const result = Object.entries(features).reduce((acc, [featureName, feature]) => {
127
- var _a;
128
- if (typeof feature !== 'function') {
129
- return acc;
130
- }
131
- if (isFeatureHiddenFunc(domain, featureName)) {
132
- return acc;
133
- }
134
- const obj = Object.assign({ name: featureName }, (((_a = feature.schema) === null || _a === void 0 ? void 0 : _a.description)
135
- ? // @ts-ignore
136
- { description: feature.schema.description }
137
- : {}));
138
- return acc.concat(obj);
139
- }, []);
140
- return createMcpResponse(result);
141
- })) });
142
- };
143
- const _listModelsTool = () => {
144
- return Object.assign(Object.assign({}, listModelsMcpTool()), { execute: _execute((input) => __awaiter(void 0, void 0, void 0, function* () {
145
- const domain = input.domain;
146
- if (isDomainHiddenFunc(domain) || areAllModelsHiddenFunc(domain)) {
147
- return createDomainNotFoundError();
148
- }
149
- const models = context.features[domain].cruds;
150
- if (!models) {
151
- return createMcpResponse(createModelsNotFoundError());
152
- }
153
- const result = Object.entries(models).reduce((acc, [modelName, model]) => {
154
- if (isModelHiddenFunc(domain, modelName)) {
155
- return acc;
156
- }
157
- const description = model
158
- .getModel()
159
- .getModelDefinition().description;
160
- return acc.concat(Object.assign({ modelType: model.getModel().getName() }, (description ? { description } : {})));
161
- }, []);
162
- return createMcpResponse(result);
163
- })) });
164
- };
165
- const _describeModelTool = () => {
166
- return Object.assign(Object.assign({}, describeModelMcpTool()), { execute: _execute((input) => __awaiter(void 0, void 0, void 0, function* () {
167
- const domain = input.domain;
168
- if (isDomainHiddenFunc(domain)) {
169
- return createDomainNotFoundError();
170
- }
171
- const { modelName } = defaultModelTypeParser(input.modelType);
172
- const model = context.features[domain].cruds[modelName];
173
- if (!model ||
174
- isModelHiddenFunc(domain, modelName) ||
175
- areAllModelsHiddenFunc(domain)) {
176
- return createModelNotFoundError();
177
- }
178
- const schema = model.getModel().getModelDefinition().schema;
179
- return createMcpResponse(schema);
180
- })) });
181
- };
182
- const _createMcpModelFunc = (modelFunc) => {
183
- return _execute((input) => __awaiter(void 0, void 0, void 0, function* () {
184
- const modelType = input.modelType;
185
- const { domain, modelName } = defaultModelTypeParser(modelType);
186
- if (isDomainHiddenFunc(domain)) {
187
- return createDomainNotFoundError();
188
- }
189
- const model = context.features[domain].cruds[modelName];
190
- if (!model ||
191
- isModelHiddenFunc(domain, modelName) ||
192
- areAllModelsHiddenFunc(domain)) {
193
- return createModelNotFoundError();
194
- }
195
- const result = yield modelFunc(input, model.getModel()).catch(e => {
196
- if (e instanceof ValidationError) {
197
- return createErrorObject('VALIDATION_ERROR', 'Validation Error', {
198
- details: {
199
- keysToErrors: e.keysToErrors,
200
- modelName: e.modelName,
201
- },
202
- });
203
- }
204
- return createErrorObject('UNCAUGHT_EXCEPTION', 'An uncaught exception occurred while executing the feature.', e);
205
- });
206
- if (isErrorObject(result)) {
207
- return createMcpResponse(result, { isError: true });
208
- }
209
- return createMcpResponse(result);
210
- }));
211
- };
212
- const _createMcpToolSave = () => {
213
- return Object.assign(Object.assign({}, createMcpToolSave()), { execute: _createMcpModelFunc((input, model) => __awaiter(void 0, void 0, void 0, function* () {
214
- const data = input.instance;
215
- const result = yield model.save(data).catch(e => {
216
- if (e instanceof ValidationError) {
217
- return createErrorObject('VALIDATION_ERROR', 'Validation Error', e);
218
- }
219
- return createErrorObject('UNCAUGHT_EXCEPTION', 'An uncaught exception occurred while executing the feature.', e);
220
- });
221
- if (isErrorObject(result)) {
222
- return result;
223
- }
224
- return result.toObj();
225
- })) });
226
- };
227
- const _createMcpToolRetrieve = () => {
228
- return Object.assign(Object.assign({}, createMcpToolRetrieve()), { execute: _createMcpModelFunc((input, model) => __awaiter(void 0, void 0, void 0, function* () {
229
- const result = yield model.retrieve(input.id);
230
- if (!result) {
231
- return createModelNotFoundError();
232
- }
233
- return result.toObj();
234
- })) });
235
- };
236
- const _createMcpToolDelete = () => {
237
- return Object.assign(Object.assign({}, createMcpToolDelete()), { execute: _createMcpModelFunc((input, model) => __awaiter(void 0, void 0, void 0, function* () {
238
- yield model.delete(input.id);
239
- return null;
240
- })) });
241
- };
242
- const _createMcpToolSearch = () => {
243
- return Object.assign(Object.assign({}, createMcpToolSearch()), { execute: _createMcpModelFunc((input, model) => __awaiter(void 0, void 0, void 0, function* () {
244
- const result = yield model.search(input.query);
245
- const instances = yield asyncMap(result.instances, i => i.toObj());
246
- return { instances, page: result.page };
247
- })) });
248
- };
249
- const _createMcpToolBulkInsert = () => {
250
- return Object.assign(Object.assign({}, createMcpToolBulkInsert()), { execute: _createMcpModelFunc((input, model) => __awaiter(void 0, void 0, void 0, function* () {
251
- yield model.bulkInsert(input.items);
252
- return null;
253
- })) });
254
- };
255
- const _createMcpToolBulkDelete = () => {
256
- return Object.assign(Object.assign({}, createMcpToolBulkDelete()), { execute: _createMcpModelFunc((input, model) => __awaiter(void 0, void 0, void 0, function* () {
257
- yield model.bulkDelete(input.ids);
258
- return null;
259
- })) });
260
- };
261
- const _getServer = (options) => {
51
+ const _getServer = (systemContext, options) => {
52
+ const modelsMcp = createModelsMcp(systemContext);
53
+ const nilMcp = createNilMcp(systemContext);
262
54
  const allTools = [
263
- _listDomainsTool(),
264
- _listFeaturesTool(),
265
- _describeFeatureTool(),
266
- _listModelsTool(),
267
- _describeModelTool(),
268
- _createMcpToolSave(),
269
- _createMcpToolRetrieve(),
270
- _createMcpToolDelete(),
271
- _createMcpToolSearch(),
272
- _createMcpToolBulkInsert(),
273
- _createMcpToolBulkDelete(),
55
+ modelsMcp.listModels(),
56
+ modelsMcp.describe(),
57
+ modelsMcp.save(),
58
+ modelsMcp.retrieve(),
59
+ modelsMcp.delete(),
60
+ modelsMcp.search(),
61
+ modelsMcp.bulkInsert(),
62
+ modelsMcp.bulkDelete(),
63
+ nilMcp.listDomains(),
64
+ nilMcp.listFeatures(),
65
+ nilMcp.describeFeature(),
274
66
  ...tools,
275
67
  ].map(_wrapToolsWithLogger);
276
68
  const server = createSimpleServer({
277
- name: context.config[McpNamespace].name || '@node-in-layers/mcp-server',
278
- version: context.config[McpNamespace].version || '1.0.0',
69
+ name: systemContext.config[McpNamespace].name ||
70
+ '@node-in-layers/mcp-server',
71
+ version: systemContext.config[McpNamespace].version || '1.0.0',
279
72
  tools: allTools,
280
- stateless: context.config[McpNamespace].stateless,
281
- server: context.config[McpNamespace].server,
73
+ stateless: systemContext.config[McpNamespace].stateless,
74
+ server: systemContext.config[McpNamespace].server,
282
75
  }, {
283
76
  express: Object.assign({ preRouteMiddleware,
284
77
  additionalRoutes }, (options ? options : {})),
@@ -299,8 +92,8 @@ const create = (context) => {
299
92
  // eslint-disable-next-line functional/immutable-data
300
93
  additionalRoutes.push(route);
301
94
  };
302
- const start = (options) => __awaiter(void 0, void 0, void 0, function* () {
303
- const server = _getServer(options);
95
+ const start = (systemContext, options) => __awaiter(void 0, void 0, void 0, function* () {
96
+ const server = _getServer(systemContext, options);
304
97
  yield server.start();
305
98
  });
306
99
  const getApp = (options) => {
@@ -312,21 +105,6 @@ const create = (context) => {
312
105
  // @ts-ignore
313
106
  return server.getApp();
314
107
  };
315
- const _formatResponse = (result) => {
316
- if (result !== null && result !== undefined) {
317
- if (isErrorObject(result)) {
318
- return createMcpResponse(result, { isError: true });
319
- }
320
- }
321
- return createMcpResponse(result);
322
- };
323
- const _execute = (func) => (...inputs) => {
324
- return func(...inputs)
325
- .then(_formatResponse)
326
- .catch(error => {
327
- return _formatResponse(createErrorObject('UNCAUGHT_EXCEPTION', 'An uncaught exception occurred while executing the feature.', error));
328
- });
329
- };
330
108
  const set = (key, value) => {
331
109
  // eslint-disable-next-line functional/immutable-data
332
110
  sets.push([key, value]);
package/mcp.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"mcp.js","sourceRoot":"","sources":["../src/mcp.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mcp.js","sourceRoot":"","sources":["../src/mcp.ts"],"names":[],"mappings":"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"}
package/models.d.ts ADDED
@@ -0,0 +1,158 @@
1
+ import { LayerContext } from '@node-in-layers/core';
2
+ import { ServerTool } from '@l4t/mcp-ai/simple-server/types.js';
3
+ export declare const create: <TConfig extends Readonly<{
4
+ "@node-in-layers/mcp-server": {
5
+ name?: string | undefined;
6
+ version?: string | undefined;
7
+ stateless?: boolean | undefined;
8
+ server: {
9
+ connection: Readonly<{
10
+ server: Readonly<{
11
+ connection: Readonly<{
12
+ type: "http";
13
+ url: string;
14
+ port?: number | undefined;
15
+ headers?: Readonly<Record<string, string>> | undefined;
16
+ timeout?: number | undefined;
17
+ retry?: Readonly<{
18
+ attempts: number;
19
+ backoff: number;
20
+ }> | undefined;
21
+ }>;
22
+ path?: string | undefined;
23
+ }>;
24
+ }> | Readonly<{
25
+ server: Readonly<{
26
+ connection: {
27
+ type: "cli";
28
+ };
29
+ }>;
30
+ }> | Readonly<{
31
+ server: Readonly<{
32
+ connection: Readonly<{
33
+ type: "sse";
34
+ url: string;
35
+ port?: number | undefined;
36
+ }>;
37
+ path?: string | undefined;
38
+ messagesPath?: string | undefined;
39
+ }>;
40
+ }> | Readonly<{
41
+ server: Readonly<{
42
+ connection: Readonly<{
43
+ type: "http";
44
+ url: string;
45
+ port?: number | undefined;
46
+ headers?: Readonly<Record<string, string>> | undefined;
47
+ timeout?: number | undefined;
48
+ retry?: Readonly<{
49
+ attempts: number;
50
+ backoff: number;
51
+ }> | undefined;
52
+ }>;
53
+ path?: string | undefined;
54
+ }>;
55
+ stateless: true;
56
+ }>;
57
+ };
58
+ hiddenPaths?: string[] | undefined;
59
+ logging?: {
60
+ requestLogLevel?: import("@node-in-layers/core/types.js").LogLevelNames | undefined;
61
+ responseLogLevel?: import("@node-in-layers/core/types.js").LogLevelNames | undefined;
62
+ requestLogGetData?: ((req: Request) => Record<string, any>) | undefined;
63
+ responseLogGetData?: ((req: Request) => Record<string, any>) | undefined;
64
+ } | undefined;
65
+ };
66
+ }> & Readonly<{
67
+ systemName: string;
68
+ environment: string;
69
+ "@node-in-layers/core": Readonly<{
70
+ logging: {
71
+ logLevel: import("@node-in-layers/core/types.js").LogLevelNames;
72
+ logFormat: import("@node-in-layers/core/types.js").LogFormat | readonly import("@node-in-layers/core/types.js").LogFormat[];
73
+ maxLogSizeInCharacters?: number | undefined;
74
+ tcpLoggingOptions?: Readonly<{
75
+ url: string;
76
+ headers?: Record<string, string | object> | undefined;
77
+ }> | undefined;
78
+ customLogger?: Readonly<{
79
+ getLogger: (context: Readonly<{
80
+ config: Readonly<any>;
81
+ rootLogger: Readonly<any>;
82
+ constants: {
83
+ environment: string;
84
+ workingDirectory: string;
85
+ runtimeId: string;
86
+ };
87
+ }>, props?: {
88
+ ids?: readonly Readonly<Record<string, string>>[] | undefined;
89
+ data?: Record<string, any> | undefined;
90
+ } | undefined) => import("@node-in-layers/core/types.js").HighLevelLogger;
91
+ }> | undefined;
92
+ getFunctionWrapLogLevel?: ((layerName: string, functionName?: string | undefined) => import("@node-in-layers/core/types.js").LogLevelNames) | undefined;
93
+ ignoreLayerFunctions?: Record<string, boolean | Record<string, boolean | Record<string, boolean>>> | undefined;
94
+ };
95
+ layerOrder: readonly import("@node-in-layers/core/types.js").LayerDescription[];
96
+ apps: readonly Readonly<{
97
+ name: string;
98
+ description?: string | undefined;
99
+ services?: Readonly<{
100
+ create: (context: any) => import("@node-in-layers/core/types.js").MaybePromise<object>;
101
+ }> | undefined;
102
+ features?: Readonly<{
103
+ create: (context: any) => import("@node-in-layers/core/types.js").MaybePromise<object>;
104
+ }> | undefined;
105
+ globals?: Readonly<{
106
+ create: (context: Readonly<{
107
+ config: Readonly<any>;
108
+ rootLogger: Readonly<{
109
+ getLogger: (context: Readonly<{
110
+ config: Readonly<any>;
111
+ rootLogger: Readonly<any>;
112
+ constants: {
113
+ environment: string;
114
+ workingDirectory: string;
115
+ runtimeId: string;
116
+ };
117
+ }>, props?: {
118
+ ids?: readonly Readonly<Record<string, string>>[] | undefined;
119
+ data?: Record<string, any> | undefined;
120
+ } | undefined) => import("@node-in-layers/core/types.js").HighLevelLogger;
121
+ }>;
122
+ constants: {
123
+ environment: string;
124
+ workingDirectory: string;
125
+ runtimeId: string;
126
+ };
127
+ }>) => Promise<any>;
128
+ }> | undefined;
129
+ models?: Record<string, Readonly<{
130
+ create: <T extends Readonly<{
131
+ [s: string]: any;
132
+ }>, TModelExtensions extends object = object, TModelInstanceExtensions extends object = object>(modelProps: Readonly<{
133
+ Model: import("functional-models/types.js").ModelFactory<object, object>;
134
+ fetcher: import("functional-models/types.js").ModelInstanceFetcher<object, object>;
135
+ getModel: <T_1 extends Readonly<{
136
+ [s: string]: any;
137
+ }>>(namespace: string, modelName: string) => () => import("functional-models/types.js").ModelType<T_1, object, object>;
138
+ }>) => import("functional-models/types.js").ModelType<T, TModelExtensions, TModelInstanceExtensions>;
139
+ }>> | undefined;
140
+ }>[];
141
+ modelFactory?: string | undefined;
142
+ modelCruds?: boolean | undefined;
143
+ customModelFactory?: {
144
+ [x: string]: {
145
+ [x: string]: string | [string, string] | [string, string, any[]];
146
+ };
147
+ } | undefined;
148
+ }>;
149
+ }>>(context: any) => {
150
+ listModels: () => ServerTool;
151
+ describe: () => ServerTool;
152
+ save: () => ServerTool;
153
+ retrieve: () => ServerTool;
154
+ delete: () => ServerTool;
155
+ search: () => ServerTool;
156
+ bulkInsert: () => ServerTool;
157
+ bulkDelete: () => ServerTool;
158
+ };