@1mcp/agent 0.26.1 → 0.27.2
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/application/services/configReloadService.d.ts.map +1 -1
- package/build/application/services/configReloadService.js +7 -0
- package/build/application/services/configReloadService.js.map +1 -1
- package/build/application/services/healthService.js +2 -2
- package/build/application/services/healthService.js.map +1 -1
- package/build/application/services/tokenEstimationService.d.ts.map +1 -1
- package/build/application/services/tokenEstimationService.js.map +1 -1
- package/build/auth/sdkOAuthClientProvider.js.map +1 -1
- package/build/auth/sdkOAuthServerProvider.js +3 -3
- package/build/auth/sdkOAuthServerProvider.js.map +1 -1
- package/build/auth/storage/fileStorageService.js.map +1 -1
- package/build/commands/app/consolidate.d.ts.map +1 -1
- package/build/commands/app/consolidate.js +8 -2
- package/build/commands/app/consolidate.js.map +1 -1
- package/build/commands/app/discover.d.ts.map +1 -1
- package/build/commands/app/discover.js +2 -1
- package/build/commands/app/discover.js.map +1 -1
- package/build/commands/app/restore.js +7 -4
- package/build/commands/app/restore.js.map +1 -1
- package/build/commands/mcp/tokens.d.ts.map +1 -1
- package/build/commands/mcp/tokens.js.map +1 -1
- package/build/commands/mcp/utils/configUtils.d.ts.map +1 -1
- package/build/commands/mcp/utils/configUtils.js +29 -7
- package/build/commands/mcp/utils/configUtils.js.map +1 -1
- package/build/commands/mcp/utils/doubleHyphenParser.d.ts +1 -1
- package/build/commands/mcp/utils/doubleHyphenParser.d.ts.map +1 -1
- package/build/commands/mcp/utils/doubleHyphenParser.js.map +1 -1
- package/build/commands/mcp/utils/validation.d.ts +12 -1
- package/build/commands/mcp/utils/validation.d.ts.map +1 -1
- package/build/commands/mcp/utils/validation.js.map +1 -1
- package/build/commands/preset/interactive.js.map +1 -1
- package/build/commands/serve/index.d.ts +65 -0
- package/build/commands/serve/index.d.ts.map +1 -1
- package/build/commands/serve/index.js +65 -0
- package/build/commands/serve/index.js.map +1 -1
- package/build/commands/serve/serve.d.ts +13 -0
- package/build/commands/serve/serve.d.ts.map +1 -1
- package/build/commands/serve/serve.js +28 -17
- package/build/commands/serve/serve.js.map +1 -1
- package/build/commands/shared/configUtils.d.ts.map +1 -1
- package/build/commands/shared/configUtils.js +29 -7
- package/build/commands/shared/configUtils.js.map +1 -1
- package/build/commands/shared/validation.d.ts +12 -1
- package/build/commands/shared/validation.d.ts.map +1 -1
- package/build/commands/shared/validation.js.map +1 -1
- package/build/config/envProcessor.d.ts +7 -1
- package/build/config/envProcessor.d.ts.map +1 -1
- package/build/config/envProcessor.js +17 -11
- package/build/config/envProcessor.js.map +1 -1
- package/build/config/mcpConfigManager.d.ts +0 -1
- package/build/config/mcpConfigManager.d.ts.map +1 -1
- package/build/config/mcpConfigManager.js +32 -10
- package/build/config/mcpConfigManager.js.map +1 -1
- package/build/config/projectConfigLoader.js.map +1 -1
- package/build/constants/mcp.d.ts +1 -1
- package/build/constants/mcp.js +1 -1
- package/build/core/capabilities/asyncLoadingOrchestrator.d.ts.map +1 -1
- package/build/core/capabilities/asyncLoadingOrchestrator.js +14 -11
- package/build/core/capabilities/asyncLoadingOrchestrator.js.map +1 -1
- package/build/core/capabilities/capabilityAggregator.d.ts.map +1 -1
- package/build/core/capabilities/capabilityAggregator.js.map +1 -1
- package/build/core/capabilities/capabilityManager.d.ts +7 -15
- package/build/core/capabilities/capabilityManager.d.ts.map +1 -1
- package/build/core/capabilities/capabilityManager.js +17 -6
- package/build/core/capabilities/capabilityManager.js.map +1 -1
- package/build/core/client/clientManager.js.map +1 -1
- package/build/core/instructions/templateHelpers.js +3 -3
- package/build/core/instructions/templateHelpers.js.map +1 -1
- package/build/core/instructions/templateValidator.d.ts.map +1 -1
- package/build/core/instructions/templateValidator.js +2 -2
- package/build/core/instructions/templateValidator.js.map +1 -1
- package/build/core/loading/mcpLoadingManager.d.ts +1 -2
- package/build/core/loading/mcpLoadingManager.d.ts.map +1 -1
- package/build/core/loading/mcpLoadingManager.js +3 -2
- package/build/core/loading/mcpLoadingManager.js.map +1 -1
- package/build/core/notifications/notificationManager.d.ts.map +1 -1
- package/build/core/notifications/notificationManager.js +7 -0
- package/build/core/notifications/notificationManager.js.map +1 -1
- package/build/core/protocol/requestHandlers.js.map +1 -1
- package/build/core/server/agentConfig.d.ts +46 -114
- package/build/core/server/agentConfig.d.ts.map +1 -1
- package/build/core/server/agentConfig.js +101 -158
- package/build/core/server/agentConfig.js.map +1 -1
- package/build/core/server/pidFileManager.js +1 -1
- package/build/core/server/pidFileManager.js.map +1 -1
- package/build/core/server/serverManager.js.map +1 -1
- package/build/core/tools/handlers/searchHandler.d.ts +4 -1
- package/build/core/tools/handlers/searchHandler.d.ts.map +1 -1
- package/build/core/tools/handlers/searchHandler.js +8 -6
- package/build/core/tools/handlers/searchHandler.js.map +1 -1
- package/build/domains/backup/backupManager.d.ts.map +1 -1
- package/build/domains/backup/backupManager.js +52 -5
- package/build/domains/backup/backupManager.js.map +1 -1
- package/build/domains/discovery/appDiscovery.d.ts +3 -3
- package/build/domains/discovery/appDiscovery.d.ts.map +1 -1
- package/build/domains/discovery/appDiscovery.js +45 -25
- package/build/domains/discovery/appDiscovery.js.map +1 -1
- package/build/domains/discovery/appPresets.d.ts.map +1 -1
- package/build/domains/discovery/appPresets.js +10 -2
- package/build/domains/discovery/appPresets.js.map +1 -1
- package/build/domains/preset/manager/presetManager.d.ts.map +1 -1
- package/build/domains/preset/manager/presetManager.js +19 -7
- package/build/domains/preset/manager/presetManager.js.map +1 -1
- package/build/domains/preset/parsers/tagQueryEvaluator.d.ts +6 -2
- package/build/domains/preset/parsers/tagQueryEvaluator.d.ts.map +1 -1
- package/build/domains/preset/parsers/tagQueryEvaluator.js +12 -9
- package/build/domains/preset/parsers/tagQueryEvaluator.js.map +1 -1
- package/build/domains/preset/parsers/tagQueryParser.d.ts.map +1 -1
- package/build/domains/preset/parsers/tagQueryParser.js +1 -4
- package/build/domains/preset/parsers/tagQueryParser.js.map +1 -1
- package/build/domains/preset/services/presetNotificationService.d.ts +1 -1
- package/build/domains/preset/services/presetNotificationService.d.ts.map +1 -1
- package/build/domains/preset/services/presetNotificationService.js.map +1 -1
- package/build/domains/preset/types/presetTypes.d.ts +1 -1
- package/build/domains/preset/types/presetTypes.d.ts.map +1 -1
- package/build/domains/registry/cacheManager.d.ts +1 -1
- package/build/domains/registry/cacheManager.d.ts.map +1 -1
- package/build/domains/registry/cacheManager.js +1 -1
- package/build/domains/registry/cacheManager.js.map +1 -1
- package/build/domains/registry/mcpRegistryClient.d.ts.map +1 -1
- package/build/domains/registry/mcpRegistryClient.js +10 -6
- package/build/domains/registry/mcpRegistryClient.js.map +1 -1
- package/build/domains/registry/searchFiltering.d.ts.map +1 -1
- package/build/domains/registry/searchFiltering.js.map +1 -1
- package/build/domains/registry/types.d.ts +5 -10
- package/build/domains/registry/types.d.ts.map +1 -1
- package/build/logger/logger.d.ts +3 -3
- package/build/logger/logger.d.ts.map +1 -1
- package/build/logger/logger.js.map +1 -1
- package/build/logger/mcpLoggingEnhancer.d.ts.map +1 -1
- package/build/logger/mcpLoggingEnhancer.js +50 -13
- package/build/logger/mcpLoggingEnhancer.js.map +1 -1
- package/build/logger/secureLogger.d.ts +5 -5
- package/build/logger/secureLogger.d.ts.map +1 -1
- package/build/logger/secureLogger.js +14 -5
- package/build/logger/secureLogger.js.map +1 -1
- package/build/server.d.ts.map +1 -1
- package/build/server.js +7 -4
- package/build/server.js.map +1 -1
- package/build/transport/http/middlewares/httpRequestLogger.d.ts.map +1 -1
- package/build/transport/http/middlewares/httpRequestLogger.js +12 -6
- package/build/transport/http/middlewares/httpRequestLogger.js.map +1 -1
- package/build/transport/http/middlewares/scopeAuthMiddleware.d.ts +31 -0
- package/build/transport/http/middlewares/scopeAuthMiddleware.d.ts.map +1 -1
- package/build/transport/http/middlewares/scopeAuthMiddleware.js +78 -19
- package/build/transport/http/middlewares/scopeAuthMiddleware.js.map +1 -1
- package/build/transport/http/middlewares/securityMiddleware.d.ts.map +1 -1
- package/build/transport/http/middlewares/securityMiddleware.js +15 -11
- package/build/transport/http/middlewares/securityMiddleware.js.map +1 -1
- package/build/transport/http/restorableStreamableTransport.d.ts +1 -1
- package/build/transport/http/restorableStreamableTransport.d.ts.map +1 -1
- package/build/transport/http/restorableStreamableTransport.js +19 -4
- package/build/transport/http/restorableStreamableTransport.js.map +1 -1
- package/build/transport/http/routes/healthRoutes.d.ts.map +1 -1
- package/build/transport/http/routes/healthRoutes.js +9 -9
- package/build/transport/http/routes/healthRoutes.js.map +1 -1
- package/build/transport/http/routes/oauthRoutes.d.ts.map +1 -1
- package/build/transport/http/routes/oauthRoutes.js +54 -23
- package/build/transport/http/routes/oauthRoutes.js.map +1 -1
- package/build/transport/http/routes/sseRoutes.d.ts +2 -2
- package/build/transport/http/routes/sseRoutes.d.ts.map +1 -1
- package/build/transport/http/routes/sseRoutes.js.map +1 -1
- package/build/transport/http/routes/streamableHttpRoutes.d.ts +2 -2
- package/build/transport/http/routes/streamableHttpRoutes.d.ts.map +1 -1
- package/build/transport/http/routes/streamableHttpRoutes.js +7 -1
- package/build/transport/http/routes/streamableHttpRoutes.js.map +1 -1
- package/build/transport/http/server.d.ts.map +1 -1
- package/build/transport/http/server.js +7 -7
- package/build/transport/http/server.js.map +1 -1
- package/build/transport/http/storage/streamableSessionRepository.d.ts +1 -0
- package/build/transport/http/storage/streamableSessionRepository.d.ts.map +1 -1
- package/build/transport/http/storage/streamableSessionRepository.js +107 -16
- package/build/transport/http/storage/streamableSessionRepository.js.map +1 -1
- package/build/transport/restartableStdioTransport.d.ts +1 -1
- package/build/transport/restartableStdioTransport.d.ts.map +1 -1
- package/build/transport/restartableStdioTransport.js.map +1 -1
- package/build/transport/stdioProxyTransport.d.ts.map +1 -1
- package/build/transport/stdioProxyTransport.js +8 -2
- package/build/transport/stdioProxyTransport.js.map +1 -1
- package/build/transport/transportFactory.js +1 -1
- package/build/transport/transportFactory.js.map +1 -1
- package/build/utils/core/errorHandling.d.ts +3 -3
- package/build/utils/core/errorHandling.d.ts.map +1 -1
- package/build/utils/core/errorHandling.js +3 -1
- package/build/utils/core/errorHandling.js.map +1 -1
- package/build/utils/core/errorTypes.d.ts +4 -4
- package/build/utils/core/errorTypes.d.ts.map +1 -1
- package/build/utils/core/errorTypes.js +10 -0
- package/build/utils/core/errorTypes.js.map +1 -1
- package/build/utils/ui/interactiveSelector.d.ts.map +1 -1
- package/build/utils/ui/interactiveSelector.js +165 -37
- package/build/utils/ui/interactiveSelector.js.map +1 -1
- package/build/utils/ui/urlGenerator.d.ts.map +1 -1
- package/build/utils/ui/urlGenerator.js +11 -4
- package/build/utils/ui/urlGenerator.js.map +1 -1
- package/build/utils/validation/sanitization.d.ts +1 -1
- package/build/utils/validation/sanitization.d.ts.map +1 -1
- package/build/utils/validation/sanitization.js +2 -0
- package/build/utils/validation/sanitization.js.map +1 -1
- package/build/utils/validation/urlDetection.d.ts.map +1 -1
- package/build/utils/validation/urlDetection.js +1 -1
- package/build/utils/validation/urlDetection.js.map +1 -1
- package/build/utils/validation/validationHelpers.d.ts +4 -4
- package/build/utils/validation/validationHelpers.d.ts.map +1 -1
- package/build/utils/validation/validationHelpers.js +34 -25
- package/build/utils/validation/validationHelpers.js.map +1 -1
- package/package.json +3 -4
|
@@ -57,18 +57,23 @@ function wrapRequestHandler(originalHandler, method) {
|
|
|
57
57
|
method,
|
|
58
58
|
startTime,
|
|
59
59
|
});
|
|
60
|
-
// Log request
|
|
61
|
-
|
|
60
|
+
// Log request with type-safe params extraction
|
|
61
|
+
const requestParams = hasParamsProperty(request) ? request.params : undefined;
|
|
62
|
+
logRequest(requestId, method, requestParams);
|
|
62
63
|
try {
|
|
63
|
-
// Execute original handler with
|
|
64
|
+
// Execute original handler with enhanced extra object
|
|
64
65
|
const result = await originalHandler(request, {
|
|
65
66
|
...extra,
|
|
66
67
|
sendNotification: async (notification) => {
|
|
67
68
|
logger.info('Sending notification', { requestId, notification });
|
|
68
69
|
return extra.sendNotification(notification);
|
|
69
70
|
},
|
|
71
|
+
// Reason: MCP SDK sendRequest expects any schema type; Zod schemas have complex generic types
|
|
72
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
70
73
|
sendRequest: async (request, resultSchema, options) => {
|
|
71
74
|
logger.info('Sending request', { requestId, request });
|
|
75
|
+
// Reason: MCP SDK internal types don't match our wrapper signatures; any required for compatibility
|
|
76
|
+
// eslint-disable-next-line @typescript-eslint/no-unsafe-return, @typescript-eslint/no-unsafe-argument, @typescript-eslint/no-explicit-any
|
|
72
77
|
return extra.sendRequest(request, resultSchema, options);
|
|
73
78
|
},
|
|
74
79
|
});
|
|
@@ -89,13 +94,37 @@ function wrapRequestHandler(originalHandler, method) {
|
|
|
89
94
|
}
|
|
90
95
|
};
|
|
91
96
|
}
|
|
97
|
+
// Type guard to check if request has params property
|
|
98
|
+
function hasParamsProperty(request) {
|
|
99
|
+
return typeof request === 'object' && request !== null && 'params' in request;
|
|
100
|
+
}
|
|
101
|
+
// Type-safe utility to extract method name from Zod schema
|
|
102
|
+
function extractMethodName(schema) {
|
|
103
|
+
try {
|
|
104
|
+
// Reason: Accessing internal Zod schema properties not exposed in public types
|
|
105
|
+
// eslint-disable-next-line @typescript-eslint/no-unsafe-assignment, @typescript-eslint/no-explicit-any
|
|
106
|
+
const schemaAny = schema;
|
|
107
|
+
// Reason: Navigating Zod's internal structure to extract method name from schema
|
|
108
|
+
// eslint-disable-next-line @typescript-eslint/no-unsafe-member-access, @typescript-eslint/no-unsafe-call
|
|
109
|
+
if (schemaAny._def?.shape?.()?.method?._def?.value) {
|
|
110
|
+
// Reason: Extracting method name from deep within Zod's internal schema structure
|
|
111
|
+
// eslint-disable-next-line @typescript-eslint/no-unsafe-return, @typescript-eslint/no-unsafe-call, @typescript-eslint/no-unsafe-member-access
|
|
112
|
+
return schemaAny._def.shape().method._def.value;
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
catch {
|
|
116
|
+
// Silently fall back to default if extraction fails
|
|
117
|
+
}
|
|
118
|
+
return 'unknown';
|
|
119
|
+
}
|
|
92
120
|
/**
|
|
93
121
|
* Wraps the original notification handler with logging
|
|
94
122
|
*/
|
|
95
123
|
function wrapNotificationHandler(originalHandler, method) {
|
|
96
124
|
return async (notification) => {
|
|
97
|
-
// Log notification
|
|
98
|
-
|
|
125
|
+
// Log notification with type-safe params extraction
|
|
126
|
+
const notificationParams = hasParamsProperty(notification) ? notification.params : undefined;
|
|
127
|
+
logNotification(method, notificationParams);
|
|
99
128
|
// Execute original handler
|
|
100
129
|
await originalHandler(notification);
|
|
101
130
|
};
|
|
@@ -108,16 +137,24 @@ export function enhanceServerWithLogging(server) {
|
|
|
108
137
|
const originalSetRequestHandler = server.setRequestHandler.bind(server);
|
|
109
138
|
const originalSetNotificationHandler = server.setNotificationHandler.bind(server);
|
|
110
139
|
const originalNotification = server.notification.bind(server);
|
|
111
|
-
// Override request handler registration
|
|
112
|
-
const
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
140
|
+
// Override request handler registration with proper type safety
|
|
141
|
+
const serverWithHandlers = server;
|
|
142
|
+
serverWithHandlers.setRequestHandler = (requestSchema, handler) => {
|
|
143
|
+
// Extract method name safely using our type-safe utility
|
|
144
|
+
const methodName = extractMethodName(requestSchema);
|
|
145
|
+
const wrappedHandler = wrapRequestHandler(handler, methodName);
|
|
146
|
+
// Reason: Original MCP SDK method signatures incompatible with our wrapped handlers; any required for override
|
|
147
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
116
148
|
return originalSetRequestHandler.call(server, requestSchema, wrappedHandler);
|
|
117
149
|
};
|
|
118
|
-
// Override notification handler registration
|
|
119
|
-
|
|
120
|
-
|
|
150
|
+
// Override notification handler registration with proper type safety
|
|
151
|
+
const serverWithNotificationHandlers = server;
|
|
152
|
+
serverWithNotificationHandlers.setNotificationHandler = (notificationSchema, handler) => {
|
|
153
|
+
// Extract method name safely using our type-safe utility
|
|
154
|
+
const methodName = extractMethodName(notificationSchema);
|
|
155
|
+
const wrappedHandler = wrapNotificationHandler(handler, methodName);
|
|
156
|
+
// Reason: Original MCP SDK method signatures incompatible with our wrapped handlers; any required for override
|
|
157
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
121
158
|
return originalSetNotificationHandler.call(server, notificationSchema, wrappedHandler);
|
|
122
159
|
};
|
|
123
160
|
// Override notification sending
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcpLoggingEnhancer.js","sourceRoot":"","sources":["../../src/logger/mcpLoggingEnhancer.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"mcpLoggingEnhancer.js","sourceRoot":"","sources":["../../src/logger/mcpLoggingEnhancer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Sanitize data before logging - handles all data types
|
|
3
3
|
*/
|
|
4
|
-
export declare function sanitizeForLogging(data:
|
|
4
|
+
export declare function sanitizeForLogging(data: unknown): unknown;
|
|
5
5
|
/**
|
|
6
6
|
* Safe logger that automatically sanitizes sensitive data
|
|
7
7
|
*/
|
|
8
8
|
export declare const secureLogger: {
|
|
9
|
-
debug: (message: string, data?:
|
|
10
|
-
info: (message: string, data?:
|
|
11
|
-
warn: (message: string, data?:
|
|
12
|
-
error: (message: string, data?:
|
|
9
|
+
debug: (message: string, data?: unknown) => void;
|
|
10
|
+
info: (message: string, data?: unknown) => void;
|
|
11
|
+
warn: (message: string, data?: unknown) => void;
|
|
12
|
+
error: (message: string, data?: unknown) => void;
|
|
13
13
|
};
|
|
14
14
|
/**
|
|
15
15
|
* Utility function to redact OAuth server details from lists
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"secureLogger.d.ts","sourceRoot":"","sources":["../../src/logger/secureLogger.ts"],"names":[],"mappings":"AAmFA;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,
|
|
1
|
+
{"version":3,"file":"secureLogger.d.ts","sourceRoot":"","sources":["../../src/logger/secureLogger.ts"],"names":[],"mappings":"AAmFA;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,CAQzD;AAsBD;;GAEG;AACH,eAAO,MAAM,YAAY;qBAnBN,MAAM,SAAS,OAAO;oBAAtB,MAAM,SAAS,OAAO;oBAAtB,MAAM,SAAS,OAAO;qBAAtB,MAAM,SAAS,OAAO;CAwBxC,CAAC;AAEF;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAMnE;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAO5D"}
|
|
@@ -51,7 +51,7 @@ function sanitize(value, depth = 0) {
|
|
|
51
51
|
if (Array.isArray(value)) {
|
|
52
52
|
return value.map((item) => sanitize(item, depth + 1));
|
|
53
53
|
}
|
|
54
|
-
if (typeof value === 'object') {
|
|
54
|
+
if (typeof value === 'object' && value !== null) {
|
|
55
55
|
const sanitized = {};
|
|
56
56
|
for (const [key, val] of Object.entries(value)) {
|
|
57
57
|
if (isSensitiveKey(key)) {
|
|
@@ -72,7 +72,9 @@ export function sanitizeForLogging(data) {
|
|
|
72
72
|
try {
|
|
73
73
|
return sanitize(data);
|
|
74
74
|
}
|
|
75
|
-
catch (
|
|
75
|
+
catch (error) {
|
|
76
|
+
// Log the actual error safely without exposing sensitive data
|
|
77
|
+
console.error('Sanitization error occurred:', error instanceof Error ? error.message : 'Unknown error');
|
|
76
78
|
return '[SANITIZATION_ERROR]';
|
|
77
79
|
}
|
|
78
80
|
}
|
|
@@ -82,11 +84,16 @@ export function sanitizeForLogging(data) {
|
|
|
82
84
|
function createLoggerMethod(level) {
|
|
83
85
|
return (message, data) => {
|
|
84
86
|
const sanitizedMessage = typeof message === 'string' ? sanitize(message) : message;
|
|
87
|
+
const sanitizedMessageStr = typeof sanitizedMessage === 'string' ? sanitizedMessage : String(sanitizedMessage);
|
|
85
88
|
if (data !== undefined) {
|
|
86
|
-
logger
|
|
89
|
+
// Type-safe assertion that the logger method exists and is callable
|
|
90
|
+
const loggerMethod = logger[level];
|
|
91
|
+
loggerMethod(sanitizedMessageStr, sanitizeForLogging(data));
|
|
87
92
|
}
|
|
88
93
|
else {
|
|
89
|
-
logger
|
|
94
|
+
// Type-safe assertion that the logger method exists and is callable
|
|
95
|
+
const loggerMethod = logger[level];
|
|
96
|
+
loggerMethod(sanitizedMessageStr);
|
|
90
97
|
}
|
|
91
98
|
};
|
|
92
99
|
}
|
|
@@ -113,7 +120,9 @@ export function sanitizeOAuthServerList(servers) {
|
|
|
113
120
|
* Utility function to create safe error messages that don't expose sensitive data
|
|
114
121
|
*/
|
|
115
122
|
export function createSafeErrorMessage(error) {
|
|
116
|
-
|
|
123
|
+
const sanitizedError = sanitize(error);
|
|
124
|
+
const errorString = typeof sanitizedError === 'string' ? sanitizedError : String(sanitizedError);
|
|
125
|
+
return errorString
|
|
117
126
|
.replace(/HTTP \d+.*$/gi, 'HTTP [STATUS_CODE]') // Remove potentially sensitive HTTP response details
|
|
118
127
|
.replace(/server.*responding/gi, 'server connectivity issue'); // Generic server error
|
|
119
128
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"secureLogger.js","sourceRoot":"","sources":["../../src/logger/secureLogger.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,aAAa,CAAC;AAEjC;;GAEG;AACH,MAAM,kBAAkB,GAAG;IACzB,yDAAyD;IACzD,oGAAoG;IAEpG,2DAA2D;IAC3D,qDAAqD;IAErD,iEAAiE;IACjE,oCAAoC;IAEpC,yDAAyD;IACzD,oFAAoF;IAEpF,oDAAoD;IACpD,yDAAyD;CAC1D,CAAC;AAEF;;GAEG;AACH,MAAM,sBAAsB,GAAG,CAAC,QAAQ,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;AAEhF;;GAEG;AACH,SAAS,cAAc,CAAC,GAAW;IACjC,MAAM,QAAQ,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC;IACnC,OAAO,sBAAsB,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;AAC9E,CAAC;AAED;;GAEG;AACH,SAAS,QAAQ,CAAC,
|
|
1
|
+
{"version":3,"file":"secureLogger.js","sourceRoot":"","sources":["../../src/logger/secureLogger.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,aAAa,CAAC;AAEjC;;GAEG;AACH,MAAM,kBAAkB,GAAG;IACzB,yDAAyD;IACzD,oGAAoG;IAEpG,2DAA2D;IAC3D,qDAAqD;IAErD,iEAAiE;IACjE,oCAAoC;IAEpC,yDAAyD;IACzD,oFAAoF;IAEpF,oDAAoD;IACpD,yDAAyD;CAC1D,CAAC;AAEF;;GAEG;AACH,MAAM,sBAAsB,GAAG,CAAC,QAAQ,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;AAEhF;;GAEG;AACH,SAAS,cAAc,CAAC,GAAW;IACjC,MAAM,QAAQ,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC;IACnC,OAAO,sBAAsB,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;AAC9E,CAAC;AAED;;GAEG;AACH,SAAS,QAAQ,CAAC,KAAc,EAAE,KAAK,GAAG,CAAC;IACzC,6BAA6B;IAC7B,IAAI,KAAK,GAAG,EAAE,EAAE,CAAC;QACf,OAAO,aAAa,CAAC;IACvB,CAAC;IAED,uCAAuC;IACvC,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QAC1C,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,2CAA2C;QAC3C,IAAI,SAAS,GAAG,KAAK,CAAC;QACtB,KAAK,MAAM,OAAO,IAAI,kBAAkB,EAAE,CAAC;YACzC,SAAS,GAAG,SAAS,CAAC,OAAO,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;QACvD,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,KAAK,KAAK,SAAS,EAAE,CAAC;QAC5D,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC;IACxD,CAAC;IAED,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QAChD,MAAM,SAAS,GAA4B,EAAE,CAAC;QAE9C,KAAK,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YAC/C,IAAI,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC;gBACxB,SAAS,CAAC,GAAG,CAAC,GAAG,YAAY,CAAC;YAChC,CAAC;iBAAM,CAAC;gBACN,SAAS,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,GAAG,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;YAC5C,CAAC;QACH,CAAC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,kBAAkB,CAAC,IAAa;IAC9C,IAAI,CAAC;QACH,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC;IACxB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,8DAA8D;QAC9D,OAAO,CAAC,KAAK,CAAC,8BAA8B,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC;QACxG,OAAO,sBAAsB,CAAC;IAChC,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAS,kBAAkB,CAAC,KAA0C;IACpE,OAAO,CAAC,OAAe,EAAE,IAAc,EAAE,EAAE;QACzC,MAAM,gBAAgB,GAAG,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;QACnF,MAAM,mBAAmB,GAAG,OAAO,gBAAgB,KAAK,QAAQ,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;QAE/G,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACvB,oEAAoE;YACpE,MAAM,YAAY,GAAG,MAAM,CAAC,KAAK,CAAkD,CAAC;YACpF,YAAY,CAAC,mBAAmB,EAAE,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC;QAC9D,CAAC;aAAM,CAAC;YACN,oEAAoE;YACpE,MAAM,YAAY,GAAG,MAAM,CAAC,KAAK,CAAkD,CAAC;YACpF,YAAY,CAAC,mBAAmB,CAAC,CAAC;QACpC,CAAC;IACH,CAAC,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,KAAK,EAAE,kBAAkB,CAAC,OAAO,CAAC;IAClC,IAAI,EAAE,kBAAkB,CAAC,MAAM,CAAC;IAChC,IAAI,EAAE,kBAAkB,CAAC,MAAM,CAAC;IAChC,KAAK,EAAE,kBAAkB,CAAC,OAAO,CAAC;CACnC,CAAC;AAEF;;GAEG;AACH,MAAM,UAAU,uBAAuB,CAAC,OAAiB;IACvD,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;QAC5B,4DAA4D;QAC5D,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,6BAA6B;QAChF,OAAO,UAAU,CAAC,OAAO,CAAC,kDAAkD,EAAE,kBAAkB,CAAC,CAAC;IACpG,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,sBAAsB,CAAC,KAAa;IAClD,MAAM,cAAc,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACvC,MAAM,WAAW,GAAG,OAAO,cAAc,KAAK,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;IAEjG,OAAO,WAAW;SACf,OAAO,CAAC,eAAe,EAAE,oBAAoB,CAAC,CAAC,qDAAqD;SACpG,OAAO,CAAC,sBAAsB,EAAE,2BAA2B,CAAC,CAAC,CAAC,uBAAuB;AAC1F,CAAC"}
|
package/build/server.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,wBAAwB,EAAE,MAAM,iDAAiD,CAAC;AAE3F,OAAO,EAAE,qBAAqB,EAAE,MAAM,8CAA8C,CAAC;AACrF,OAAO,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AACxE,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAK/D;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,8CAA8C;IAC9C,aAAa,EAAE,aAAa,CAAC;IAC7B,0DAA0D;IAC1D,cAAc,EAAE,iBAAiB,CAAC;IAClC,gEAAgE;IAChE,cAAc,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9B,8DAA8D;IAC9D,iBAAiB,CAAC,EAAE,wBAAwB,CAAC;IAC7C,+DAA+D;IAC/D,qBAAqB,EAAE,qBAAqB,CAAC;CAC9C;AAED;;;GAGG;AACH,iBAAe,WAAW,IAAI,OAAO,CAAC,iBAAiB,CAAC,CAyBvD;AAgID;;;GAGG;AACH,iBAAe,iBAAiB,IAAI,OAAO,CAAC,aAAa,CAAC,CAKzD;AAED,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,CAAC"}
|
package/build/server.js
CHANGED
|
@@ -19,7 +19,7 @@ async function setupServer() {
|
|
|
19
19
|
try {
|
|
20
20
|
const mcpConfig = McpConfigManager.getInstance().getTransportConfig();
|
|
21
21
|
const agentConfig = AgentConfigManager.getInstance();
|
|
22
|
-
const asyncLoadingEnabled = agentConfig.
|
|
22
|
+
const asyncLoadingEnabled = agentConfig.get('asyncLoading').enabled;
|
|
23
23
|
// Initialize preset management system
|
|
24
24
|
await initializePresetSystem();
|
|
25
25
|
// Create transports from configuration
|
|
@@ -35,7 +35,8 @@ async function setupServer() {
|
|
|
35
35
|
}
|
|
36
36
|
}
|
|
37
37
|
catch (error) {
|
|
38
|
-
|
|
38
|
+
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
39
|
+
logger.error(`Failed to set up server: ${errorMessage}`);
|
|
39
40
|
throw error;
|
|
40
41
|
}
|
|
41
42
|
}
|
|
@@ -69,7 +70,8 @@ async function setupServerAsync(transports) {
|
|
|
69
70
|
logger.info('All MCP servers finished loading (successfully or failed)');
|
|
70
71
|
})
|
|
71
72
|
.catch((error) => {
|
|
72
|
-
|
|
73
|
+
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
74
|
+
logger.error('MCP loading process encountered an error:', errorMessage);
|
|
73
75
|
});
|
|
74
76
|
logger.info('Async server setup completed - HTTP server ready, MCP servers loading in background');
|
|
75
77
|
return {
|
|
@@ -130,7 +132,8 @@ async function initializePresetSystem() {
|
|
|
130
132
|
logger.info('Preset management system initialized successfully');
|
|
131
133
|
}
|
|
132
134
|
catch (error) {
|
|
133
|
-
|
|
135
|
+
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
136
|
+
logger.error('Failed to initialize preset system', { error: errorMessage });
|
|
134
137
|
throw error;
|
|
135
138
|
}
|
|
136
139
|
}
|
package/build/server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACnE,OAAO,EAAE,uBAAuB,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACjG,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"httpRequestLogger.d.ts","sourceRoot":"","sources":["../../../../src/transport/http/middlewares/httpRequestLogger.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAE1D;;;;;;;;;;;;GAYG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"httpRequestLogger.d.ts","sourceRoot":"","sources":["../../../../src/transport/http/middlewares/httpRequestLogger.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAE1D;;;;;;;;;;;;GAYG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,GAAG,IAAI,CAoCvF"}
|
|
@@ -21,20 +21,26 @@ export function httpRequestLogger(req, res, next) {
|
|
|
21
21
|
body: req.body,
|
|
22
22
|
headers: sanitizeHeaders(req.headers),
|
|
23
23
|
userAgent: req.get('User-Agent'),
|
|
24
|
-
ip: req.ip
|
|
24
|
+
ip: req.ip,
|
|
25
25
|
});
|
|
26
26
|
// Capture the original end method to log response details
|
|
27
|
-
const originalEnd = res.end;
|
|
28
|
-
|
|
27
|
+
const originalEnd = res.end.bind(res);
|
|
28
|
+
// Override the end method with proper typing
|
|
29
|
+
// Reason: Express.js response.end() method has multiple overloads that are difficult to satisfy
|
|
30
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/no-unsafe-member-access
|
|
31
|
+
res.end = function (...args) {
|
|
29
32
|
const duration = Date.now() - startTime;
|
|
30
33
|
// Log response details
|
|
34
|
+
const contentType = res.get('Content-Type');
|
|
31
35
|
logger.info(`[${req.method}] ${req.path} completed`, {
|
|
32
36
|
statusCode: res.statusCode,
|
|
33
37
|
duration: `${duration}ms`,
|
|
34
|
-
contentType:
|
|
38
|
+
contentType: Array.isArray(contentType) ? contentType.join(', ') : contentType || undefined,
|
|
35
39
|
});
|
|
36
|
-
// Call the original end method
|
|
37
|
-
|
|
40
|
+
// Call the original end method with proper argument typing
|
|
41
|
+
// Reason: Express.js end method accepts variable arguments; any is required for compatibility
|
|
42
|
+
// eslint-disable-next-line @typescript-eslint/no-unsafe-argument, @typescript-eslint/no-explicit-any
|
|
43
|
+
return originalEnd.apply(this, args);
|
|
38
44
|
};
|
|
39
45
|
next();
|
|
40
46
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"httpRequestLogger.js","sourceRoot":"","sources":["../../../../src/transport/http/middlewares/httpRequestLogger.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,uBAAuB,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AAIxE;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,iBAAiB,CAAC,GAAY,EAAE,GAAa,EAAE,IAAkB;IAC/E,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAE7B,2BAA2B;IAC3B,MAAM,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,CAAC,IAAI,EAAE,EAAE;QACzC,KAAK,EAAE,GAAG,CAAC,KAAK;QAChB,IAAI,EAAE,GAAG,CAAC,
|
|
1
|
+
{"version":3,"file":"httpRequestLogger.js","sourceRoot":"","sources":["../../../../src/transport/http/middlewares/httpRequestLogger.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,uBAAuB,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AAIxE;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,iBAAiB,CAAC,GAAY,EAAE,GAAa,EAAE,IAAkB;IAC/E,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAE7B,2BAA2B;IAC3B,MAAM,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,CAAC,IAAI,EAAE,EAAE;QACzC,KAAK,EAAE,GAAG,CAAC,KAAK;QAChB,IAAI,EAAE,GAAG,CAAC,IAAe;QACzB,OAAO,EAAE,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC;QACrC,SAAS,EAAE,GAAG,CAAC,GAAG,CAAC,YAAY,CAAC;QAChC,EAAE,EAAE,GAAG,CAAC,EAAE;KACX,CAAC,CAAC;IAEH,0DAA0D;IAC1D,MAAM,WAAW,GAAG,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAEtC,6CAA6C;IAC7C,gGAAgG;IAChG,0GAA0G;IACzG,GAAW,CAAC,GAAG,GAAG,UAA0B,GAAG,IAAW;QACzD,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;QAExC,uBAAuB;QACvB,MAAM,WAAW,GAAG,GAAG,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;QAC5C,MAAM,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,CAAC,IAAI,YAAY,EAAE;YACnD,UAAU,EAAE,GAAG,CAAC,UAAU;YAC1B,QAAQ,EAAE,GAAG,QAAQ,IAAI;YACzB,WAAW,EAAE,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,IAAI,SAAS;SAC5F,CAAC,CAAC;QAEH,2DAA2D;QAC3D,8FAA8F;QAC9F,qGAAqG;QACrG,OAAO,WAAW,CAAC,KAAK,CAAC,IAAI,EAAE,IAAW,CAAC,CAAC;IAC9C,CAAC,CAAC;IAEF,IAAI,EAAE,CAAC;AACT,CAAC"}
|
|
@@ -1,7 +1,38 @@
|
|
|
1
|
+
import type { AuthInfo as SDKAuthInfo } from '@modelcontextprotocol/sdk/server/auth/types.js';
|
|
1
2
|
import { SDKOAuthServerProvider } from '../../../auth/sdkOAuthServerProvider.js';
|
|
2
3
|
import { TagExpression } from '../../../domains/preset/parsers/tagQueryParser.js';
|
|
3
4
|
import { TagQuery } from '../../../domains/preset/types/presetTypes.js';
|
|
4
5
|
import { NextFunction, Request, Response } from 'express';
|
|
6
|
+
declare global {
|
|
7
|
+
namespace Express {
|
|
8
|
+
interface Request {
|
|
9
|
+
auth?: SDKAuthInfo;
|
|
10
|
+
}
|
|
11
|
+
interface Response {
|
|
12
|
+
locals: ResponseLocals;
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Type-safe response locals interface for scope auth middleware
|
|
18
|
+
* Extends the default Express locals interface
|
|
19
|
+
*/
|
|
20
|
+
export interface ResponseLocals extends Record<string, unknown> {
|
|
21
|
+
/** Tags extracted from the request (may be undefined) */
|
|
22
|
+
tags?: string[];
|
|
23
|
+
/** Tags that have been validated against scopes */
|
|
24
|
+
validatedTags?: string[];
|
|
25
|
+
/** Tag expression for advanced filtering */
|
|
26
|
+
tagExpression?: TagExpression;
|
|
27
|
+
/** Tag filter mode */
|
|
28
|
+
tagFilterMode?: 'simple-or' | 'advanced' | 'preset' | 'none';
|
|
29
|
+
/** Tag query object */
|
|
30
|
+
tagQuery?: TagQuery;
|
|
31
|
+
/** Preset name if used */
|
|
32
|
+
presetName?: string;
|
|
33
|
+
/** Authentication context */
|
|
34
|
+
auth?: AuthInfo;
|
|
35
|
+
}
|
|
5
36
|
/**
|
|
6
37
|
* Authentication information structure
|
|
7
38
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scopeAuthMiddleware.d.ts","sourceRoot":"","sources":["../../../../src/transport/http/middlewares/scopeAuthMiddleware.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"scopeAuthMiddleware.d.ts","sourceRoot":"","sources":["../../../../src/transport/http/middlewares/scopeAuthMiddleware.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,IAAI,WAAW,EAAE,MAAM,gDAAgD,CAAC;AAE9F,OAAO,EAAE,sBAAsB,EAAE,MAAM,qCAAqC,CAAC;AAE7E,OAAO,EAAE,aAAa,EAAE,MAAM,+CAA+C,CAAC;AAC9E,OAAO,EAAE,QAAQ,EAAE,MAAM,0CAA0C,CAAC;AAIpE,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAG1D,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,OAAO,CAAC;QAChB,UAAU,OAAO;YACf,IAAI,CAAC,EAAE,WAAW,CAAC;SACpB;QAED,UAAU,QAAQ;YAChB,MAAM,EAAE,cAAc,CAAC;SACxB;KACF;CACF;AAED;;;GAGG;AACH,MAAM,WAAW,cAAe,SAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAC7D,yDAAyD;IACzD,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,mDAAmD;IACnD,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,4CAA4C;IAC5C,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,sBAAsB;IACtB,aAAa,CAAC,EAAE,WAAW,GAAG,UAAU,GAAG,QAAQ,GAAG,MAAM,CAAC;IAC7D,uBAAuB;IACvB,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,0BAA0B;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,6BAA6B;IAC7B,IAAI,CAAC,EAAE,QAAQ,CAAC;CACjB;AAED;;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,CAuIlE;AA8BD;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,QAAQ,GAAG,MAAM,EAAE,CAaxD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,QAAQ,GAAG,aAAa,GAAG,SAAS,CAOzE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,QAAQ,GAAG,WAAW,GAAG,UAAU,GAAG,QAAQ,GAAG,MAAM,CAW5F;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS,CAO/D;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,QAAQ,GAAG,MAAM,GAAG,SAAS,CAG/D;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS,CAoB/D;+BAjQiB,OAAO,OAAO,QAAQ,QAAQ,YAAY,KAAG,IAAI;AAoQnE,wBAA2C"}
|
|
@@ -19,17 +19,25 @@ import { auditScopeOperation, hasRequiredScopes, scopesToTags } from '../../../u
|
|
|
19
19
|
export function createScopeAuthMiddleware(oauthProvider) {
|
|
20
20
|
const serverConfig = AgentConfigManager.getInstance();
|
|
21
21
|
// If scope validation is disabled, return a pass-through middleware
|
|
22
|
-
if (!serverConfig.
|
|
22
|
+
if (!serverConfig.get('features').scopeValidation) {
|
|
23
23
|
return (_req, res, next) => {
|
|
24
|
-
|
|
24
|
+
// Type-safe access to tags from res.locals
|
|
25
|
+
const localsTags = res.locals.tags;
|
|
26
|
+
const requestedTags = Array.isArray(localsTags)
|
|
27
|
+
? localsTags.filter((tag) => typeof tag === 'string')
|
|
28
|
+
: [];
|
|
25
29
|
res.locals.validatedTags = requestedTags;
|
|
26
30
|
next();
|
|
27
31
|
};
|
|
28
32
|
}
|
|
29
33
|
// If scope validation is enabled but auth is disabled, allow all tags
|
|
30
|
-
if (!serverConfig.
|
|
34
|
+
if (!serverConfig.get('features').auth) {
|
|
31
35
|
return (_req, res, next) => {
|
|
32
|
-
|
|
36
|
+
// Type-safe access to tags from res.locals
|
|
37
|
+
const localsTags = res.locals.tags;
|
|
38
|
+
const requestedTags = Array.isArray(localsTags)
|
|
39
|
+
? localsTags.filter((tag) => typeof tag === 'string')
|
|
40
|
+
: [];
|
|
33
41
|
res.locals.validatedTags = requestedTags;
|
|
34
42
|
next();
|
|
35
43
|
};
|
|
@@ -54,12 +62,29 @@ export function createScopeAuthMiddleware(oauthProvider) {
|
|
|
54
62
|
});
|
|
55
63
|
// If we get here, auth succeeded and req.auth is populated
|
|
56
64
|
const authInfo = req.auth;
|
|
57
|
-
|
|
65
|
+
if (!authInfo) {
|
|
66
|
+
throw new Error('Authentication succeeded but req.auth is undefined');
|
|
67
|
+
}
|
|
68
|
+
// Type-safe access to authInfo properties
|
|
69
|
+
const grantedScopes = authInfo.scopes ? [...authInfo.scopes] : [];
|
|
58
70
|
const grantedTags = scopesToTags(grantedScopes);
|
|
59
71
|
// Get requested tags and tag expression from previous middleware (tagsExtractor)
|
|
60
|
-
|
|
61
|
-
const
|
|
62
|
-
const
|
|
72
|
+
// Type-safe access to res.locals properties
|
|
73
|
+
const localsTags = res.locals.tags;
|
|
74
|
+
const requestedTags = Array.isArray(localsTags)
|
|
75
|
+
? localsTags.filter((tag) => typeof tag === 'string')
|
|
76
|
+
: [];
|
|
77
|
+
const localsTagExpression = res.locals.tagExpression;
|
|
78
|
+
const tagExpression = localsTagExpression && typeof localsTagExpression === 'object' && 'type' in localsTagExpression
|
|
79
|
+
? localsTagExpression
|
|
80
|
+
: undefined;
|
|
81
|
+
const localsTagFilterMode = res.locals.tagFilterMode;
|
|
82
|
+
const tagFilterMode = localsTagFilterMode === 'simple-or' ||
|
|
83
|
+
localsTagFilterMode === 'advanced' ||
|
|
84
|
+
localsTagFilterMode === 'preset' ||
|
|
85
|
+
localsTagFilterMode === 'none'
|
|
86
|
+
? localsTagFilterMode
|
|
87
|
+
: 'none';
|
|
63
88
|
let allRequestedTags = [];
|
|
64
89
|
// Determine all tags that need validation based on filter mode
|
|
65
90
|
if (tagFilterMode === 'advanced' && tagExpression) {
|
|
@@ -86,12 +111,15 @@ export function createScopeAuthMiddleware(oauthProvider) {
|
|
|
86
111
|
return;
|
|
87
112
|
}
|
|
88
113
|
// Provide authentication context to downstream handlers via res.locals
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
114
|
+
const authHeader = req.headers.authorization;
|
|
115
|
+
const token = typeof authHeader === 'string' && authHeader.startsWith('Bearer ') ? authHeader.slice(7) : '';
|
|
116
|
+
const authContext = {
|
|
117
|
+
token,
|
|
118
|
+
clientId: authInfo.clientId || '',
|
|
92
119
|
grantedScopes,
|
|
93
120
|
grantedTags,
|
|
94
121
|
};
|
|
122
|
+
res.locals.auth = authContext;
|
|
95
123
|
// Provide validated tags to downstream handlers
|
|
96
124
|
// If no specific tags requested, use all granted tags
|
|
97
125
|
res.locals.validatedTags = allRequestedTags.length > 0 ? allRequestedTags : grantedTags;
|
|
@@ -148,43 +176,74 @@ export function getValidatedTags(res) {
|
|
|
148
176
|
return [];
|
|
149
177
|
}
|
|
150
178
|
// Ensure it's an array
|
|
151
|
-
|
|
179
|
+
const validatedTags = res.locals.validatedTags;
|
|
180
|
+
if (!Array.isArray(validatedTags)) {
|
|
152
181
|
return [];
|
|
153
182
|
}
|
|
154
|
-
|
|
183
|
+
// Ensure all elements are strings
|
|
184
|
+
return validatedTags.filter((tag) => typeof tag === 'string');
|
|
155
185
|
}
|
|
156
186
|
/**
|
|
157
187
|
* Utility function to get tag expression from response locals
|
|
158
188
|
*/
|
|
159
189
|
export function getTagExpression(res) {
|
|
160
|
-
|
|
190
|
+
const tagExpression = res.locals?.tagExpression;
|
|
191
|
+
if (!tagExpression || typeof tagExpression !== 'object') {
|
|
192
|
+
return undefined;
|
|
193
|
+
}
|
|
194
|
+
// Type guard to ensure it's a valid TagExpression
|
|
195
|
+
return 'type' in tagExpression ? tagExpression : undefined;
|
|
161
196
|
}
|
|
162
197
|
/**
|
|
163
198
|
* Utility function to get tag filter mode from response locals
|
|
164
199
|
*/
|
|
165
200
|
export function getTagFilterMode(res) {
|
|
166
|
-
|
|
201
|
+
const tagFilterMode = res.locals?.tagFilterMode;
|
|
202
|
+
if (tagFilterMode === 'simple-or' ||
|
|
203
|
+
tagFilterMode === 'advanced' ||
|
|
204
|
+
tagFilterMode === 'preset' ||
|
|
205
|
+
tagFilterMode === 'none') {
|
|
206
|
+
return tagFilterMode;
|
|
207
|
+
}
|
|
208
|
+
return 'none';
|
|
167
209
|
}
|
|
168
210
|
/**
|
|
169
211
|
* Utility function to get tag query from response locals
|
|
170
212
|
*/
|
|
171
213
|
export function getTagQuery(res) {
|
|
172
|
-
|
|
214
|
+
const tagQuery = res.locals?.tagQuery;
|
|
215
|
+
if (!tagQuery || typeof tagQuery !== 'object') {
|
|
216
|
+
return undefined;
|
|
217
|
+
}
|
|
218
|
+
// Type guard to ensure it's a valid TagQuery
|
|
219
|
+
return tagQuery;
|
|
173
220
|
}
|
|
174
221
|
/**
|
|
175
222
|
* Utility function to get preset name from response locals
|
|
176
223
|
*/
|
|
177
224
|
export function getPresetName(res) {
|
|
178
|
-
|
|
225
|
+
const presetName = res.locals?.presetName;
|
|
226
|
+
return typeof presetName === 'string' ? presetName : undefined;
|
|
179
227
|
}
|
|
180
228
|
/**
|
|
181
229
|
* Utility function to get authentication information from response locals
|
|
182
230
|
*/
|
|
183
231
|
export function getAuthInfo(res) {
|
|
184
|
-
|
|
232
|
+
const auth = res.locals?.auth;
|
|
233
|
+
if (!auth || typeof auth !== 'object') {
|
|
185
234
|
return undefined;
|
|
186
235
|
}
|
|
187
|
-
|
|
236
|
+
// Type guard to ensure it's a valid AuthInfo object
|
|
237
|
+
const authObj = auth;
|
|
238
|
+
if (typeof authObj.token === 'string' &&
|
|
239
|
+
typeof authObj.clientId === 'string' &&
|
|
240
|
+
Array.isArray(authObj.grantedScopes) &&
|
|
241
|
+
authObj.grantedScopes.every((scope) => typeof scope === 'string') &&
|
|
242
|
+
Array.isArray(authObj.grantedTags) &&
|
|
243
|
+
authObj.grantedTags.every((tag) => typeof tag === 'string')) {
|
|
244
|
+
return auth;
|
|
245
|
+
}
|
|
246
|
+
return undefined;
|
|
188
247
|
}
|
|
189
248
|
// Default export for backward compatibility (creates a new provider instance)
|
|
190
249
|
export default createScopeAuthMiddleware();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scopeAuthMiddleware.js","sourceRoot":"","sources":["../../../../src/transport/http/middlewares/scopeAuthMiddleware.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,gEAAgE,CAAC;
|
|
1
|
+
{"version":3,"file":"scopeAuthMiddleware.js","sourceRoot":"","sources":["../../../../src/transport/http/middlewares/scopeAuthMiddleware.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"securityMiddleware.d.ts","sourceRoot":"","sources":["../../../../src/transport/http/middlewares/securityMiddleware.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAG1D;;GAEG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,GAAG,IAAI,CAyBrF;AAED;;GAEG;AACH,eAAO,MAAM,yBAAyB,
|
|
1
|
+
{"version":3,"file":"securityMiddleware.d.ts","sourceRoot":"","sources":["../../../../src/transport/http/middlewares/securityMiddleware.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAG1D;;GAEG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,GAAG,IAAI,CAyBrF;AAED;;GAEG;AACH,eAAO,MAAM,yBAAyB,sDA4BpC,CAAC;AAEH;;GAEG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,GAAG,IAAI,CAkErF;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,GAAG,IAAI,CAarF;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,GAAG,IAAI,CA8CzF;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,GAAG,IAAI,CAwB5F;AAED;;GAEG;AACH,wBAAgB,uBAAuB,+BAEtC"}
|