@node-in-layers/mcp-server 1.4.2 → 1.5.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,6 +8,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
8
8
  });
9
9
  };
10
10
  import get from 'lodash/get.js';
11
+ import { createErrorObject, } from '@node-in-layers/core';
11
12
  import { createSimpleServer } from '@l4t/mcp-ai/simple-server/index.js';
12
13
  import { generateMcpToolForModelOperation, } from 'functional-models-orm-mcp';
13
14
  import { v4 as uuidv4 } from 'uuid';
@@ -30,16 +31,16 @@ const create = (context) => {
30
31
  const _createToolsForModelCruds = (cruds, opts) => {
31
32
  const model = cruds.getModel();
32
33
  const tools = [
33
- Object.assign(Object.assign({}, generateMcpToolForModelOperation(model, 'save', opts)), { execute: (input) => __awaiter(void 0, void 0, void 0, function* () {
34
+ Object.assign(Object.assign({}, generateMcpToolForModelOperation(model, 'save', opts)), { execute: _execute((input) => __awaiter(void 0, void 0, void 0, function* () {
34
35
  return cruds.create(input).then(x => x.toObj());
35
- }) }),
36
- Object.assign(Object.assign({}, generateMcpToolForModelOperation(model, 'retrieve', opts)), { execute: ({ id }) => __awaiter(void 0, void 0, void 0, function* () {
36
+ })) }),
37
+ Object.assign(Object.assign({}, generateMcpToolForModelOperation(model, 'retrieve', opts)), { execute: _execute(({ id }) => __awaiter(void 0, void 0, void 0, function* () {
37
38
  return cruds.retrieve(id).then(x => (x ? x.toObj() : null));
38
- }) }),
39
- Object.assign(Object.assign({}, generateMcpToolForModelOperation(model, 'delete', opts)), { execute: ({ id }) => __awaiter(void 0, void 0, void 0, function* () {
39
+ })) }),
40
+ Object.assign(Object.assign({}, generateMcpToolForModelOperation(model, 'delete', opts)), { execute: _execute(({ id }) => __awaiter(void 0, void 0, void 0, function* () {
40
41
  yield cruds.delete(id);
41
- }) }),
42
- Object.assign(Object.assign({}, generateMcpToolForModelOperation(model, 'search', opts)), { execute: (input) => __awaiter(void 0, void 0, void 0, function* () {
42
+ })) }),
43
+ Object.assign(Object.assign({}, generateMcpToolForModelOperation(model, 'search', opts)), { execute: _execute((input) => __awaiter(void 0, void 0, void 0, function* () {
43
44
  return cruds.search(input).then((result) => __awaiter(void 0, void 0, void 0, function* () {
44
45
  const instances = yield asyncMap(result.instances, y => y.toObj());
45
46
  return {
@@ -47,13 +48,13 @@ const create = (context) => {
47
48
  page: result.page,
48
49
  };
49
50
  }));
50
- }) }),
51
- Object.assign(Object.assign({}, generateMcpToolForModelOperation(model, 'bulkInsert', opts)), { execute: (input) => __awaiter(void 0, void 0, void 0, function* () {
51
+ })) }),
52
+ Object.assign(Object.assign({}, generateMcpToolForModelOperation(model, 'bulkInsert', opts)), { execute: _execute((input) => __awaiter(void 0, void 0, void 0, function* () {
52
53
  yield cruds.bulkInsert(input.items);
53
- }) }),
54
- Object.assign(Object.assign({}, generateMcpToolForModelOperation(model, 'bulkDelete', opts)), { execute: (input) => __awaiter(void 0, void 0, void 0, function* () {
54
+ })) }),
55
+ Object.assign(Object.assign({}, generateMcpToolForModelOperation(model, 'bulkDelete', opts)), { execute: _execute((input) => __awaiter(void 0, void 0, void 0, function* () {
55
56
  yield cruds.bulkDelete(input.ids);
56
- }) }),
57
+ })) }),
57
58
  ];
58
59
  return tools;
59
60
  };
@@ -122,8 +123,37 @@ const create = (context) => {
122
123
  // @ts-ignore
123
124
  return server.getApp();
124
125
  };
126
+ const _formatResponse = (result) => {
127
+ if ('error' in result) {
128
+ return {
129
+ content: [
130
+ {
131
+ type: 'text',
132
+ text: JSON.stringify(result),
133
+ },
134
+ ],
135
+ };
136
+ }
137
+ return {
138
+ content: [
139
+ {
140
+ type: 'text',
141
+ text: JSON.stringify(result),
142
+ },
143
+ ],
144
+ };
145
+ };
146
+ const _execute = (func) => (...inputs) => {
147
+ return func(...inputs)
148
+ .then(_formatResponse)
149
+ .catch(error => {
150
+ const errorObj = createErrorObject('UNCAUGHT_EXCEPTION', 'An uncaught exception occurred while executing the feature.', error);
151
+ return errorObj;
152
+ });
153
+ };
125
154
  const addFeature = (featureFunc, tool) => {
126
- tools.push(Object.assign(Object.assign({}, tool), { execute: (input, crossLayerProps) => __awaiter(void 0, void 0, void 0, function* () {
155
+ // eslint-disable-next-line functional/immutable-data
156
+ tools.push(Object.assign(Object.assign({}, tool), { execute: _execute((input, crossLayerProps) => {
127
157
  return featureFunc(
128
158
  // @ts-ignore
129
159
  ...(Array.isArray(input) ? input : [input]).concat(crossLayerProps));
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/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@node-in-layers/mcp-server",
3
3
  "type": "module",
4
- "version": "1.4.2",
4
+ "version": "1.5.0",
5
5
  "description": "An MCP Server Node In Layers Package, generated by the Node In Layers Toolkit.",
6
6
  "main": "index.js",
7
7
  "scripts": {
@@ -61,11 +61,12 @@
61
61
  "typescript": "5.3.3"
62
62
  },
63
63
  "dependencies": {
64
- "@l4t/mcp-ai": "^1.4.1",
65
- "@node-in-layers/core": "^1.6.1",
64
+ "@l4t/mcp-ai": "^1.5.0",
65
+ "@modelcontextprotocol/sdk": "^1.13.2",
66
+ "@node-in-layers/core": "^1.6.3",
66
67
  "express": "^5.1.0",
67
68
  "functional-models": "^3.0.16",
68
- "functional-models-orm-mcp": "^3.1.2",
69
+ "functional-models-orm-mcp": "^3.2.0",
69
70
  "lodash": "^4.17.21",
70
71
  "modern-async": "^2.0.4",
71
72
  "uuid": "^11.1.0"
package/types.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  import { ExpressRoute, ExpressMiddleware, McpTool } from '@l4t/mcp-ai/common/types.js';
2
2
  import { ServerTool } from '@l4t/mcp-ai/simple-server/types.js';
3
3
  import { ServerHttpConfig, ServerCliConfig, ServerSseConfig, ServerStatelessHttpConfig } from '@l4t/mcp-ai';
4
- import { Config, CommonContext, LogLevelNames, LayerContext, ModelCrudsFunctions } from '@node-in-layers/core';
4
+ import { Config, CommonContext, LogLevelNames, LayerContext, ModelCrudsFunctions, Response } from '@node-in-layers/core';
5
5
  import { Express } from 'express';
6
6
  import { ToolNameGenerator } from 'functional-models-orm-mcp';
7
7
  type Connection = ServerHttpConfig | ServerCliConfig | ServerSseConfig | ServerStatelessHttpConfig;
@@ -28,7 +28,7 @@ export type McpServerMcp = Readonly<{
28
28
  nameGenerator: ToolNameGenerator;
29
29
  }) => void;
30
30
  addPreRouteMiddleware: (middleware: ExpressMiddleware) => void;
31
- addFeature: <T>(featureFunc: (input: T) => Promise<any>, tool: McpTool) => void;
31
+ addFeature: <T extends object = object, R extends object = object>(featureFunc: (input: T) => Promise<Response<R>>, tool: McpTool) => void;
32
32
  addAdditionalRoute: (route: ExpressRoute) => void;
33
33
  }>;
34
34
  export type McpServerMcpLayer = Readonly<{
package/types.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AA2CA,MAAM,CAAC,MAAM,YAAY,GAAG,4BAA4B,CAAA"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AA4CA,MAAM,CAAC,MAAM,YAAY,GAAG,4BAA4B,CAAA"}