@mxf-dev/core 1.0.1 → 2.0.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 +18 -0
- package/dist/adapters/FrameworkAdapter.js +1 -1
- package/dist/adapters/FrameworkAdapter.js.map +1 -1
- package/dist/config/ConfigManager.d.ts +9 -8
- package/dist/config/ConfigManager.d.ts.map +1 -1
- package/dist/config/ConfigManager.js +47 -17
- package/dist/config/ConfigManager.js.map +1 -1
- package/dist/config/memory-strata.config.d.ts +25 -0
- package/dist/config/memory-strata.config.d.ts.map +1 -0
- package/dist/config/memory-strata.config.js +107 -0
- package/dist/config/memory-strata.config.js.map +1 -0
- package/dist/constants/ToolNames.d.ts +1 -29
- package/dist/constants/ToolNames.d.ts.map +1 -1
- package/dist/constants/ToolNames.js +4 -17
- package/dist/constants/ToolNames.js.map +1 -1
- package/dist/database/DatabaseAdapterFactory.d.ts +14 -2
- package/dist/database/DatabaseAdapterFactory.d.ts.map +1 -1
- package/dist/database/DatabaseAdapterFactory.js +21 -6
- package/dist/database/DatabaseAdapterFactory.js.map +1 -1
- package/dist/database/adapters/mongodb/MongoBaseRepository.d.ts +7 -1
- package/dist/database/adapters/mongodb/MongoBaseRepository.d.ts.map +1 -1
- package/dist/database/adapters/mongodb/MongoBaseRepository.js +12 -2
- package/dist/database/adapters/mongodb/MongoBaseRepository.js.map +1 -1
- package/dist/events/ClientEventBus.d.ts +16 -77
- package/dist/events/ClientEventBus.d.ts.map +1 -1
- package/dist/events/ClientEventBus.js +38 -311
- package/dist/events/ClientEventBus.js.map +1 -1
- package/dist/events/EventBus.d.ts +1 -1
- package/dist/events/EventBus.d.ts.map +1 -1
- package/dist/events/EventBus.js +5 -4
- package/dist/events/EventBus.js.map +1 -1
- package/dist/events/EventBusBase.d.ts +139 -34
- package/dist/events/EventBusBase.d.ts.map +1 -1
- package/dist/events/EventBusBase.js +366 -88
- package/dist/events/EventBusBase.js.map +1 -1
- package/dist/events/EventNames.d.ts +10 -1
- package/dist/events/EventNames.d.ts.map +1 -1
- package/dist/events/EventNames.js +3 -0
- package/dist/events/EventNames.js.map +1 -1
- package/dist/events/PublicEvents.d.ts +6 -2
- package/dist/events/PublicEvents.d.ts.map +1 -1
- package/dist/events/PublicEvents.js +7 -4
- package/dist/events/PublicEvents.js.map +1 -1
- package/dist/events/ServerEventBus.d.ts +23 -112
- package/dist/events/ServerEventBus.d.ts.map +1 -1
- package/dist/events/ServerEventBus.js +58 -323
- package/dist/events/ServerEventBus.js.map +1 -1
- package/dist/events/event-definitions/LlmBudgetEvents.d.ts +68 -0
- package/dist/events/event-definitions/LlmBudgetEvents.d.ts.map +1 -0
- package/dist/events/event-definitions/LlmBudgetEvents.js +35 -0
- package/dist/events/event-definitions/LlmBudgetEvents.js.map +1 -0
- package/dist/interfaces/IMemoryPersistence.d.ts +41 -0
- package/dist/interfaces/IMemoryPersistence.d.ts.map +1 -0
- package/dist/interfaces/IMemoryPersistence.js +15 -0
- package/dist/interfaces/IMemoryPersistence.js.map +1 -0
- package/dist/middleware/MxpMiddleware.d.ts +8 -1
- package/dist/middleware/MxpMiddleware.d.ts.map +1 -1
- package/dist/middleware/MxpMiddleware.js +42 -20
- package/dist/middleware/MxpMiddleware.js.map +1 -1
- package/dist/models/channelKey.d.ts +1 -0
- package/dist/models/channelKey.d.ts.map +1 -1
- package/dist/models/channelKey.js +5 -0
- package/dist/models/channelKey.js.map +1 -1
- package/dist/models/memoryUtility.d.ts +39 -0
- package/dist/models/memoryUtility.d.ts.map +1 -0
- package/dist/models/memoryUtility.js +39 -0
- package/dist/models/memoryUtility.js.map +1 -0
- package/dist/models/user.d.ts.map +1 -1
- package/dist/models/user.js +23 -1
- package/dist/models/user.js.map +1 -1
- package/dist/mxp/BinaryProtocolLayer.d.ts +24 -8
- package/dist/mxp/BinaryProtocolLayer.d.ts.map +1 -1
- package/dist/mxp/BinaryProtocolLayer.js +90 -103
- package/dist/mxp/BinaryProtocolLayer.js.map +1 -1
- package/dist/mxp/ContextCompressionEngine.d.ts +57 -10
- package/dist/mxp/ContextCompressionEngine.d.ts.map +1 -1
- package/dist/mxp/ContextCompressionEngine.js +170 -128
- package/dist/mxp/ContextCompressionEngine.js.map +1 -1
- package/dist/mxp/MxpTokenOptimizer.d.ts +7 -3
- package/dist/mxp/MxpTokenOptimizer.d.ts.map +1 -1
- package/dist/mxp/MxpTokenOptimizer.js +8 -5
- package/dist/mxp/MxpTokenOptimizer.js.map +1 -1
- package/dist/prompts/MxfAgentSystemPrompt.d.ts +1 -1
- package/dist/prompts/MxfAgentSystemPrompt.d.ts.map +1 -1
- package/dist/prompts/MxfAgentSystemPrompt.js +47 -57
- package/dist/prompts/MxfAgentSystemPrompt.js.map +1 -1
- package/dist/protocols/mcp/ToolError.d.ts +123 -0
- package/dist/protocols/mcp/ToolError.d.ts.map +1 -0
- package/dist/protocols/mcp/ToolError.js +108 -0
- package/dist/protocols/mcp/ToolError.js.map +1 -0
- package/dist/protocols/mcp/defineTool.d.ts +133 -0
- package/dist/protocols/mcp/defineTool.d.ts.map +1 -0
- package/dist/protocols/mcp/defineTool.js +236 -0
- package/dist/protocols/mcp/defineTool.js.map +1 -0
- package/dist/protocols/mcp/security/HttpTargetGuard.d.ts +38 -0
- package/dist/protocols/mcp/security/HttpTargetGuard.d.ts.map +1 -0
- package/dist/protocols/mcp/security/HttpTargetGuard.js +227 -0
- package/dist/protocols/mcp/security/HttpTargetGuard.js.map +1 -0
- package/dist/protocols/mcp/security/McpSecurityGuard.d.ts +9 -1
- package/dist/protocols/mcp/security/McpSecurityGuard.d.ts.map +1 -1
- package/dist/protocols/mcp/security/McpSecurityGuard.js +10 -2
- package/dist/protocols/mcp/security/McpSecurityGuard.js.map +1 -1
- package/dist/protocols/mcp/security/McpToolPolicy.d.ts +81 -0
- package/dist/protocols/mcp/security/McpToolPolicy.d.ts.map +1 -0
- package/dist/protocols/mcp/security/McpToolPolicy.js +202 -0
- package/dist/protocols/mcp/security/McpToolPolicy.js.map +1 -0
- package/dist/protocols/mcp/services/ExternalMcpServerManager.d.ts +51 -18
- package/dist/protocols/mcp/services/ExternalMcpServerManager.d.ts.map +1 -1
- package/dist/protocols/mcp/services/ExternalMcpServerManager.js +256 -283
- package/dist/protocols/mcp/services/ExternalMcpServerManager.js.map +1 -1
- package/dist/protocols/mcp/services/ExternalServerConfigs.d.ts +39 -6
- package/dist/protocols/mcp/services/ExternalServerConfigs.d.ts.map +1 -1
- package/dist/protocols/mcp/services/ExternalServerConfigs.js +76 -18
- package/dist/protocols/mcp/services/ExternalServerConfigs.js.map +1 -1
- package/dist/protocols/mcp/tools/AnalyticsTools.js +1 -1
- package/dist/protocols/mcp/tools/AnalyticsTools.js.map +1 -1
- package/dist/protocols/mcp/tools/CodeAnalysisTools.d.ts.map +1 -1
- package/dist/protocols/mcp/tools/CodeAnalysisTools.js +15 -0
- package/dist/protocols/mcp/tools/CodeAnalysisTools.js.map +1 -1
- package/dist/protocols/mcp/tools/EffectivenessTools.js +3 -3
- package/dist/protocols/mcp/tools/EffectivenessTools.js.map +1 -1
- package/dist/protocols/mcp/tools/GitTools.d.ts +9 -369
- package/dist/protocols/mcp/tools/GitTools.d.ts.map +1 -1
- package/dist/protocols/mcp/tools/GitTools.js +222 -517
- package/dist/protocols/mcp/tools/GitTools.js.map +1 -1
- package/dist/protocols/mcp/tools/InfrastructureTools.d.ts +56 -24
- package/dist/protocols/mcp/tools/InfrastructureTools.d.ts.map +1 -1
- package/dist/protocols/mcp/tools/InfrastructureTools.js +117 -26
- package/dist/protocols/mcp/tools/InfrastructureTools.js.map +1 -1
- package/dist/protocols/mcp/tools/MemorySearchTools.d.ts +0 -3
- package/dist/protocols/mcp/tools/MemorySearchTools.d.ts.map +1 -1
- package/dist/protocols/mcp/tools/MemorySearchTools.js +58 -1
- package/dist/protocols/mcp/tools/MemorySearchTools.js.map +1 -1
- package/dist/protocols/mcp/tools/OrparTools.d.ts +8 -0
- package/dist/protocols/mcp/tools/OrparTools.d.ts.map +1 -1
- package/dist/protocols/mcp/tools/OrparTools.js +66 -0
- package/dist/protocols/mcp/tools/OrparTools.js.map +1 -1
- package/dist/protocols/mcp/tools/SafetyTools.d.ts +7 -525
- package/dist/protocols/mcp/tools/SafetyTools.d.ts.map +1 -1
- package/dist/protocols/mcp/tools/SafetyTools.js +349 -514
- package/dist/protocols/mcp/tools/SafetyTools.js.map +1 -1
- package/dist/protocols/mcp/tools/TaskPlanningTools.d.ts.map +1 -1
- package/dist/protocols/mcp/tools/TaskPlanningTools.js +56 -26
- package/dist/protocols/mcp/tools/TaskPlanningTools.js.map +1 -1
- package/dist/protocols/mcp/tools/TestTools.d.ts +15 -376
- package/dist/protocols/mcp/tools/TestTools.d.ts.map +1 -1
- package/dist/protocols/mcp/tools/TestTools.js +241 -363
- package/dist/protocols/mcp/tools/TestTools.js.map +1 -1
- package/dist/protocols/mcp/tools/TypeScriptTools.d.ts +6 -276
- package/dist/protocols/mcp/tools/TypeScriptTools.d.ts.map +1 -1
- package/dist/protocols/mcp/tools/TypeScriptTools.js +223 -337
- package/dist/protocols/mcp/tools/TypeScriptTools.js.map +1 -1
- package/dist/protocols/mcp/tools/WebTools.d.ts +15 -728
- package/dist/protocols/mcp/tools/WebTools.d.ts.map +1 -1
- package/dist/protocols/mcp/tools/WebTools.js +151 -257
- package/dist/protocols/mcp/tools/WebTools.js.map +1 -1
- package/dist/protocols/mcp/tools/shell/ShellExecuteHandler.d.ts +5 -3
- package/dist/protocols/mcp/tools/shell/ShellExecuteHandler.d.ts.map +1 -1
- package/dist/protocols/mcp/tools/shell/ShellExecuteHandler.js +31 -6
- package/dist/protocols/mcp/tools/shell/ShellExecuteHandler.js.map +1 -1
- package/dist/schemas/EventPayloadSchema.d.ts +21 -0
- package/dist/schemas/EventPayloadSchema.d.ts.map +1 -1
- package/dist/schemas/EventPayloadSchema.js +14 -0
- package/dist/schemas/EventPayloadSchema.js.map +1 -1
- package/dist/services/BackgroundTaskManager.d.ts.map +1 -1
- package/dist/services/BackgroundTaskManager.js +12 -4
- package/dist/services/BackgroundTaskManager.js.map +1 -1
- package/dist/services/BrowserManager.d.ts +1 -1
- package/dist/services/BrowserManager.d.ts.map +1 -1
- package/dist/services/BrowserManager.js +26 -3
- package/dist/services/BrowserManager.js.map +1 -1
- package/dist/services/MemoryCompressor.d.ts +11 -2
- package/dist/services/MemoryCompressor.d.ts.map +1 -1
- package/dist/services/MemoryCompressor.js +8 -26
- package/dist/services/MemoryCompressor.js.map +1 -1
- package/dist/services/MemoryService.d.ts +16 -3
- package/dist/services/MemoryService.d.ts.map +1 -1
- package/dist/services/MemoryService.js +79 -55
- package/dist/services/MemoryService.js.map +1 -1
- package/dist/services/PredictiveAnalyticsService.d.ts +34 -4
- package/dist/services/PredictiveAnalyticsService.d.ts.map +1 -1
- package/dist/services/PredictiveAnalyticsService.js +41 -25
- package/dist/services/PredictiveAnalyticsService.js.map +1 -1
- package/dist/services/QValueManager.d.ts +7 -0
- package/dist/services/QValueManager.d.ts.map +1 -1
- package/dist/services/QValueManager.js +9 -0
- package/dist/services/QValueManager.js.map +1 -1
- package/dist/services/RewardSignalProcessor.d.ts +38 -1
- package/dist/services/RewardSignalProcessor.d.ts.map +1 -1
- package/dist/services/RewardSignalProcessor.js +109 -7
- package/dist/services/RewardSignalProcessor.js.map +1 -1
- package/dist/services/SharedStateService.d.ts +16 -2
- package/dist/services/SharedStateService.d.ts.map +1 -1
- package/dist/services/SharedStateService.js +44 -3
- package/dist/services/SharedStateService.js.map +1 -1
- package/dist/services/TaskEffectivenessService.d.ts +34 -18
- package/dist/services/TaskEffectivenessService.d.ts.map +1 -1
- package/dist/services/TaskEffectivenessService.js +91 -155
- package/dist/services/TaskEffectivenessService.js.map +1 -1
- package/dist/services/WebSearchService.d.ts.map +1 -1
- package/dist/services/WebSearchService.js.map +1 -1
- package/dist/services/dag/TaskDagService.d.ts.map +1 -1
- package/dist/services/dag/TaskDagService.js +2 -0
- package/dist/services/dag/TaskDagService.js.map +1 -1
- package/dist/services/orpar-memory/OrparMemoryCoordinator.d.ts +7 -0
- package/dist/services/orpar-memory/OrparMemoryCoordinator.d.ts.map +1 -1
- package/dist/services/orpar-memory/OrparMemoryCoordinator.js +71 -10
- package/dist/services/orpar-memory/OrparMemoryCoordinator.js.map +1 -1
- package/dist/types/MemoryUtilityTypes.d.ts +2 -0
- package/dist/types/MemoryUtilityTypes.d.ts.map +1 -1
- package/dist/types/MemoryUtilityTypes.js.map +1 -1
- package/dist/utils/Logger.d.ts +43 -3
- package/dist/utils/Logger.d.ts.map +1 -1
- package/dist/utils/Logger.js +78 -36
- package/dist/utils/Logger.js.map +1 -1
- package/dist/utils/MxpEncryption.d.ts +19 -6
- package/dist/utils/MxpEncryption.d.ts.map +1 -1
- package/dist/utils/MxpEncryption.js +48 -16
- package/dist/utils/MxpEncryption.js.map +1 -1
- package/package.json +19 -4
- package/src/adapters/FrameworkAdapter.ts +1 -1
- package/src/config/ConfigManager.ts +52 -19
- package/src/config/memory-strata.config.ts +136 -0
- package/src/constants/ToolNames.ts +4 -18
- package/src/database/DatabaseAdapterFactory.ts +23 -6
- package/src/database/adapters/mongodb/MongoBaseRepository.ts +16 -2
- package/src/events/ClientEventBus.ts +68 -403
- package/src/events/EventBus.ts +7 -8
- package/src/events/EventBusBase.ts +479 -116
- package/src/events/EventNames.ts +6 -0
- package/src/events/PublicEvents.ts +7 -4
- package/src/events/ServerEventBus.ts +78 -473
- package/src/events/event-definitions/LlmBudgetEvents.ts +74 -0
- package/src/interfaces/IMemoryPersistence.ts +51 -0
- package/src/middleware/MxpMiddleware.ts +51 -24
- package/src/models/channelKey.ts +18 -4
- package/src/models/memoryUtility.ts +64 -0
- package/src/models/user.ts +36 -4
- package/src/mxp/BinaryProtocolLayer.ts +108 -124
- package/src/mxp/ContextCompressionEngine.ts +219 -161
- package/src/mxp/MxpTokenOptimizer.ts +10 -10
- package/src/prompts/MxfAgentSystemPrompt.ts +45 -55
- package/src/protocols/mcp/ToolError.ts +201 -0
- package/src/protocols/mcp/defineTool.ts +379 -0
- package/src/protocols/mcp/security/HttpTargetGuard.ts +267 -0
- package/src/protocols/mcp/security/McpSecurityGuard.ts +10 -3
- package/src/protocols/mcp/security/McpToolPolicy.ts +221 -0
- package/src/protocols/mcp/services/ExternalMcpServerManager.ts +340 -322
- package/src/protocols/mcp/services/ExternalServerConfigs.ts +82 -19
- package/src/protocols/mcp/tools/AnalyticsTools.ts +1 -1
- package/src/protocols/mcp/tools/CodeAnalysisTools.ts +15 -0
- package/src/protocols/mcp/tools/EffectivenessTools.ts +3 -3
- package/src/protocols/mcp/tools/GitTools.ts +290 -569
- package/src/protocols/mcp/tools/InfrastructureTools.ts +189 -43
- package/src/protocols/mcp/tools/MemorySearchTools.ts +77 -1
- package/src/protocols/mcp/tools/OrparTools.ts +87 -0
- package/src/protocols/mcp/tools/SafetyTools.ts +501 -579
- package/src/protocols/mcp/tools/TaskPlanningTools.ts +81 -39
- package/src/protocols/mcp/tools/TestTools.ts +339 -419
- package/src/protocols/mcp/tools/TypeScriptTools.ts +316 -376
- package/src/protocols/mcp/tools/WebTools.ts +209 -307
- package/src/protocols/mcp/tools/shell/ShellExecuteHandler.ts +53 -14
- package/src/schemas/EventPayloadSchema.ts +37 -0
- package/src/services/BackgroundTaskManager.ts +12 -4
- package/src/services/BrowserManager.ts +41 -1
- package/src/services/MemoryCompressor.ts +20 -32
- package/src/services/MemoryService.ts +96 -58
- package/src/services/PredictiveAnalyticsService.ts +55 -32
- package/src/services/QValueManager.ts +10 -0
- package/src/services/RewardSignalProcessor.ts +138 -9
- package/src/services/SharedStateService.ts +56 -8
- package/src/services/TaskEffectivenessService.ts +114 -187
- package/src/services/WebSearchService.ts +2 -1
- package/src/services/dag/TaskDagService.ts +2 -0
- package/src/services/orpar-memory/OrparMemoryCoordinator.ts +86 -10
- package/src/types/MemoryUtilityTypes.ts +2 -0
- package/src/utils/Logger.ts +116 -40
- package/src/utils/MxpEncryption.ts +69 -34
- package/dist/mxp/MxpEventForwardingEnhancer.d.ts +0 -134
- package/dist/mxp/MxpEventForwardingEnhancer.d.ts.map +0 -1
- package/dist/mxp/MxpEventForwardingEnhancer.js +0 -361
- package/dist/mxp/MxpEventForwardingEnhancer.js.map +0 -1
- package/dist/protocols/mcp/services/ToolSchemaEnhancements.d.ts +0 -56
- package/dist/protocols/mcp/services/ToolSchemaEnhancements.d.ts.map +0 -1
- package/dist/protocols/mcp/services/ToolSchemaEnhancements.js +0 -57
- package/dist/protocols/mcp/services/ToolSchemaEnhancements.js.map +0 -1
- package/dist/protocols/mcp/tools/ControlLoopLifecycle.d.ts +0 -270
- package/dist/protocols/mcp/tools/ControlLoopLifecycle.d.ts.map +0 -1
- package/dist/protocols/mcp/tools/ControlLoopLifecycle.js +0 -256
- package/dist/protocols/mcp/tools/ControlLoopLifecycle.js.map +0 -1
- package/dist/protocols/mcp/tools/LspTools.d.ts +0 -495
- package/dist/protocols/mcp/tools/LspTools.d.ts.map +0 -1
- package/dist/protocols/mcp/tools/LspTools.js +0 -469
- package/dist/protocols/mcp/tools/LspTools.js.map +0 -1
- package/src/mxp/MxpEventForwardingEnhancer.ts +0 -471
- package/src/protocols/mcp/services/ToolSchemaEnhancements.ts +0 -92
- package/src/protocols/mcp/tools/ControlLoopLifecycle.ts +0 -302
- package/src/protocols/mcp/tools/LspTools.ts +0 -476
|
@@ -41,7 +41,15 @@ export declare class McpSecurityGuard {
|
|
|
41
41
|
private platform;
|
|
42
42
|
private projectRoot;
|
|
43
43
|
private allowedPaths;
|
|
44
|
-
|
|
44
|
+
/**
|
|
45
|
+
* @param projectRoot - Root the guard confines filesystem access to
|
|
46
|
+
* @param additionalAllowedPaths - Extra paths outside the project root to permit
|
|
47
|
+
* @param platformOverride - Force the OS rule set. Command rules are OS-specific
|
|
48
|
+
* (`apt-get` is blocked outright on Linux but unknown on macOS, for example), so
|
|
49
|
+
* without this a test asserting one platform's rules passes on a developer's machine
|
|
50
|
+
* and fails on a runner with a different OS. Production code should omit it.
|
|
51
|
+
*/
|
|
52
|
+
constructor(projectRoot: string, additionalAllowedPaths?: string[], platformOverride?: NodeJS.Platform);
|
|
45
53
|
/**
|
|
46
54
|
* Validate a shell command for execution.
|
|
47
55
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"McpSecurityGuard.d.ts","sourceRoot":"","sources":["../../../../src/protocols/mcp/security/McpSecurityGuard.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAkBH,MAAM,WAAW,eAAe;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;CAC1B;AAED,MAAM,WAAW,uBAAuB;IACpC,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,SAAS,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,UAAU,CAAC;IACnD,gFAAgF;IAChF,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;CACvB;AAED,MAAM,WAAW,oBAAoB;IACjC,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;CACzB;AA+ID,qBAAa,gBAAgB;IACzB,OAAO,CAAC,QAAQ,CAAkB;IAClC,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,YAAY,CAAgB;
|
|
1
|
+
{"version":3,"file":"McpSecurityGuard.d.ts","sourceRoot":"","sources":["../../../../src/protocols/mcp/security/McpSecurityGuard.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAkBH,MAAM,WAAW,eAAe;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;CAC1B;AAED,MAAM,WAAW,uBAAuB;IACpC,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,SAAS,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,UAAU,CAAC;IACnD,gFAAgF;IAChF,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;CACvB;AAED,MAAM,WAAW,oBAAoB;IACjC,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;CACzB;AA+ID,qBAAa,gBAAgB;IACzB,OAAO,CAAC,QAAQ,CAAkB;IAClC,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,YAAY,CAAgB;IAEpC;;;;;;;OAOG;gBACS,WAAW,EAAE,MAAM,EAAE,sBAAsB,CAAC,EAAE,MAAM,EAAE,EAAE,gBAAgB,CAAC,EAAE,MAAM,CAAC,QAAQ;IAMtG;;;;;;;;;OASG;IACH,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,GAAG,uBAAuB;IA8DnF;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAmE7B;;;OAGG;IACH,OAAO,CAAC,QAAQ;IAUhB;;OAEG;IACH,YAAY,CAAC,aAAa,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,oBAAoB;IAiFjG;;OAEG;IACH,oBAAoB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,GAAG,OAAO;IAKxE;;OAEG;IACH,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,UAAU;IAK/F;;OAEG;IACH,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAOvC;;OAEG;IACH,OAAO,CAAC,wBAAwB;IAahC;;OAEG;IACH,OAAO,CAAC,UAAU;CAcrB;AAOD,wBAAgB,gBAAgB,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,gBAAgB,CAQvE"}
|
|
@@ -171,8 +171,16 @@ export class McpSecurityGuard {
|
|
|
171
171
|
platform;
|
|
172
172
|
projectRoot;
|
|
173
173
|
allowedPaths = [];
|
|
174
|
-
|
|
175
|
-
|
|
174
|
+
/**
|
|
175
|
+
* @param projectRoot - Root the guard confines filesystem access to
|
|
176
|
+
* @param additionalAllowedPaths - Extra paths outside the project root to permit
|
|
177
|
+
* @param platformOverride - Force the OS rule set. Command rules are OS-specific
|
|
178
|
+
* (`apt-get` is blocked outright on Linux but unknown on macOS, for example), so
|
|
179
|
+
* without this a test asserting one platform's rules passes on a developer's machine
|
|
180
|
+
* and fails on a runner with a different OS. Production code should omit it.
|
|
181
|
+
*/
|
|
182
|
+
constructor(projectRoot, additionalAllowedPaths, platformOverride) {
|
|
183
|
+
this.platform = platformOverride ?? platform();
|
|
176
184
|
this.projectRoot = path.resolve(projectRoot);
|
|
177
185
|
this.allowedPaths = [this.projectRoot, ...(additionalAllowedPaths || [])];
|
|
178
186
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"McpSecurityGuard.js","sourceRoot":"","sources":["../../../../src/protocols/mcp/security/McpSecurityGuard.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"McpSecurityGuard.js","sourceRoot":"","sources":["../../../../src/protocols/mcp/security/McpSecurityGuard.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH;;;;;GAKG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAE,QAAQ,EAAE,MAAM,IAAI,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,EAAE,wBAAwB,EAAE,YAAY,EAAE,MAAM,sCAAsC,CAAC;AAC9F,OAAO,EAAE,eAAe,EAAE,MAAM,yCAAyC,CAAC;AAC1E,OAAO,EAAE,sBAAsB,EAAE,MAAM,8CAA8C,CAAC;AAEtF,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,MAAM,EAAE,kBAAkB,EAAE,QAAQ,CAAC,CAAC;AAyBhE;;GAEG;AACH,MAAM,gBAAgB,GAAG;IACrB,MAAM,EAAE;QACJ,oCAAoC;QACpC,OAAO,EAAE;YACL,kBAAkB;YAClB,UAAU,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS;YAChD,uBAAuB;YACvB,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,WAAW;YAC7C,kBAAkB;YAClB,SAAS,EAAE,OAAO,EAAE,UAAU;YAC9B,kBAAkB;YAClB,MAAM,EAAE,aAAa,EAAE,aAAa;YACpC,UAAU;YACV,OAAO,EAAE,cAAc,EAAE,OAAO;YAChC,sBAAsB;YACtB,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI;SAClC;QACD,UAAU,EAAE;YACR,wBAAwB;YACxB,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE;YAC5C,EAAE,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,EAAE;YAC3C,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,EAAE;YAC1C,EAAE,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,EAAE;SACjD;KACJ;IACD,KAAK,EAAE;QACH,sCAAsC;QACtC,OAAO,EAAE;YACL,kBAAkB;YAClB,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ;YACnD,uBAAuB;YACvB,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,UAAU,EAAE,UAAU;YACnD,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU;YACjC,WAAW;YACX,QAAQ,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO;YACnC,kBAAkB;YAClB,UAAU,EAAE,gBAAgB,EAAE,SAAS;YACvC,sBAAsB;YACtB,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO;SACzC;QACD,UAAU,EAAE;YACR,EAAE,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,EAAE;YAC5C,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE;YACvC,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE;YACvC,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE;SAC5C;KACJ;IACD,KAAK,EAAE;QACH,oCAAoC;QACpC,OAAO,EAAE;YACL,kBAAkB;YAClB,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO;YACxC,uBAAuB;YACvB,WAAW,EAAE,SAAS,EAAE,aAAa,EAAE,WAAW;YAClD,UAAU,EAAE,QAAQ,EAAE,OAAO;YAC7B,mDAAmD;YACnD,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM;YACnD,kBAAkB;YAClB,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,UAAU;YACrD,UAAU;YACV,UAAU,EAAE,WAAW,EAAE,KAAK,EAAE,cAAc;YAC9C,sBAAsB;YACtB,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,YAAY;SAC5C;QACD,UAAU,EAAE;YACR,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE;YACzC,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE;YACtC,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,EAAE;YAC5C,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE;SACzC;KACJ;CACJ,CAAC;AAEF;;GAEG;AACH,MAAM,yBAAyB,GAAG;IAC9B,yBAAyB;IACzB,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ;IACtC,uBAAuB;IACvB,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO;IAC7B,kBAAkB;IAClB,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU;IACxC,qBAAqB;IACrB,SAAS,EAAE,SAAS,EAAE,UAAU;IAChC,yBAAyB;IACzB,YAAY,EAAE,aAAa,EAAE,aAAa;CAC7C,CAAC;AAEF;;GAEG;AACH,MAAM,aAAa,GAAG;IAClB,kBAAkB;IAClB,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM;IAC/D,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IACpD,kBAAkB;IAClB,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ;IAC3C,qBAAqB;IACrB,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ;IACvC,gCAAgC;IAChC,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IACjD,oBAAoB;IACpB,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM;IACtD,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO;IAC7B,0BAA0B;IAC1B,QAAQ,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI;IAC3D,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ;CACxC,CAAC;AAEF;;GAEG;AACH,MAAM,iBAAiB,GAAG;IACtB,sCAAsC;IACtC,YAAY,EAAE;QACV,MAAM,EAAE;YACJ,SAAS,EAAE,mBAAmB,EAAE,cAAc;YAC9C,UAAU,EAAE,WAAW,EAAE,iBAAiB;SAC7C;QACD,KAAK,EAAE;YACH,uBAAuB,EAAE,uBAAuB;YAChD,mBAAmB,EAAE,yBAAyB;YAC9C,iBAAiB,EAAE,sBAAsB;SAC5C;QACD,KAAK,EAAE;YACH,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,WAAW;YAChD,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM;SAC5C;KACJ;IACD,kCAAkC;IAClC,cAAc,EAAE;QACZ,MAAM,EAAE,CAAC,WAAW,EAAE,QAAQ,EAAE,UAAU,CAAC;QAC3C,KAAK,EAAE,CAAC,WAAW,EAAE,gBAAgB,EAAE,qBAAqB,CAAC;QAC7D,KAAK,EAAE,CAAC,QAAQ,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,CAAC;KACrD;CACJ,CAAC;AAEF,MAAM,OAAO,gBAAgB;IACjB,QAAQ,CAAkB;IAC1B,WAAW,CAAS;IACpB,YAAY,GAAa,EAAE,CAAC;IAEpC;;;;;;;OAOG;IACH,YAAY,WAAmB,EAAE,sBAAiC,EAAE,gBAAkC;QAClG,IAAI,CAAC,QAAQ,GAAG,gBAAgB,IAAI,QAAQ,EAAE,CAAC;QAC/C,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QAC7C,IAAI,CAAC,YAAY,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,CAAC,sBAAsB,IAAI,EAAE,CAAC,CAAC,CAAC;IAC9E,CAAC;IAED;;;;;;;;;OASG;IACH,eAAe,CAAC,OAAe,EAAE,OAAwB;QACrD,MAAM,iBAAiB,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAEvD,8EAA8E;QAC9E,mFAAmF;QACnF,MAAM,MAAM,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;QACrC,MAAM,iBAAiB,GAAG,wBAAwB,CAAC,OAAO,CAAC,CAAC;QAE5D,8EAA8E;QAC9E,2EAA2E;QAC3E,0EAA0E;QAC1E,IAAI,MAAM,CAAC,YAAY,EAAE,CAAC;YACtB,MAAM,mBAAmB,GAAG,sBAAsB,CAAC,OAAO,CAAC,CAAC;YAC5D,MAAM,eAAe,GAAG,mBAAmB,CAAC,MAAM,GAAG,CAAC;gBAClD,CAAC,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;gBACzC,CAAC,CAAC,SAAS,CAAC;YAChB,OAAO;gBACH,OAAO,EAAE,IAAI;gBACb,oBAAoB,EAAE,IAAI;gBAC1B,MAAM,EAAE,6FAA6F;gBACrG,SAAS,EAAE,MAAM;gBACjB,QAAQ,EAAE,eAAe;aAC5B,CAAC;QACN,CAAC;QAED,+DAA+D;QAC/D,MAAM,mBAAmB,GAAG,sBAAsB,CAAC,OAAO,CAAC,CAAC;QAC5D,MAAM,eAAe,GAAG,mBAAmB,CAAC,MAAM,GAAG,CAAC;YAClD,CAAC,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;YACzC,CAAC,CAAC,SAAS,CAAC;QAEhB,0EAA0E;QAC1E,IAAI,qBAAqB,GAA4B;YACjD,OAAO,EAAE,IAAI;YACb,SAAS,EAAE,KAAK;YAChB,QAAQ,EAAE,eAAe;SAC5B,CAAC;QAEF,gDAAgD;QAChD,KAAK,MAAM,YAAY,IAAI,iBAAiB,EAAE,CAAC;YAC3C,MAAM,MAAM,GAAG,IAAI,CAAC,qBAAqB,CAAC,YAAY,EAAE,iBAAiB,EAAE,OAAO,CAAC,CAAC;YACpF,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBAClB,kDAAkD;gBAClD,OAAO,EAAE,GAAG,MAAM,EAAE,QAAQ,EAAE,eAAe,EAAE,CAAC;YACpD,CAAC;YACD,mDAAmD;YACnD,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,qBAAqB,CAAC,SAAS,CAAC,EAAE,CAAC;gBACnF,qBAAqB,GAAG,EAAE,GAAG,MAAM,EAAE,QAAQ,EAAE,eAAe,EAAE,CAAC;YACrE,CAAC;iBAAM,IAAI,MAAM,CAAC,oBAAoB,IAAI,CAAC,qBAAqB,CAAC,oBAAoB,EAAE,CAAC;gBACpF,qBAAqB,GAAG,EAAE,GAAG,MAAM,EAAE,QAAQ,EAAE,eAAe,EAAE,CAAC;YACrE,CAAC;QACL,CAAC;QAED,uEAAuE;QACvE,MAAM,cAAc,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC;QAChD,IAAI,cAAc,CAAC,UAAU,IAAI,qBAAqB,CAAC,oBAAoB,EAAE,CAAC;YAC1E,qBAAqB,CAAC,oBAAoB,GAAG,KAAK,CAAC;QACvD,CAAC;QAED,OAAO,qBAAqB,CAAC;IACjC,CAAC;IAED;;OAEG;IACK,qBAAqB,CACzB,gBAAwB,EACxB,qBAA6B,EAC7B,QAAyB;QAEzB,MAAM,aAAa,GAAG,gBAAgB,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAC5D,MAAM,WAAW,GAAG,aAAa,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QAElD,wCAAwC;QACxC,IAAI,aAAa,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;YACtC,qCAAqC;YACrC,IAAI,IAAI,CAAC,wBAAwB,CAAC,qBAAqB,CAAC,EAAE,CAAC;gBACvD,OAAO;oBACH,OAAO,EAAE,KAAK;oBACd,MAAM,EAAE,qCAAqC;oBAC7C,SAAS,EAAE,MAAM;iBACpB,CAAC;YACN,CAAC;YACD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;QAC/C,CAAC;QAED,kCAAkC;QAClC,KAAK,MAAM,SAAS,IAAI,yBAAyB,EAAE,CAAC;YAChD,IAAI,aAAa,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;gBACpC,OAAO;oBACH,OAAO,EAAE,KAAK;oBACd,MAAM,EAAE,uCAAuC,SAAS,EAAE;oBAC1D,SAAS,EAAE,UAAU;iBACxB,CAAC;YACN,CAAC;QACL,CAAC;QAED,0BAA0B;QAC1B,MAAM,OAAO,GAAG,gBAAgB,CAAC,IAAI,CAAC,QAAyC,CAAC,IAAI,gBAAgB,CAAC,KAAK,CAAC;QAE3G,yBAAyB;QACzB,KAAK,MAAM,OAAO,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;YACpC,IAAI,aAAa,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;gBAClC,OAAO;oBACH,OAAO,EAAE,KAAK;oBACd,MAAM,EAAE,YAAY,OAAO,mBAAmB,IAAI,CAAC,QAAQ,EAAE;oBAC7D,SAAS,EAAE,UAAU;iBACxB,CAAC;YACN,CAAC;QACL,CAAC;QAED,4BAA4B;QAC5B,KAAK,MAAM,UAAU,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;YAC1C,IAAI,WAAW,KAAK,UAAU,CAAC,OAAO,EAAE,CAAC;gBACrC,OAAO;oBACH,OAAO,EAAE,IAAI;oBACb,oBAAoB,EAAE,IAAI;oBAC1B,MAAM,EAAE,YAAY,UAAU,CAAC,OAAO,yBAAyB;oBAC/D,SAAS,EAAE,UAAU,CAAC,SAAgB;iBACzC,CAAC;YACN,CAAC;QACL,CAAC;QAED,yCAAyC;QACzC,OAAO;YACH,OAAO,EAAE,IAAI;YACb,oBAAoB,EAAE,IAAI;YAC1B,MAAM,EAAE,uCAAuC;YAC/C,SAAS,EAAE,QAAQ;SACtB,CAAC;IACN,CAAC;IAED;;;OAGG;IACK,QAAQ,CAAC,KAA8C;QAC3D,QAAQ,KAAK,EAAE,CAAC;YACZ,KAAK,UAAU,CAAC,CAAC,OAAO,CAAC,CAAC;YAC1B,KAAK,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC;YACtB,KAAK,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC;YACxB,KAAK,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC;YACrB,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC;QACtB,CAAC;IACL,CAAC;IAED;;OAEG;IACH,YAAY,CAAC,aAAqB,EAAE,SAAsC;QACtE,IAAI,CAAC;YACD,mBAAmB;YACnB,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;YAEjD,oCAAoC;YACpC,IAAI,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,aAAa,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC9D,mDAAmD;gBACnD,IAAI,aAAa,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;oBAChC,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,EAAE,CAAC;oBACnE,MAAM,YAAY,GAAG,aAAa,CAAC,OAAO,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;oBAC1D,OAAO,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;gBACtD,CAAC;gBAED,OAAO;oBACH,OAAO,EAAE,KAAK;oBACd,MAAM,EAAE,yCAAyC;iBACpD,CAAC;YACN,CAAC;YAED,sBAAsB;YACtB,MAAM,YAAY,GAAG,iBAAiB,CAAC,YAAY,CAAC,IAAI,CAAC,QAAuD,CAAC,IAAI,EAAE,CAAC;YACxH,KAAK,MAAM,OAAO,IAAI,YAAY,EAAE,CAAC;gBACjC,MAAM,eAAe,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;gBACjD,IAAI,YAAY,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;oBAC3C,OAAO;wBACH,OAAO,EAAE,KAAK;wBACd,MAAM,EAAE,aAAa,OAAO,aAAa;qBAC5C,CAAC;gBACN,CAAC;YACL,CAAC;YAED,8CAA8C;YAC9C,IAAI,eAAe,GAAG,KAAK,CAAC;YAC5B,KAAK,MAAM,WAAW,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;gBAC1C,MAAM,eAAe,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;gBAClD,IAAI,YAAY,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;oBAC3C,eAAe,GAAG,IAAI,CAAC;oBACvB,MAAM;gBACV,CAAC;YACL,CAAC;YAED,0DAA0D;YAC1D,IAAI,CAAC,eAAe,EAAE,CAAC;gBACnB,MAAM,cAAc,GAAG,iBAAiB,CAAC,cAAc,CAAC,IAAI,CAAC,QAAyD,CAAC,IAAI,EAAE,CAAC;gBAC9H,KAAK,MAAM,SAAS,IAAI,cAAc,EAAE,CAAC;oBACrC,MAAM,iBAAiB,GAAG,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;oBACrD,IAAI,YAAY,CAAC,UAAU,CAAC,iBAAiB,CAAC,EAAE,CAAC;wBAC7C,OAAO;4BACH,OAAO,EAAE,SAAS,KAAK,MAAM,EAAE,iCAAiC;4BAChE,MAAM,EAAE,SAAS,KAAK,MAAM;gCACxB,CAAC,CAAC,8BAA8B,SAAS,8BAA8B;gCACvE,CAAC,CAAC,SAAS;4BACf,YAAY;yBACf,CAAC;oBACN,CAAC;gBACL,CAAC;gBAED,yEAAyE;gBACzE,IAAI,SAAS,KAAK,MAAM,EAAE,CAAC;oBACvB,OAAO;wBACH,OAAO,EAAE,KAAK;wBACd,MAAM,EAAE,+EAA+E;wBACvF,YAAY;qBACf,CAAC;gBACN,CAAC;YACL,CAAC;YAED,OAAO;gBACH,OAAO,EAAE,IAAI;gBACb,YAAY;aACf,CAAC;QAEN,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,OAAO;gBACH,OAAO,EAAE,KAAK;gBACd,MAAM,EAAE,iBAAiB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;aACpF,CAAC;QACN,CAAC;IACL,CAAC;IAED;;OAEG;IACH,oBAAoB,CAAC,OAAe,EAAE,OAAwB;QAC1D,MAAM,UAAU,GAAG,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAC1D,OAAO,UAAU,CAAC,oBAAoB,IAAI,KAAK,CAAC;IACpD,CAAC;IAED;;OAEG;IACH,YAAY,CAAC,OAAe,EAAE,OAAwB;QAClD,MAAM,UAAU,GAAG,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAC1D,OAAO,UAAU,CAAC,SAAS,IAAI,KAAK,CAAC;IACzC,CAAC;IAED;;OAEG;IACH,cAAc,CAAC,SAAiB;QAC5B,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QACzC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;YACxC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACrC,CAAC;IACL,CAAC;IAED;;OAEG;IACK,wBAAwB,CAAC,OAAe;QAC5C,MAAM,QAAQ,GAAG;YACb,kBAAkB,EAAG,uBAAuB;YAC5C,aAAa,EAAQ,8BAA8B;YACnD,cAAc,EAAO,2BAA2B;YAChD,aAAa,EAAQ,gCAAgC;YACrD,eAAe,EAAM,sBAAsB;YAC3C,iBAAiB,CAAI,sBAAsB;SAC9C,CAAC;QAEF,OAAO,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;IAC3D,CAAC;IAED;;OAEG;IACK,UAAU,CAAC,OAAe;QAC9B,WAAW;QACX,IAAI,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YAC1B,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,EAAE,CAAC;YAC/D,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QACzC,CAAC;QAED,+BAA+B;QAC/B,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE;YACnD,OAAO,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QACtC,CAAC,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACjC,CAAC;CACJ;AAED;;GAEG;AACH,IAAI,qBAAqB,GAA4B,IAAI,CAAC;AAE1D,MAAM,UAAU,gBAAgB,CAAC,WAAoB;IACjD,IAAI,CAAC,qBAAqB,IAAI,WAAW,EAAE,CAAC;QACxC,qBAAqB,GAAG,IAAI,gBAAgB,CAAC,WAAW,CAAC,CAAC;IAC9D,CAAC;IACD,IAAI,CAAC,qBAAqB,EAAE,CAAC;QACzB,MAAM,IAAI,KAAK,CAAC,6EAA6E,CAAC,CAAC;IACnG,CAAC;IACD,OAAO,qBAAqB,CAAC;AACjC,CAAC"}
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright 2024 Brad Anderson
|
|
3
|
+
*
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
* you may not use this file except in compliance with the License.
|
|
6
|
+
* You may obtain a copy of the License at
|
|
7
|
+
*
|
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
*
|
|
10
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
* See the License for the specific language governing permissions and
|
|
14
|
+
* limitations under the License.
|
|
15
|
+
*
|
|
16
|
+
* @author Brad Anderson <BradA1878@pm.me>
|
|
17
|
+
* @repository https://github.com/BradA1878/model-exchange-framework
|
|
18
|
+
* @documentation https://mxf-dev.github.io/mxf/
|
|
19
|
+
*/
|
|
20
|
+
/**
|
|
21
|
+
* Base commands agents are permitted to run via shell_execute.
|
|
22
|
+
*
|
|
23
|
+
* Read from MXF_SHELL_ALLOWED_COMMANDS. An empty list means no allowlist is
|
|
24
|
+
* configured: the McpSecurityGuard's block rules and confirmation prompts remain
|
|
25
|
+
* the control, exactly as before. This is a config-supplied allowlist, so a model
|
|
26
|
+
* cannot widen it by passing arguments.
|
|
27
|
+
*/
|
|
28
|
+
export declare function getShellAllowedCommands(): string[];
|
|
29
|
+
/**
|
|
30
|
+
* Is a command allowlist configured at all?
|
|
31
|
+
*/
|
|
32
|
+
export declare function hasShellAllowlist(): boolean;
|
|
33
|
+
/**
|
|
34
|
+
* Build the environment a shell child process receives.
|
|
35
|
+
*
|
|
36
|
+
* Least privilege: start from the small base set above, add any names the
|
|
37
|
+
* operator explicitly opted into via MXF_SHELL_ENV_PASSTHROUGH, then add the
|
|
38
|
+
* caller's own explicit variables. The server's secrets are never copied in.
|
|
39
|
+
*
|
|
40
|
+
* This mirrors what ExternalMcpServerManager already does when it spawns an
|
|
41
|
+
* external MCP server.
|
|
42
|
+
*
|
|
43
|
+
* @param explicitEnv - Variables the caller wants the child to see
|
|
44
|
+
* @returns The complete environment for the child process
|
|
45
|
+
*/
|
|
46
|
+
export declare function buildShellChildEnv(explicitEnv?: Record<string, string>): Record<string, string>;
|
|
47
|
+
/**
|
|
48
|
+
* Should shell_execute run commands inside the Docker sandbox?
|
|
49
|
+
*
|
|
50
|
+
* Off by default: the sandbox requires Docker and the mxf/shell-executor image,
|
|
51
|
+
* and turning it on changes where commands run. When it is on and Docker is
|
|
52
|
+
* missing, execution fails — it never silently falls back to the host.
|
|
53
|
+
*/
|
|
54
|
+
export declare function isShellSandboxEnabled(): boolean;
|
|
55
|
+
/**
|
|
56
|
+
* The directory tree agents are allowed to work in.
|
|
57
|
+
*
|
|
58
|
+
* Returns undefined when MXF_WORKSPACE_ROOT is not set. Callers that hand out
|
|
59
|
+
* filesystem reach must treat that as fatal — see {@link requireWorkspaceRoot}.
|
|
60
|
+
* There is deliberately no default: the previous default was the user's home
|
|
61
|
+
* directory, which put ~/.ssh, ~/.aws and ~/.mxf/config.json inside the agents'
|
|
62
|
+
* reach.
|
|
63
|
+
*/
|
|
64
|
+
export declare function getWorkspaceRoot(): string | undefined;
|
|
65
|
+
/**
|
|
66
|
+
* The workspace root, or a thrown error explaining how to set it.
|
|
67
|
+
*
|
|
68
|
+
* @throws Error when MXF_WORKSPACE_ROOT is not configured
|
|
69
|
+
*/
|
|
70
|
+
export declare function requireWorkspaceRoot(consumer: string): string;
|
|
71
|
+
/**
|
|
72
|
+
* May api_fetch reach loopback and private-network addresses?
|
|
73
|
+
*
|
|
74
|
+
* Default false. When false, api_fetch refuses localhost, RFC1918 ranges, and
|
|
75
|
+
* the cloud metadata endpoint — otherwise an agent could use the server as a
|
|
76
|
+
* proxy into the MXF API itself, Meilisearch, or a cloud instance's credentials.
|
|
77
|
+
*
|
|
78
|
+
* Turn on only for local development against services on your own machine.
|
|
79
|
+
*/
|
|
80
|
+
export declare function allowPrivateHttpHosts(): boolean;
|
|
81
|
+
//# sourceMappingURL=McpToolPolicy.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"McpToolPolicy.d.ts","sourceRoot":"","sources":["../../../../src/protocols/mcp/security/McpToolPolicy.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAkFH;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,IAAI,MAAM,EAAE,CAElD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,OAAO,CAE3C;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,kBAAkB,CAC9B,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GACrC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CA0BxB;AAED;;;;;;GAMG;AACH,wBAAgB,qBAAqB,IAAI,OAAO,CAE/C;AAED;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,GAAG,SAAS,CAMrD;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAY7D;AAED;;;;;;;;GAQG;AACH,wBAAgB,qBAAqB,IAAI,OAAO,CAE/C"}
|
|
@@ -0,0 +1,202 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright 2024 Brad Anderson
|
|
3
|
+
*
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
* you may not use this file except in compliance with the License.
|
|
6
|
+
* You may obtain a copy of the License at
|
|
7
|
+
*
|
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
*
|
|
10
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
* See the License for the specific language governing permissions and
|
|
14
|
+
* limitations under the License.
|
|
15
|
+
*
|
|
16
|
+
* @author Brad Anderson <BradA1878@pm.me>
|
|
17
|
+
* @repository https://github.com/BradA1878/model-exchange-framework
|
|
18
|
+
* @documentation https://mxf-dev.github.io/mxf/
|
|
19
|
+
*/
|
|
20
|
+
/**
|
|
21
|
+
* McpToolPolicy.ts
|
|
22
|
+
*
|
|
23
|
+
* Operator-controlled policy for the tools that reach outside the process:
|
|
24
|
+
* shell execution, the child environment those shells inherit, the workspace
|
|
25
|
+
* agents may touch, and the hosts `api_fetch` may reach.
|
|
26
|
+
*
|
|
27
|
+
* Every value here comes from configuration (environment variables), never from
|
|
28
|
+
* tool arguments. That distinction is the whole point of the module: an
|
|
29
|
+
* allowlist supplied as a tool input is supplied by the very model it is meant
|
|
30
|
+
* to restrict, so it restricts nothing.
|
|
31
|
+
*
|
|
32
|
+
* Environment variables:
|
|
33
|
+
* MXF_SHELL_ALLOWED_COMMANDS Comma-separated base commands agents may run.
|
|
34
|
+
* Empty/unset means "no command allowlist" — the
|
|
35
|
+
* McpSecurityGuard's own rules still apply.
|
|
36
|
+
* MXF_SHELL_ENV_PASSTHROUGH Comma-separated extra environment variable names
|
|
37
|
+
* to forward to shell children, on top of the
|
|
38
|
+
* always-safe base (PATH, HOME, and friends).
|
|
39
|
+
* MXF_SHELL_SANDBOX_ENABLED 'true' to run shell_execute inside the Docker
|
|
40
|
+
* sandbox (see ShellSandbox.ts). Default false.
|
|
41
|
+
* MXF_WORKSPACE_ROOT Directory agents are allowed to work in. Required
|
|
42
|
+
* by anything that grants filesystem reach; there is
|
|
43
|
+
* no default, because the old default was $HOME.
|
|
44
|
+
* MXF_HTTP_ALLOW_PRIVATE_HOSTS 'true' to let api_fetch reach loopback/private
|
|
45
|
+
* addresses. Default false. Only for local dev.
|
|
46
|
+
*/
|
|
47
|
+
import * as path from 'path';
|
|
48
|
+
/**
|
|
49
|
+
* Environment variables always forwarded to a shell child.
|
|
50
|
+
*
|
|
51
|
+
* These are what a process needs to run at all — a PATH to find binaries, a HOME
|
|
52
|
+
* for tool caches, a TMPDIR to write scratch files, and locale/terminal settings
|
|
53
|
+
* so output is not garbled. Nothing here carries a credential.
|
|
54
|
+
*
|
|
55
|
+
* Everything else in the server's environment — JWT_SECRET, MONGODB_URI,
|
|
56
|
+
* OPENROUTER_API_KEY, MEILISEARCH_MASTER_KEY, MXP_ENCRYPTION_KEY — stays behind.
|
|
57
|
+
*/
|
|
58
|
+
const BASE_SHELL_ENV_VARS = [
|
|
59
|
+
'PATH',
|
|
60
|
+
'HOME',
|
|
61
|
+
'USER',
|
|
62
|
+
'LOGNAME',
|
|
63
|
+
'SHELL',
|
|
64
|
+
'LANG',
|
|
65
|
+
'LC_ALL',
|
|
66
|
+
'TERM',
|
|
67
|
+
'TMPDIR',
|
|
68
|
+
'TZ',
|
|
69
|
+
'NODE_ENV',
|
|
70
|
+
// Windows equivalents — a child on win32 cannot resolve paths without these.
|
|
71
|
+
'SYSTEMROOT',
|
|
72
|
+
'COMSPEC',
|
|
73
|
+
'PATHEXT',
|
|
74
|
+
'USERPROFILE',
|
|
75
|
+
'TEMP',
|
|
76
|
+
'TMP'
|
|
77
|
+
];
|
|
78
|
+
/** Parse a comma-separated env var into a trimmed, non-empty list. */
|
|
79
|
+
function parseList(value) {
|
|
80
|
+
if (!value) {
|
|
81
|
+
return [];
|
|
82
|
+
}
|
|
83
|
+
return value
|
|
84
|
+
.split(',')
|
|
85
|
+
.map(entry => entry.trim())
|
|
86
|
+
.filter(entry => entry.length > 0);
|
|
87
|
+
}
|
|
88
|
+
/** Parse a boolean env var. Anything other than 'true' is false. */
|
|
89
|
+
function parseBoolean(value, fallback) {
|
|
90
|
+
if (value === undefined || value === '') {
|
|
91
|
+
return fallback;
|
|
92
|
+
}
|
|
93
|
+
return value.toLowerCase() === 'true';
|
|
94
|
+
}
|
|
95
|
+
/**
|
|
96
|
+
* Base commands agents are permitted to run via shell_execute.
|
|
97
|
+
*
|
|
98
|
+
* Read from MXF_SHELL_ALLOWED_COMMANDS. An empty list means no allowlist is
|
|
99
|
+
* configured: the McpSecurityGuard's block rules and confirmation prompts remain
|
|
100
|
+
* the control, exactly as before. This is a config-supplied allowlist, so a model
|
|
101
|
+
* cannot widen it by passing arguments.
|
|
102
|
+
*/
|
|
103
|
+
export function getShellAllowedCommands() {
|
|
104
|
+
return parseList(process.env.MXF_SHELL_ALLOWED_COMMANDS);
|
|
105
|
+
}
|
|
106
|
+
/**
|
|
107
|
+
* Is a command allowlist configured at all?
|
|
108
|
+
*/
|
|
109
|
+
export function hasShellAllowlist() {
|
|
110
|
+
return getShellAllowedCommands().length > 0;
|
|
111
|
+
}
|
|
112
|
+
/**
|
|
113
|
+
* Build the environment a shell child process receives.
|
|
114
|
+
*
|
|
115
|
+
* Least privilege: start from the small base set above, add any names the
|
|
116
|
+
* operator explicitly opted into via MXF_SHELL_ENV_PASSTHROUGH, then add the
|
|
117
|
+
* caller's own explicit variables. The server's secrets are never copied in.
|
|
118
|
+
*
|
|
119
|
+
* This mirrors what ExternalMcpServerManager already does when it spawns an
|
|
120
|
+
* external MCP server.
|
|
121
|
+
*
|
|
122
|
+
* @param explicitEnv - Variables the caller wants the child to see
|
|
123
|
+
* @returns The complete environment for the child process
|
|
124
|
+
*/
|
|
125
|
+
export function buildShellChildEnv(explicitEnv) {
|
|
126
|
+
const childEnv = {};
|
|
127
|
+
const passthroughNames = [
|
|
128
|
+
...BASE_SHELL_ENV_VARS,
|
|
129
|
+
...parseList(process.env.MXF_SHELL_ENV_PASSTHROUGH)
|
|
130
|
+
];
|
|
131
|
+
for (const name of passthroughNames) {
|
|
132
|
+
const value = process.env[name];
|
|
133
|
+
if (value !== undefined && value !== '') {
|
|
134
|
+
childEnv[name] = value;
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
// Caller-supplied variables are layered last so a tool can set, for example,
|
|
138
|
+
// CI=true or NODE_OPTIONS for the command it is about to run.
|
|
139
|
+
if (explicitEnv) {
|
|
140
|
+
for (const [name, value] of Object.entries(explicitEnv)) {
|
|
141
|
+
if (value !== undefined && value !== null) {
|
|
142
|
+
childEnv[name] = String(value);
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
return childEnv;
|
|
147
|
+
}
|
|
148
|
+
/**
|
|
149
|
+
* Should shell_execute run commands inside the Docker sandbox?
|
|
150
|
+
*
|
|
151
|
+
* Off by default: the sandbox requires Docker and the mxf/shell-executor image,
|
|
152
|
+
* and turning it on changes where commands run. When it is on and Docker is
|
|
153
|
+
* missing, execution fails — it never silently falls back to the host.
|
|
154
|
+
*/
|
|
155
|
+
export function isShellSandboxEnabled() {
|
|
156
|
+
return parseBoolean(process.env.MXF_SHELL_SANDBOX_ENABLED, false);
|
|
157
|
+
}
|
|
158
|
+
/**
|
|
159
|
+
* The directory tree agents are allowed to work in.
|
|
160
|
+
*
|
|
161
|
+
* Returns undefined when MXF_WORKSPACE_ROOT is not set. Callers that hand out
|
|
162
|
+
* filesystem reach must treat that as fatal — see {@link requireWorkspaceRoot}.
|
|
163
|
+
* There is deliberately no default: the previous default was the user's home
|
|
164
|
+
* directory, which put ~/.ssh, ~/.aws and ~/.mxf/config.json inside the agents'
|
|
165
|
+
* reach.
|
|
166
|
+
*/
|
|
167
|
+
export function getWorkspaceRoot() {
|
|
168
|
+
const configured = process.env.MXF_WORKSPACE_ROOT;
|
|
169
|
+
if (!configured || configured.trim().length === 0) {
|
|
170
|
+
return undefined;
|
|
171
|
+
}
|
|
172
|
+
return path.resolve(configured.trim());
|
|
173
|
+
}
|
|
174
|
+
/**
|
|
175
|
+
* The workspace root, or a thrown error explaining how to set it.
|
|
176
|
+
*
|
|
177
|
+
* @throws Error when MXF_WORKSPACE_ROOT is not configured
|
|
178
|
+
*/
|
|
179
|
+
export function requireWorkspaceRoot(consumer) {
|
|
180
|
+
const root = getWorkspaceRoot();
|
|
181
|
+
if (!root) {
|
|
182
|
+
throw new Error(`${consumer} needs a workspace directory but MXF_WORKSPACE_ROOT is not set. ` +
|
|
183
|
+
`Set it to the directory agents are allowed to work in ` +
|
|
184
|
+
`(for example: MXF_WORKSPACE_ROOT=/Users/you/projects/my-app). ` +
|
|
185
|
+
`It has no default — the previous default was your home directory, which ` +
|
|
186
|
+
`exposed ~/.ssh, ~/.aws and ~/.mxf/config.json to agents.`);
|
|
187
|
+
}
|
|
188
|
+
return root;
|
|
189
|
+
}
|
|
190
|
+
/**
|
|
191
|
+
* May api_fetch reach loopback and private-network addresses?
|
|
192
|
+
*
|
|
193
|
+
* Default false. When false, api_fetch refuses localhost, RFC1918 ranges, and
|
|
194
|
+
* the cloud metadata endpoint — otherwise an agent could use the server as a
|
|
195
|
+
* proxy into the MXF API itself, Meilisearch, or a cloud instance's credentials.
|
|
196
|
+
*
|
|
197
|
+
* Turn on only for local development against services on your own machine.
|
|
198
|
+
*/
|
|
199
|
+
export function allowPrivateHttpHosts() {
|
|
200
|
+
return parseBoolean(process.env.MXF_HTTP_ALLOW_PRIVATE_HOSTS, false);
|
|
201
|
+
}
|
|
202
|
+
//# sourceMappingURL=McpToolPolicy.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"McpToolPolicy.js","sourceRoot":"","sources":["../../../../src/protocols/mcp/security/McpToolPolicy.ts"],"names":[],"mappings":"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"}
|
|
@@ -144,36 +144,66 @@ export declare class ExternalMcpServerManager extends EventEmitter {
|
|
|
144
144
|
*/
|
|
145
145
|
private setupProcessEventHandlers;
|
|
146
146
|
/**
|
|
147
|
-
*
|
|
147
|
+
* Route a chunk of a server's stdout to whoever is waiting for it.
|
|
148
|
+
*
|
|
149
|
+
* MCP over stdio is line-delimited JSON. Chunks do not respect line boundaries,
|
|
150
|
+
* so a partial line is carried over to the next chunk.
|
|
148
151
|
*/
|
|
149
|
-
private
|
|
152
|
+
private handleServerOutput;
|
|
150
153
|
/**
|
|
151
|
-
*
|
|
154
|
+
* Send a JSON-RPC request and wait for its reply.
|
|
155
|
+
*
|
|
156
|
+
* The reply is matched by id in handleServerOutput(). On timeout the pending
|
|
157
|
+
* entry is removed, so nothing accumulates.
|
|
152
158
|
*/
|
|
153
|
-
private
|
|
159
|
+
private sendRequest;
|
|
154
160
|
/**
|
|
155
|
-
*
|
|
161
|
+
* Send a JSON-RPC notification. Notifications have no id and get no reply.
|
|
162
|
+
*/
|
|
163
|
+
private sendNotification;
|
|
164
|
+
/**
|
|
165
|
+
* Fail every in-flight request for a server. Called when the process dies, so
|
|
166
|
+
* callers get an error instead of hanging until their individual timeouts.
|
|
167
|
+
*/
|
|
168
|
+
private rejectPendingRequests;
|
|
169
|
+
/**
|
|
170
|
+
* Start health check monitoring for a server
|
|
171
|
+
*/
|
|
172
|
+
private startHealthChecking;
|
|
173
|
+
/**
|
|
174
|
+
* Check that a server is actually answering.
|
|
175
|
+
*
|
|
176
|
+
* This used to be `process && !process.killed` — which only says the OS has not
|
|
177
|
+
* reaped the process. A server that had wedged, deadlocked, or stopped reading
|
|
178
|
+
* stdin stayed "healthy" forever.
|
|
156
179
|
*
|
|
157
|
-
*
|
|
158
|
-
*
|
|
159
|
-
*
|
|
160
|
-
*
|
|
180
|
+
* A real probe means a round trip through the JSON-RPC layer. `tools/list` is
|
|
181
|
+
* the probe: every server we can talk to implements it (we call it at
|
|
182
|
+
* discovery), it takes no arguments, and a reply proves the server is reading
|
|
183
|
+
* stdin, parsing JSON-RPC, and writing stdout.
|
|
161
184
|
*/
|
|
162
|
-
private
|
|
185
|
+
private performHealthCheck;
|
|
163
186
|
/**
|
|
164
187
|
* Discover tools available from a server
|
|
165
188
|
*/
|
|
166
189
|
private discoverServerTools;
|
|
167
190
|
/**
|
|
168
|
-
*
|
|
191
|
+
* Perform the MCP handshake, then discover the server's tools.
|
|
192
|
+
*
|
|
193
|
+
* The handshake is two messages, not one:
|
|
194
|
+
* 1. `initialize` — request/response, negotiates protocol version.
|
|
195
|
+
* 2. `notifications/initialized` — a notification telling the server the
|
|
196
|
+
* client is ready.
|
|
197
|
+
*
|
|
198
|
+
* The second was never sent. It is required by the MCP spec, and a strict
|
|
199
|
+
* server is entitled to reject `tools/list` from a client that never sent it.
|
|
200
|
+
*
|
|
201
|
+
* The server is only marked 'running' once this completes. Spawning a process
|
|
202
|
+
* says nothing about whether it speaks MCP.
|
|
169
203
|
*/
|
|
170
204
|
private initializeMcpConnection;
|
|
171
205
|
/**
|
|
172
|
-
*
|
|
173
|
-
*/
|
|
174
|
-
private waitForMcpResponse;
|
|
175
|
-
/**
|
|
176
|
-
* Discover tools from external MCP server using JSON-RPC tools/list method
|
|
206
|
+
* Ask a server what tools it has.
|
|
177
207
|
*/
|
|
178
208
|
private discoverRealToolsFromServer;
|
|
179
209
|
/**
|
|
@@ -223,9 +253,12 @@ export declare class ExternalMcpServerManager extends EventEmitter {
|
|
|
223
253
|
/**
|
|
224
254
|
* Execute a tool on an external MCP server via JSON-RPC with auto-correction support
|
|
225
255
|
*/
|
|
226
|
-
executeToolOnServer(serverId: string, toolName: string, input: any, agentId
|
|
256
|
+
executeToolOnServer(serverId: string, toolName: string, input: any, agentId: string, channelId: string): Promise<any>;
|
|
227
257
|
/**
|
|
228
|
-
*
|
|
258
|
+
* Execute a tool once, without the retry/auto-correction wrapper.
|
|
259
|
+
*
|
|
260
|
+
* The reply is matched by request id through the server's single stdout
|
|
261
|
+
* listener — see sendRequest() and handleServerOutput().
|
|
229
262
|
*/
|
|
230
263
|
private executeToolOnServerInternal;
|
|
231
264
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ExternalMcpServerManager.d.ts","sourceRoot":"","sources":["../../../../src/protocols/mcp/services/ExternalMcpServerManager.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAWH,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAWtC,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,kCAAkC,CAAC;AAEtE,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAQ3D;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACjC,uCAAuC;IACvC,EAAE,EAAE,MAAM,CAAC;IACX,kCAAkC;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,4BAA4B;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,+CAA+C;IAC/C,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,sDAAsD;IACtD,OAAO,EAAE,MAAM,CAAC;IAChB,gCAAgC;IAChC,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,wCAAwC;IACxC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,4CAA4C;IAC5C,oBAAoB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9C,yDAAyD;IACzD,SAAS,EAAE,OAAO,CAAC;IACnB,2DAA2D;IAC3D,cAAc,EAAE,OAAO,CAAC;IACxB,4CAA4C;IAC5C,mBAAmB,EAAE,MAAM,CAAC;IAC5B,yCAAyC;IACzC,kBAAkB,EAAE,MAAM,CAAC;IAC3B,iDAAiD;IACjD,cAAc,EAAE,MAAM,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,SAAS,GAAG,UAAU,GAAG,SAAS,GAAG,OAAO,GAAG,YAAY,CAAC;IACpE,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,KAAK,EAAE,KAAK,CAAC;QACT,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,EAAE,MAAM,CAAC;QACpB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;KACpC,CAAC,CAAC;CACN;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACjC,QAAQ,EAAE,MAAM,CAAC;CACpB;
|
|
1
|
+
{"version":3,"file":"ExternalMcpServerManager.d.ts","sourceRoot":"","sources":["../../../../src/protocols/mcp/services/ExternalMcpServerManager.ts"],"names":[],"mappings":"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"}
|