@node-in-layers/mcp-server 1.0.3 → 1.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 +21 -8
- package/mcp.js.map +1 -1
- package/package.json +2 -1
- package/types.d.ts +10 -2
- package/types.js.map +1 -1
package/mcp.js
CHANGED
|
@@ -16,6 +16,7 @@ const DEFAULT_RESPONSE_REQUEST_LOG_LEVEL = 'info';
|
|
|
16
16
|
const create = (context) => {
|
|
17
17
|
const tools = [];
|
|
18
18
|
const models = [];
|
|
19
|
+
const preRouteMiddleware = [];
|
|
19
20
|
const addTool = (tool) => {
|
|
20
21
|
// eslint-disable-next-line functional/immutable-data
|
|
21
22
|
tools.push(tool);
|
|
@@ -79,19 +80,30 @@ const create = (context) => {
|
|
|
79
80
|
});
|
|
80
81
|
return Object.assign(Object.assign({}, tool), { execute });
|
|
81
82
|
};
|
|
82
|
-
const _getServer = (
|
|
83
|
+
const _getServer = () => {
|
|
83
84
|
const allTools = [...tools, ...models].map(_wrapToolsWithLogger);
|
|
84
|
-
const server = createSimpleServer(
|
|
85
|
-
|
|
86
|
-
|
|
85
|
+
const server = createSimpleServer({
|
|
86
|
+
name: context.config[McpNamespace].name || '@node-in-layers/mcp-server',
|
|
87
|
+
version: context.config[McpNamespace].version || '1.0.0',
|
|
88
|
+
tools: allTools,
|
|
89
|
+
server: context.config[McpNamespace].server,
|
|
90
|
+
}, {
|
|
91
|
+
express: {
|
|
92
|
+
preRouteMiddleware,
|
|
93
|
+
},
|
|
94
|
+
});
|
|
87
95
|
return server;
|
|
88
96
|
};
|
|
89
|
-
const
|
|
90
|
-
|
|
97
|
+
const addPreRouteMiddleware = (middleware) => {
|
|
98
|
+
// eslint-disable-next-line functional/immutable-data
|
|
99
|
+
preRouteMiddleware.push(middleware);
|
|
100
|
+
};
|
|
101
|
+
const start = () => __awaiter(void 0, void 0, void 0, function* () {
|
|
102
|
+
const server = _getServer();
|
|
91
103
|
yield server.start();
|
|
92
104
|
});
|
|
93
|
-
const getApp = (
|
|
94
|
-
const server = _getServer(
|
|
105
|
+
const getApp = () => {
|
|
106
|
+
const server = _getServer();
|
|
95
107
|
// @ts-ignore
|
|
96
108
|
if (!(server === null || server === void 0 ? void 0 : server.getApp)) {
|
|
97
109
|
throw new Error(`Server not http or sse`);
|
|
@@ -104,6 +116,7 @@ const create = (context) => {
|
|
|
104
116
|
getApp,
|
|
105
117
|
addTool,
|
|
106
118
|
addModelCruds,
|
|
119
|
+
addPreRouteMiddleware,
|
|
107
120
|
};
|
|
108
121
|
};
|
|
109
122
|
/**
|
package/mcp.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp.js","sourceRoot":"","sources":["../src/mcp.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,GAAG,MAAM,eAAe,CAAA;AAM/B,OAAO,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAA;AAGvE,OAAO,EACL,gCAAgC,GAEjC,MAAM,2BAA2B,CAAA;AAClC,OAAO,EAAE,EAAE,IAAI,MAAM,EAAE,MAAM,MAAM,CAAA;AACnC,OAAO,EAIL,YAAY,GACb,MAAM,YAAY,CAAA;AAEnB,MAAM,kCAAkC,GAAG,MAAM,CAAA;AAEjD,MAAM,MAAM,GAAG,CACb,OAA6C,EAC/B,EAAE;IAChB,MAAM,KAAK,GAAiB,EAAE,CAAA;IAC9B,MAAM,MAAM,GAAiB,EAAE,CAAA;
|
|
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.0
|
|
4
|
+
"version": "1.1.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": {
|
|
@@ -66,6 +66,7 @@
|
|
|
66
66
|
"express": "^5.1.0",
|
|
67
67
|
"functional-models": "^3.0.16",
|
|
68
68
|
"functional-models-orm-mcp": "^3.0.3",
|
|
69
|
+
"lodash": "^4.17.21",
|
|
69
70
|
"uuid": "^11.1.0"
|
|
70
71
|
}
|
|
71
72
|
}
|
package/types.d.ts
CHANGED
|
@@ -1,12 +1,18 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ExpressMiddleware } from '@l4t/mcp-ai/common/types.js';
|
|
2
|
+
import { ServerTool } from '@l4t/mcp-ai/simple-server/types.js';
|
|
3
|
+
import { ServerHttpConfig, ServerCliConfig, ServerSseConfig, ServerStatelessHttpConfig } from '@l4t/mcp-ai';
|
|
2
4
|
import { Config, CommonContext, LogLevelNames, LayerContext, ModelCrudsFunctions } from '@node-in-layers/core';
|
|
3
5
|
import { Express } from 'express';
|
|
4
6
|
import { ToolNameGenerator } from 'functional-models-orm-mcp';
|
|
7
|
+
type Connection = ServerHttpConfig | ServerCliConfig | ServerSseConfig | ServerStatelessHttpConfig;
|
|
5
8
|
export type McpServerConfig = Readonly<{
|
|
6
9
|
[McpNamespace]: {
|
|
7
10
|
name?: string;
|
|
8
11
|
version?: string;
|
|
9
|
-
|
|
12
|
+
stateless?: boolean;
|
|
13
|
+
server: {
|
|
14
|
+
connection: Connection;
|
|
15
|
+
};
|
|
10
16
|
logging?: {
|
|
11
17
|
requestLogLevel: LogLevelNames;
|
|
12
18
|
responseLogLevel: LogLevelNames;
|
|
@@ -21,6 +27,7 @@ export type McpServerMcp = Readonly<{
|
|
|
21
27
|
addModelCruds: (modelCruds: ModelCrudsFunctions<any>, opts: {
|
|
22
28
|
nameGenerator: ToolNameGenerator;
|
|
23
29
|
}) => void;
|
|
30
|
+
addPreRouteMiddleware: (middleware: ExpressMiddleware) => void;
|
|
24
31
|
}>;
|
|
25
32
|
export type McpServerMcpLayer = Readonly<{
|
|
26
33
|
[McpNamespace]: McpServerMcp;
|
|
@@ -29,3 +36,4 @@ export type McpContext<TConfig extends Config = Config, TFeatures extends object
|
|
|
29
36
|
features: TFeatures;
|
|
30
37
|
mcp: McpServerMcpLayer & TMcpLayer;
|
|
31
38
|
}> & CommonContext<TConfig>;
|
|
39
|
+
export {};
|
package/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAuCA,MAAM,CAAC,MAAM,YAAY,GAAG,4BAA4B,CAAA"}
|