@1mcp/agent 0.18.1 → 0.20.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/README.md +64 -27
- package/build/commands/mcp/add.d.ts +3 -0
- package/build/commands/mcp/add.d.ts.map +1 -1
- package/build/commands/mcp/add.js +24 -0
- package/build/commands/mcp/add.js.map +1 -1
- package/build/commands/mcp/index.d.ts.map +1 -1
- package/build/commands/mcp/index.js +24 -0
- package/build/commands/mcp/index.js.map +1 -1
- package/build/commands/mcp/list.d.ts +1 -0
- package/build/commands/mcp/list.d.ts.map +1 -1
- package/build/commands/mcp/list.js +26 -8
- package/build/commands/mcp/list.js.map +1 -1
- package/build/commands/mcp/update.d.ts +3 -0
- package/build/commands/mcp/update.d.ts.map +1 -1
- package/build/commands/mcp/update.js +21 -0
- package/build/commands/mcp/update.js.map +1 -1
- package/build/config/mcpConfigManager.d.ts.map +1 -1
- package/build/config/mcpConfigManager.js +7 -3
- package/build/config/mcpConfigManager.js.map +1 -1
- package/build/constants.d.ts +1 -1
- package/build/constants.js +1 -1
- package/build/core/types/server.d.ts +3 -0
- package/build/core/types/server.d.ts.map +1 -1
- package/build/core/types/server.js.map +1 -1
- package/build/core/types/transport.d.ts +27 -5
- package/build/core/types/transport.d.ts.map +1 -1
- package/build/core/types/transport.js +7 -2
- package/build/core/types/transport.js.map +1 -1
- package/build/handlers/requestHandlers.d.ts.map +1 -1
- package/build/handlers/requestHandlers.js +20 -5
- package/build/handlers/requestHandlers.js.map +1 -1
- package/build/index.js +39 -5
- package/build/index.js.map +1 -1
- package/build/transport/http/middlewares/scopeAuthMiddleware.d.ts +9 -0
- package/build/transport/http/middlewares/scopeAuthMiddleware.d.ts.map +1 -1
- package/build/transport/http/middlewares/scopeAuthMiddleware.js +55 -6
- package/build/transport/http/middlewares/scopeAuthMiddleware.js.map +1 -1
- package/build/transport/http/middlewares/tagsExtractor.d.ts +8 -2
- package/build/transport/http/middlewares/tagsExtractor.d.ts.map +1 -1
- package/build/transport/http/middlewares/tagsExtractor.js +109 -7
- package/build/transport/http/middlewares/tagsExtractor.js.map +1 -1
- package/build/transport/http/routes/oauthRoutes.d.ts +2 -1
- package/build/transport/http/routes/oauthRoutes.d.ts.map +1 -1
- package/build/transport/http/routes/oauthRoutes.js +13 -1
- package/build/transport/http/routes/oauthRoutes.js.map +1 -1
- package/build/transport/http/routes/sseRoutes.d.ts.map +1 -1
- package/build/transport/http/routes/sseRoutes.js +6 -2
- package/build/transport/http/routes/sseRoutes.js.map +1 -1
- package/build/transport/http/routes/streamableHttpRoutes.d.ts.map +1 -1
- package/build/transport/http/routes/streamableHttpRoutes.js +6 -2
- package/build/transport/http/routes/streamableHttpRoutes.js.map +1 -1
- package/build/transport/http/server.js +1 -1
- package/build/transport/http/server.js.map +1 -1
- package/build/transport/restartableStdioTransport.d.ts +84 -0
- package/build/transport/restartableStdioTransport.d.ts.map +1 -0
- package/build/transport/restartableStdioTransport.js +185 -0
- package/build/transport/restartableStdioTransport.js.map +1 -0
- package/build/transport/transportFactory.d.ts.map +1 -1
- package/build/transport/transportFactory.js +38 -2
- package/build/transport/transportFactory.js.map +1 -1
- package/build/utils/clientFiltering.d.ts +8 -1
- package/build/utils/clientFiltering.d.ts.map +1 -1
- package/build/utils/clientFiltering.js +38 -3
- package/build/utils/clientFiltering.js.map +1 -1
- package/build/utils/envProcessor.d.ts +45 -0
- package/build/utils/envProcessor.d.ts.map +1 -0
- package/build/utils/envProcessor.js +214 -0
- package/build/utils/envProcessor.js.map +1 -0
- package/build/utils/sanitization.d.ts +63 -0
- package/build/utils/sanitization.d.ts.map +1 -1
- package/build/utils/sanitization.js +308 -0
- package/build/utils/sanitization.js.map +1 -1
- package/build/utils/tagQueryParser.d.ts +76 -0
- package/build/utils/tagQueryParser.d.ts.map +1 -0
- package/build/utils/tagQueryParser.js +336 -0
- package/build/utils/tagQueryParser.js.map +1 -0
- package/package.json +1 -1
package/build/constants.js
CHANGED
|
@@ -12,7 +12,7 @@ export const HEALTH_ENDPOINT = '/health';
|
|
|
12
12
|
// MCP constants
|
|
13
13
|
export const MCP_CONFIG_FILE = 'mcp.json';
|
|
14
14
|
export const MCP_SERVER_NAME = '1mcp';
|
|
15
|
-
export const MCP_SERVER_VERSION = '0.
|
|
15
|
+
export const MCP_SERVER_VERSION = '0.20.0';
|
|
16
16
|
export const MCP_URI_SEPARATOR = '_1mcp_';
|
|
17
17
|
// Global config paths
|
|
18
18
|
export const CONFIG_DIR_NAME = '1mcp';
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { Server } from '@modelcontextprotocol/sdk/server/index.js';
|
|
2
2
|
import { ServerCapabilities } from '@modelcontextprotocol/sdk/types.js';
|
|
3
|
+
import { TagExpression } from '../../utils/tagQueryParser.js';
|
|
3
4
|
/**
|
|
4
5
|
* Enum representing possible server connection states
|
|
5
6
|
*/
|
|
@@ -15,6 +16,8 @@ export declare enum ServerStatus {
|
|
|
15
16
|
}
|
|
16
17
|
export interface InboundConnectionConfig {
|
|
17
18
|
readonly tags?: string[];
|
|
19
|
+
readonly tagExpression?: TagExpression;
|
|
20
|
+
readonly tagFilterMode?: 'simple-or' | 'advanced' | 'none';
|
|
18
21
|
readonly enablePagination?: boolean;
|
|
19
22
|
}
|
|
20
23
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../../src/core/types/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AACnE,OAAO,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../../src/core/types/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AACnE,OAAO,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AACxE,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAE9D;;GAEG;AACH,oBAAY,YAAY;IACtB,qCAAqC;IACrC,UAAU,eAAe;IACzB,uCAAuC;IACvC,SAAS,cAAc;IACvB,6BAA6B;IAC7B,YAAY,iBAAiB;IAC7B,kCAAkC;IAClC,KAAK,UAAU;CAChB;AAED,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,QAAQ,CAAC,aAAa,CAAC,EAAE,aAAa,CAAC;IACvC,QAAQ,CAAC,aAAa,CAAC,EAAE,WAAW,GAAG,UAAU,GAAG,MAAM,CAAC;IAC3D,QAAQ,CAAC,gBAAgB,CAAC,EAAE,OAAO,CAAC;CACrC;AAED;;GAEG;AACH,MAAM,WAAW,iBAAkB,SAAQ,uBAAuB;IAChE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,MAAM,EAAE,YAAY,CAAC;IACrB,SAAS,CAAC,EAAE,KAAK,CAAC;IAClB,aAAa,CAAC,EAAE,IAAI,CAAC;IACrB,WAAW,CAAC,EAAE,IAAI,CAAC;CACpB;AAED,MAAM,MAAM,gBAAgB,GAAG,MAAM,kBAAkB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../../src/core/types/server.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../../src/core/types/server.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH,MAAM,CAAN,IAAY,YASX;AATD,WAAY,YAAY;IACtB,qCAAqC;IACrC,yCAAyB,CAAA;IACzB,uCAAuC;IACvC,uCAAuB,CAAA;IACvB,6BAA6B;IAC7B,6CAA6B,CAAA;IAC7B,kCAAkC;IAClC,+BAAe,CAAA;AACjB,CAAC,EATW,YAAY,KAAZ,YAAY,QASvB"}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
import { Transport } from '@modelcontextprotocol/sdk/shared/transport.js';
|
|
3
|
+
import { IOType } from 'node:child_process';
|
|
4
|
+
import { Stream } from 'node:stream';
|
|
3
5
|
/**
|
|
4
6
|
* Enhanced transport interface that includes MCP-specific properties
|
|
5
7
|
*/
|
|
@@ -41,9 +43,14 @@ export interface StdioTransportConfig extends BaseTransportConfig {
|
|
|
41
43
|
readonly type: 'stdio';
|
|
42
44
|
readonly command: string;
|
|
43
45
|
readonly args?: string[];
|
|
44
|
-
readonly stderr?:
|
|
46
|
+
readonly stderr?: IOType | Stream | number;
|
|
45
47
|
readonly cwd?: string;
|
|
46
|
-
readonly env?: Record<string, string
|
|
48
|
+
readonly env?: Record<string, string> | string[];
|
|
49
|
+
readonly inheritParentEnv?: boolean;
|
|
50
|
+
readonly envFilter?: string[];
|
|
51
|
+
readonly restartOnExit?: boolean;
|
|
52
|
+
readonly maxRestarts?: number;
|
|
53
|
+
readonly restartDelay?: number;
|
|
47
54
|
}
|
|
48
55
|
/**
|
|
49
56
|
* Zod schema for OAuth configuration
|
|
@@ -94,7 +101,12 @@ export declare const transportConfigSchema: z.ZodObject<{
|
|
|
94
101
|
args: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
95
102
|
stderr: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNumber]>>;
|
|
96
103
|
cwd: z.ZodOptional<z.ZodString>;
|
|
97
|
-
env: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
104
|
+
env: z.ZodOptional<z.ZodUnion<[z.ZodRecord<z.ZodString, z.ZodString>, z.ZodArray<z.ZodString, "many">]>>;
|
|
105
|
+
inheritParentEnv: z.ZodOptional<z.ZodBoolean>;
|
|
106
|
+
envFilter: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
107
|
+
restartOnExit: z.ZodOptional<z.ZodBoolean>;
|
|
108
|
+
maxRestarts: z.ZodOptional<z.ZodNumber>;
|
|
109
|
+
restartDelay: z.ZodOptional<z.ZodNumber>;
|
|
98
110
|
}, "strip", z.ZodTypeAny, {
|
|
99
111
|
type?: "stdio" | "http" | "sse" | "streamableHttp" | undefined;
|
|
100
112
|
url?: string | undefined;
|
|
@@ -103,7 +115,12 @@ export declare const transportConfigSchema: z.ZodObject<{
|
|
|
103
115
|
args?: string[] | undefined;
|
|
104
116
|
stderr?: string | number | undefined;
|
|
105
117
|
cwd?: string | undefined;
|
|
106
|
-
env?: Record<string, string> | undefined;
|
|
118
|
+
env?: Record<string, string> | string[] | undefined;
|
|
119
|
+
inheritParentEnv?: boolean | undefined;
|
|
120
|
+
envFilter?: string[] | undefined;
|
|
121
|
+
restartOnExit?: boolean | undefined;
|
|
122
|
+
maxRestarts?: number | undefined;
|
|
123
|
+
restartDelay?: number | undefined;
|
|
107
124
|
disabled?: boolean | undefined;
|
|
108
125
|
timeout?: number | undefined;
|
|
109
126
|
tags?: string[] | undefined;
|
|
@@ -121,7 +138,12 @@ export declare const transportConfigSchema: z.ZodObject<{
|
|
|
121
138
|
args?: string[] | undefined;
|
|
122
139
|
stderr?: string | number | undefined;
|
|
123
140
|
cwd?: string | undefined;
|
|
124
|
-
env?: Record<string, string> | undefined;
|
|
141
|
+
env?: Record<string, string> | string[] | undefined;
|
|
142
|
+
inheritParentEnv?: boolean | undefined;
|
|
143
|
+
envFilter?: string[] | undefined;
|
|
144
|
+
restartOnExit?: boolean | undefined;
|
|
145
|
+
maxRestarts?: number | undefined;
|
|
146
|
+
restartDelay?: number | undefined;
|
|
125
147
|
disabled?: boolean | undefined;
|
|
126
148
|
timeout?: number | undefined;
|
|
127
149
|
tags?: string[] | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transport.d.ts","sourceRoot":"","sources":["../../../src/core/types/transport.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,SAAS,EAAE,MAAM,+CAA+C,CAAC;
|
|
1
|
+
{"version":3,"file":"transport.d.ts","sourceRoot":"","sources":["../../../src/core/types/transport.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,SAAS,EAAE,MAAM,+CAA+C,CAAC;AAC1E,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC;;GAEG;AACH,MAAM,WAAW,iBAAkB,SAAQ,SAAS;IAClD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,QAAQ,CAAC,YAAY,CAAC,EAAE,OAAO,CAAC;IAChC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,QAAQ,CAAC,KAAK,CAAC,EAAE,WAAW,CAAC;CAC9B;AAED;;GAEG;AACH,MAAM,WAAW,wBAAyB,SAAQ,mBAAmB;IACnE,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,KAAK,CAAC;IAC9B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC3C;AAED;;GAEG;AACH,MAAM,WAAW,oBAAqB,SAAQ,mBAAmB;IAC/D,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;IAC3C,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,EAAE,CAAC;IACjD,QAAQ,CAAC,gBAAgB,CAAC,EAAE,OAAO,CAAC;IACpC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IAC9B,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,CAAC;IACjC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;CAChC;AAED;;GAEG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;EAK5B,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAsBhC,CAAC;AAEH;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG,wBAAwB,GAAG,oBAAoB,CAAC;AAE9E;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC"}
|
|
@@ -23,8 +23,13 @@ export const transportConfigSchema = z.object({
|
|
|
23
23
|
// StdioServerParameters fields
|
|
24
24
|
command: z.string().optional(),
|
|
25
25
|
args: z.array(z.string()).optional(),
|
|
26
|
-
stderr: z.union([z.string(), z.number()]).optional(),
|
|
26
|
+
stderr: z.union([z.string(), z.number()]).optional(), // Note: IOType validation is complex, keeping simple validation
|
|
27
27
|
cwd: z.string().optional(),
|
|
28
|
-
env: z.record(z.string()).optional(),
|
|
28
|
+
env: z.union([z.record(z.string()), z.array(z.string())]).optional(),
|
|
29
|
+
inheritParentEnv: z.boolean().optional(),
|
|
30
|
+
envFilter: z.array(z.string()).optional(),
|
|
31
|
+
restartOnExit: z.boolean().optional(),
|
|
32
|
+
maxRestarts: z.number().min(0).optional(),
|
|
33
|
+
restartDelay: z.number().min(0).optional(),
|
|
29
34
|
});
|
|
30
35
|
//# sourceMappingURL=transport.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transport.js","sourceRoot":"","sources":["../../../src/core/types/transport.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"transport.js","sourceRoot":"","sources":["../../../src/core/types/transport.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AA4DxB;;GAEG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACxC,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC/B,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACnC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;IACtC,YAAY,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;CACrC,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5C,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAAC,QAAQ,EAAE;IACnE,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAChC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC9B,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;IACpC,KAAK,EAAE,iBAAiB,CAAC,QAAQ,EAAE;IAEnC,sBAAsB;IACtB,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;IAChC,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;IAExC,+BAA+B;IAC/B,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC9B,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;IACpC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,EAAE,gEAAgE;IACtH,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC1B,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IACpE,gBAAgB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IACxC,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;IACzC,aAAa,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IACrC,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IACzC,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;CAC3C,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"requestHandlers.d.ts","sourceRoot":"","sources":["../../src/handlers/requestHandlers.ts"],"names":[],"mappings":"AAiCA,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAgB,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"requestHandlers.d.ts","sourceRoot":"","sources":["../../src/handlers/requestHandlers.ts"],"names":[],"mappings":"AAiCA,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAgB,MAAM,wBAAwB,CAAC;AAqE9F;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CAAC,aAAa,EAAE,mBAAmB,EAAE,WAAW,EAAE,iBAAiB,GAAG,IAAI,CA6ChH"}
|
|
@@ -5,10 +5,25 @@ import { ClientManager } from '../core/client/clientManager.js';
|
|
|
5
5
|
import { ServerManager } from '../core/server/serverManager.js';
|
|
6
6
|
import { parseUri } from '../utils/parsing.js';
|
|
7
7
|
import { withErrorHandling } from '../utils/errorHandling.js';
|
|
8
|
-
import { filterClients, byCapabilities, byTags } from '../utils/clientFiltering.js';
|
|
8
|
+
import { filterClients, byCapabilities, byTags, byTagExpression } from '../utils/clientFiltering.js';
|
|
9
9
|
import { ClientStatus } from '../core/types/index.js';
|
|
10
10
|
import { handlePagination } from '../utils/pagination.js';
|
|
11
11
|
import logger from '../logger/logger.js';
|
|
12
|
+
/**
|
|
13
|
+
* Get the appropriate tag filter for the inbound connection based on its tag filter mode
|
|
14
|
+
*/
|
|
15
|
+
function getTagFilter(inboundConn) {
|
|
16
|
+
if (inboundConn.tagFilterMode === 'advanced' && inboundConn.tagExpression) {
|
|
17
|
+
return byTagExpression(inboundConn.tagExpression);
|
|
18
|
+
}
|
|
19
|
+
else if (inboundConn.tagFilterMode === 'simple-or' || inboundConn.tags) {
|
|
20
|
+
return getTagFilter(inboundConn);
|
|
21
|
+
}
|
|
22
|
+
else {
|
|
23
|
+
// No filtering - return function that passes all clients through
|
|
24
|
+
return byTags(undefined);
|
|
25
|
+
}
|
|
26
|
+
}
|
|
12
27
|
/**
|
|
13
28
|
* Registers server-specific request handlers
|
|
14
29
|
* @param outboundConns Record of client instances
|
|
@@ -87,7 +102,7 @@ export function registerRequestHandlers(outboundConns, inboundConn) {
|
|
|
87
102
|
function registerResourceHandlers(outboundConns, inboundConn) {
|
|
88
103
|
// List Resources handler
|
|
89
104
|
inboundConn.server.setRequestHandler(ListResourcesRequestSchema, withErrorHandling(async (request) => {
|
|
90
|
-
const filteredClients = filterClients(byCapabilities({ resources: {} }),
|
|
105
|
+
const filteredClients = filterClients(byCapabilities({ resources: {} }), getTagFilter(inboundConn))(outboundConns);
|
|
91
106
|
const result = await handlePagination(filteredClients, request.params || {}, (client, params, opts) => client.listResources(params, opts), (outboundConn, result) => result.resources?.map((resource) => ({
|
|
92
107
|
uri: `${outboundConn.name}${MCP_URI_SEPARATOR}${resource.uri}`,
|
|
93
108
|
name: resource.name,
|
|
@@ -101,7 +116,7 @@ function registerResourceHandlers(outboundConns, inboundConn) {
|
|
|
101
116
|
}, 'Error listing resources'));
|
|
102
117
|
// List Resource Templates handler
|
|
103
118
|
inboundConn.server.setRequestHandler(ListResourceTemplatesRequestSchema, withErrorHandling(async (request) => {
|
|
104
|
-
const filteredClients = filterClients(byCapabilities({ resources: {} }),
|
|
119
|
+
const filteredClients = filterClients(byCapabilities({ resources: {} }), getTagFilter(inboundConn))(outboundConns);
|
|
105
120
|
const result = await handlePagination(filteredClients, request.params || {}, (client, params, opts) => client.listResourceTemplates(params, opts), (outboundConn, result) => result.resourceTemplates?.map((template) => ({
|
|
106
121
|
uriTemplate: `${outboundConn.name}${MCP_URI_SEPARATOR}${template.uriTemplate}`,
|
|
107
122
|
name: template.name,
|
|
@@ -143,7 +158,7 @@ function registerResourceHandlers(outboundConns, inboundConn) {
|
|
|
143
158
|
function registerToolHandlers(outboundConns, inboundConn) {
|
|
144
159
|
// List Tools handler
|
|
145
160
|
inboundConn.server.setRequestHandler(ListToolsRequestSchema, withErrorHandling(async (request) => {
|
|
146
|
-
const filteredClients = filterClients(byCapabilities({ tools: {} }),
|
|
161
|
+
const filteredClients = filterClients(byCapabilities({ tools: {} }), getTagFilter(inboundConn))(outboundConns);
|
|
147
162
|
const result = await handlePagination(filteredClients, request.params || {}, (client, params, opts) => client.listTools(params, opts), (outboundConn, result) => result.tools?.map((tool) => ({
|
|
148
163
|
name: `${outboundConn.name}${MCP_URI_SEPARATOR}${tool.name}`,
|
|
149
164
|
description: tool.description,
|
|
@@ -172,7 +187,7 @@ function registerToolHandlers(outboundConns, inboundConn) {
|
|
|
172
187
|
function registerPromptHandlers(outboundConns, inboundConn) {
|
|
173
188
|
// List Prompts handler
|
|
174
189
|
inboundConn.server.setRequestHandler(ListPromptsRequestSchema, withErrorHandling(async (request) => {
|
|
175
|
-
const filteredClients = filterClients(byCapabilities({ prompts: {} }),
|
|
190
|
+
const filteredClients = filterClients(byCapabilities({ prompts: {} }), getTagFilter(inboundConn))(outboundConns);
|
|
176
191
|
const result = await handlePagination(filteredClients, request.params || {}, (client, params, opts) => client.listPrompts(params, opts), (outboundConn, result) => result.prompts?.map((prompt) => ({
|
|
177
192
|
name: `${outboundConn.name}${MCP_URI_SEPARATOR}${prompt.name}`,
|
|
178
193
|
description: prompt.description,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"requestHandlers.js","sourceRoot":"","sources":["../../src/handlers/requestHandlers.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"requestHandlers.js","sourceRoot":"","sources":["../../src/handlers/requestHandlers.ts"],"names":[],"mappings":"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"}
|
package/build/index.js
CHANGED
|
@@ -13,6 +13,7 @@ import { PORT, HOST } from './constants.js';
|
|
|
13
13
|
import { displayLogo } from './utils/logo.js';
|
|
14
14
|
import { setupAppCommands } from './commands/app/index.js';
|
|
15
15
|
import { setupMcpCommands } from './commands/mcp/index.js';
|
|
16
|
+
import { TagQueryParser } from './utils/tagQueryParser.js';
|
|
16
17
|
// Define server options that should only be available for serve commands
|
|
17
18
|
const serverOptions = {
|
|
18
19
|
transport: {
|
|
@@ -48,9 +49,17 @@ const serverOptions = {
|
|
|
48
49
|
},
|
|
49
50
|
tags: {
|
|
50
51
|
alias: 'g',
|
|
51
|
-
describe: 'Tags to filter clients (comma-separated)',
|
|
52
|
+
describe: 'Tags to filter clients (comma-separated, OR logic)',
|
|
52
53
|
type: 'string',
|
|
53
54
|
default: undefined,
|
|
55
|
+
conflicts: 'tag-filter',
|
|
56
|
+
},
|
|
57
|
+
'tag-filter': {
|
|
58
|
+
alias: 'f',
|
|
59
|
+
describe: 'Advanced tag filter expression (and/or/not logic)',
|
|
60
|
+
type: 'string',
|
|
61
|
+
default: undefined,
|
|
62
|
+
conflicts: 'tags',
|
|
54
63
|
},
|
|
55
64
|
pagination: {
|
|
56
65
|
alias: 'p',
|
|
@@ -285,16 +294,41 @@ async function main() {
|
|
|
285
294
|
case 'stdio': {
|
|
286
295
|
// Use stdio transport
|
|
287
296
|
const transport = new StdioServerTransport();
|
|
288
|
-
// Parse and validate tags from CLI if provided
|
|
297
|
+
// Parse and validate tags/tag-filter from CLI if provided
|
|
289
298
|
let tags;
|
|
299
|
+
let tagExpression;
|
|
300
|
+
let tagFilterMode = 'none';
|
|
290
301
|
if (parsedArgv.tags) {
|
|
291
|
-
|
|
292
|
-
|
|
302
|
+
// Legacy simple OR filtering
|
|
303
|
+
tags = TagQueryParser.parseSimple(parsedArgv.tags);
|
|
304
|
+
tagFilterMode = 'simple-or';
|
|
305
|
+
if (!tags || tags.length === 0) {
|
|
293
306
|
logger.warn('No valid tags provided, ignoring tags parameter');
|
|
294
307
|
tags = undefined;
|
|
308
|
+
tagFilterMode = 'none';
|
|
309
|
+
}
|
|
310
|
+
}
|
|
311
|
+
else if (parsedArgv['tag-filter']) {
|
|
312
|
+
// New advanced expression filtering
|
|
313
|
+
try {
|
|
314
|
+
tagExpression = TagQueryParser.parseAdvanced(parsedArgv['tag-filter']);
|
|
315
|
+
tagFilterMode = 'advanced';
|
|
316
|
+
// Provide simple tags for backward compat where possible
|
|
317
|
+
if (tagExpression.type === 'tag') {
|
|
318
|
+
tags = [tagExpression.value];
|
|
319
|
+
}
|
|
320
|
+
}
|
|
321
|
+
catch (error) {
|
|
322
|
+
logger.error(`Invalid tag-filter expression: ${error instanceof Error ? error.message : 'Unknown error'}`);
|
|
323
|
+
process.exit(1);
|
|
295
324
|
}
|
|
296
325
|
}
|
|
297
|
-
await serverManager.connectTransport(transport, 'stdio', {
|
|
326
|
+
await serverManager.connectTransport(transport, 'stdio', {
|
|
327
|
+
tags,
|
|
328
|
+
tagExpression,
|
|
329
|
+
tagFilterMode,
|
|
330
|
+
enablePagination: parsedArgv.pagination,
|
|
331
|
+
});
|
|
298
332
|
// Initialize notifications for async loading if enabled
|
|
299
333
|
if (asyncOrchestrator) {
|
|
300
334
|
const inboundConnection = serverManager.getServer('stdio');
|
package/build/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA,OAAO,gCAAgC,CAAC;AAExC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AAEjF,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,MAAM,EAAE,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,mBAAmB,MAAM,mCAAmC,CAAC;AAEpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAClE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { Request, Response, NextFunction } from 'express';
|
|
2
2
|
import { SDKOAuthServerProvider } from '../../../auth/sdkOAuthServerProvider.js';
|
|
3
|
+
import { TagExpression } from '../../../utils/tagQueryParser.js';
|
|
3
4
|
/**
|
|
4
5
|
* Authentication information structure
|
|
5
6
|
*/
|
|
@@ -30,6 +31,14 @@ export declare function createScopeAuthMiddleware(oauthProvider?: SDKOAuthServer
|
|
|
30
31
|
* to ensure they get scope-validated tags.
|
|
31
32
|
*/
|
|
32
33
|
export declare function getValidatedTags(res: Response): string[];
|
|
34
|
+
/**
|
|
35
|
+
* Utility function to get tag expression from response locals
|
|
36
|
+
*/
|
|
37
|
+
export declare function getTagExpression(res: Response): TagExpression | undefined;
|
|
38
|
+
/**
|
|
39
|
+
* Utility function to get tag filter mode from response locals
|
|
40
|
+
*/
|
|
41
|
+
export declare function getTagFilterMode(res: Response): 'simple-or' | 'advanced' | 'none';
|
|
33
42
|
/**
|
|
34
43
|
* Utility function to get authentication information from response locals
|
|
35
44
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scopeAuthMiddleware.d.ts","sourceRoot":"","sources":["../../../../src/transport/http/middlewares/scopeAuthMiddleware.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAI1D,OAAO,EAAE,sBAAsB,EAAE,MAAM,yCAAyC,CAAC;
|
|
1
|
+
{"version":3,"file":"scopeAuthMiddleware.d.ts","sourceRoot":"","sources":["../../../../src/transport/http/middlewares/scopeAuthMiddleware.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAI1D,OAAO,EAAE,sBAAsB,EAAE,MAAM,yCAAyC,CAAC;AAEjF,OAAO,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AAEjE;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,yBAAyB,CAAC,aAAa,CAAC,EAAE,sBAAsB,UAK9D,OAAO,OAAO,QAAQ,QAAQ,YAAY,KAAG,IAAI,CAqGlE;AA8BD;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,QAAQ,GAAG,MAAM,EAAE,CAWxD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,QAAQ,GAAG,aAAa,GAAG,SAAS,CAEzE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,QAAQ,GAAG,WAAW,GAAG,UAAU,GAAG,MAAM,CAEjF;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS,CAM/D;+BA7KiB,OAAO,OAAO,QAAQ,QAAQ,YAAY,KAAG,IAAI;AAgLnE,wBAA2C"}
|
|
@@ -56,20 +56,32 @@ export function createScopeAuthMiddleware(oauthProvider) {
|
|
|
56
56
|
const authInfo = req.auth;
|
|
57
57
|
const grantedScopes = authInfo.scopes || [];
|
|
58
58
|
const grantedTags = scopesToTags(grantedScopes);
|
|
59
|
-
// Get requested tags from previous middleware (tagsExtractor)
|
|
59
|
+
// Get requested tags and tag expression from previous middleware (tagsExtractor)
|
|
60
60
|
const requestedTags = res.locals.tags || [];
|
|
61
|
+
const tagExpression = res.locals.tagExpression;
|
|
62
|
+
const tagFilterMode = res.locals.tagFilterMode || 'none';
|
|
63
|
+
let allRequestedTags = [];
|
|
64
|
+
// Determine all tags that need validation based on filter mode
|
|
65
|
+
if (tagFilterMode === 'advanced' && tagExpression) {
|
|
66
|
+
// For advanced expressions, extract all referenced tags
|
|
67
|
+
allRequestedTags = extractTagsFromExpression(tagExpression);
|
|
68
|
+
}
|
|
69
|
+
else if (tagFilterMode === 'simple-or') {
|
|
70
|
+
// For simple mode, use the parsed tags
|
|
71
|
+
allRequestedTags = requestedTags;
|
|
72
|
+
}
|
|
61
73
|
// Validate that all requested tags are covered by granted scopes
|
|
62
|
-
if (!hasRequiredScopes(grantedScopes,
|
|
74
|
+
if (allRequestedTags.length > 0 && !hasRequiredScopes(grantedScopes, allRequestedTags)) {
|
|
63
75
|
auditScopeOperation('insufficient_scopes', {
|
|
64
76
|
clientId: authInfo.clientId,
|
|
65
|
-
requestedScopes:
|
|
77
|
+
requestedScopes: allRequestedTags.map((tag) => `tag:${tag}`),
|
|
66
78
|
grantedScopes,
|
|
67
79
|
success: false,
|
|
68
80
|
error: 'Insufficient scopes for requested tags',
|
|
69
81
|
});
|
|
70
82
|
res.status(403).json({
|
|
71
83
|
error: 'insufficient_scope',
|
|
72
|
-
error_description: `Insufficient scopes. Required: ${
|
|
84
|
+
error_description: `Insufficient scopes. Required: ${allRequestedTags.join(', ')}, Granted: ${grantedTags.join(', ')}`,
|
|
73
85
|
});
|
|
74
86
|
return;
|
|
75
87
|
}
|
|
@@ -82,10 +94,10 @@ export function createScopeAuthMiddleware(oauthProvider) {
|
|
|
82
94
|
};
|
|
83
95
|
// Provide validated tags to downstream handlers
|
|
84
96
|
// If no specific tags requested, use all granted tags
|
|
85
|
-
res.locals.validatedTags =
|
|
97
|
+
res.locals.validatedTags = allRequestedTags.length > 0 ? allRequestedTags : grantedTags;
|
|
86
98
|
auditScopeOperation('scope_validation_success', {
|
|
87
99
|
clientId: authInfo.clientId,
|
|
88
|
-
requestedScopes:
|
|
100
|
+
requestedScopes: allRequestedTags.map((tag) => `tag:${tag}`),
|
|
89
101
|
grantedScopes,
|
|
90
102
|
success: true,
|
|
91
103
|
});
|
|
@@ -100,6 +112,31 @@ export function createScopeAuthMiddleware(oauthProvider) {
|
|
|
100
112
|
}
|
|
101
113
|
};
|
|
102
114
|
}
|
|
115
|
+
/**
|
|
116
|
+
* Extract all tag names from a tag expression (for scope validation)
|
|
117
|
+
*/
|
|
118
|
+
function extractTagsFromExpression(expression) {
|
|
119
|
+
const tags = [];
|
|
120
|
+
function traverse(expr) {
|
|
121
|
+
switch (expr.type) {
|
|
122
|
+
case 'tag':
|
|
123
|
+
if (expr.value && !tags.includes(expr.value)) {
|
|
124
|
+
tags.push(expr.value);
|
|
125
|
+
}
|
|
126
|
+
break;
|
|
127
|
+
case 'and':
|
|
128
|
+
case 'or':
|
|
129
|
+
case 'not':
|
|
130
|
+
case 'group':
|
|
131
|
+
if (expr.children) {
|
|
132
|
+
expr.children.forEach(traverse);
|
|
133
|
+
}
|
|
134
|
+
break;
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
traverse(expression);
|
|
138
|
+
return tags;
|
|
139
|
+
}
|
|
103
140
|
/**
|
|
104
141
|
* Utility function to get validated tags from response locals
|
|
105
142
|
*
|
|
@@ -116,6 +153,18 @@ export function getValidatedTags(res) {
|
|
|
116
153
|
}
|
|
117
154
|
return res.locals.validatedTags;
|
|
118
155
|
}
|
|
156
|
+
/**
|
|
157
|
+
* Utility function to get tag expression from response locals
|
|
158
|
+
*/
|
|
159
|
+
export function getTagExpression(res) {
|
|
160
|
+
return res?.locals?.tagExpression;
|
|
161
|
+
}
|
|
162
|
+
/**
|
|
163
|
+
* Utility function to get tag filter mode from response locals
|
|
164
|
+
*/
|
|
165
|
+
export function getTagFilterMode(res) {
|
|
166
|
+
return res?.locals?.tagFilterMode || 'none';
|
|
167
|
+
}
|
|
119
168
|
/**
|
|
120
169
|
* Utility function to get authentication information from response locals
|
|
121
170
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scopeAuthMiddleware.js","sourceRoot":"","sources":["../../../../src/transport/http/middlewares/scopeAuthMiddleware.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,gEAAgE,CAAC;AACnG,OAAO,MAAM,MAAM,2BAA2B,CAAC;AAC/C,OAAO,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AACzE,OAAO,EAAE,sBAAsB,EAAE,MAAM,yCAAyC,CAAC;AACjF,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;
|
|
1
|
+
{"version":3,"file":"scopeAuthMiddleware.js","sourceRoot":"","sources":["../../../../src/transport/http/middlewares/scopeAuthMiddleware.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,13 @@
|
|
|
1
1
|
import { Request, Response, NextFunction } from 'express';
|
|
2
2
|
/**
|
|
3
|
-
* Middleware to extract and validate
|
|
4
|
-
*
|
|
3
|
+
* Middleware to extract and validate tag filters from query parameters.
|
|
4
|
+
* Supports both simple 'tags' parameter (OR logic, backward compatible)
|
|
5
|
+
* and advanced 'tag-filter' parameter (boolean expressions).
|
|
6
|
+
*
|
|
7
|
+
* Attaches to res.locals:
|
|
8
|
+
* - tags: string[] | undefined (for backward compatibility)
|
|
9
|
+
* - tagExpression: TagExpression | undefined (for advanced filtering)
|
|
10
|
+
* - tagFilterMode: 'simple-or' | 'advanced' | 'none'
|
|
5
11
|
*/
|
|
6
12
|
export default function tagsExtractor(req: Request, res: Response, next: NextFunction): void;
|
|
7
13
|
//# sourceMappingURL=tagsExtractor.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tagsExtractor.d.ts","sourceRoot":"","sources":["../../../../src/transport/http/middlewares/tagsExtractor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"tagsExtractor.d.ts","sourceRoot":"","sources":["../../../../src/transport/http/middlewares/tagsExtractor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAM1D;;;;;;;;;GASG;AACH,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,QA0HpF"}
|