@1mcp/agent 0.31.0-beta1 → 0.31.0-beta3
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/commands/cliSetup/setupFiles.d.ts.map +1 -1
- package/build/commands/cliSetup/setupFiles.js +8 -1
- package/build/commands/cliSetup/setupFiles.js.map +1 -1
- package/build/commands/mcp/add.d.ts.map +1 -1
- package/build/commands/mcp/add.js +21 -2
- package/build/commands/mcp/add.js.map +1 -1
- package/build/commands/mcp/index.d.ts.map +1 -1
- package/build/commands/mcp/index.js +5 -4
- package/build/commands/mcp/index.js.map +1 -1
- package/build/commands/mcp/list.d.ts.map +1 -1
- package/build/commands/mcp/list.js +52 -8
- package/build/commands/mcp/list.js.map +1 -1
- package/build/commands/mcp/status.d.ts.map +1 -1
- package/build/commands/mcp/status.js +59 -26
- package/build/commands/mcp/status.js.map +1 -1
- package/build/commands/serve/index.d.ts +0 -22
- package/build/commands/serve/index.d.ts.map +1 -1
- package/build/commands/serve/index.js +0 -23
- package/build/commands/serve/index.js.map +1 -1
- package/build/commands/serve/serve.d.ts +23 -23
- package/build/commands/serve/serve.d.ts.map +1 -1
- package/build/commands/serve/serve.js +67 -51
- package/build/commands/serve/serve.js.map +1 -1
- package/build/commands/shared/baseConfigUtils.d.ts +15 -1
- package/build/commands/shared/baseConfigUtils.d.ts.map +1 -1
- package/build/commands/shared/baseConfigUtils.js +146 -41
- package/build/commands/shared/baseConfigUtils.js.map +1 -1
- package/build/config/configLoader.d.ts +28 -2
- package/build/config/configLoader.d.ts.map +1 -1
- package/build/config/configLoader.js +155 -28
- package/build/config/configLoader.js.map +1 -1
- package/build/config/configManager.d.ts +2 -1
- package/build/config/configManager.d.ts.map +1 -1
- package/build/config/configManager.js +20 -4
- package/build/config/configManager.js.map +1 -1
- package/build/config/mcpConfigManager.d.ts +18 -5
- package/build/config/mcpConfigManager.d.ts.map +1 -1
- package/build/config/mcpConfigManager.js +51 -44
- package/build/config/mcpConfigManager.js.map +1 -1
- package/build/config/mcpConfigMerge.d.ts +15 -0
- package/build/config/mcpConfigMerge.d.ts.map +1 -0
- package/build/config/mcpConfigMerge.js +87 -0
- package/build/config/mcpConfigMerge.js.map +1 -0
- package/build/constants/mcp.d.ts +2 -1
- package/build/constants/mcp.d.ts.map +1 -1
- package/build/constants/mcp.js +2 -1
- package/build/constants/mcp.js.map +1 -1
- package/build/constants/paths.d.ts +5 -0
- package/build/constants/paths.d.ts.map +1 -1
- package/build/constants/paths.js +9 -1
- package/build/constants/paths.js.map +1 -1
- package/build/core/tools/handlers/serverManagementHandler.d.ts +5 -0
- package/build/core/tools/handlers/serverManagementHandler.d.ts.map +1 -1
- package/build/core/tools/internal/adapters/helpers/configTransformers.d.ts +1 -0
- package/build/core/tools/internal/adapters/helpers/configTransformers.d.ts.map +1 -1
- package/build/core/types/transport.d.ts +146 -0
- package/build/core/types/transport.d.ts.map +1 -1
- package/build/core/types/transport.js +75 -0
- package/build/core/types/transport.js.map +1 -1
- package/build/index.d.ts +2 -0
- package/build/index.d.ts.map +1 -1
- package/build/index.js +4 -3
- package/build/index.js.map +1 -1
- package/build/utils/cli/normalizedArgv.d.ts +3 -0
- package/build/utils/cli/normalizedArgv.d.ts.map +1 -0
- package/build/utils/cli/normalizedArgv.js +9 -0
- package/build/utils/cli/normalizedArgv.js.map +1 -0
- package/build/utils/validation/urlDetection.d.ts.map +1 -1
- package/build/utils/validation/urlDetection.js +2 -1
- package/build/utils/validation/urlDetection.js.map +1 -1
- package/package.json +5 -4
|
@@ -3,17 +3,32 @@ import path from 'path';
|
|
|
3
3
|
import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
|
|
4
4
|
import ConfigContext from '../../config/configContext.js';
|
|
5
5
|
import { ConfigManager } from '../../config/configManager.js';
|
|
6
|
-
import { getDefaultInstructionsTemplatePath } from '../../constants.js';
|
|
7
|
-
import { getConfigDir } from '../../constants.js';
|
|
6
|
+
import { getConfigDir, getDefaultInstructionsTemplatePath, HOST, PORT } from '../../constants.js';
|
|
8
7
|
import { FlagManager } from '../../core/flags/flagManager.js';
|
|
9
8
|
import { formatValidationError, validateTemplateContent } from '../../core/instructions/templateValidator.js';
|
|
10
9
|
import { AgentConfigManager } from '../../core/server/agentConfig.js';
|
|
11
10
|
import { cleanupPidFileOnExit, registerPidFileCleanup, writePidFile } from '../../core/server/pidFileManager.js';
|
|
12
11
|
import { TagQueryParser } from '../../domains/preset/parsers/tagQueryParser.js';
|
|
12
|
+
import { configureGlobalLogger } from '../../logger/configureGlobalLogger.js';
|
|
13
13
|
import logger, { debugIf } from '../../logger/logger.js';
|
|
14
14
|
import { setupServer } from '../../server.js';
|
|
15
15
|
import { ExpressServer } from '../../transport/http/server.js';
|
|
16
16
|
import { displayLogo } from '../../utils/ui/logo.js';
|
|
17
|
+
function parseCommaSeparatedList(value) {
|
|
18
|
+
return value ? value.split(',').map((entry) => entry.trim()) : [];
|
|
19
|
+
}
|
|
20
|
+
function parseInternalToolsList(value) {
|
|
21
|
+
if (!value) {
|
|
22
|
+
return [];
|
|
23
|
+
}
|
|
24
|
+
try {
|
|
25
|
+
return FlagManager.getInstance().parseToolsList(value);
|
|
26
|
+
}
|
|
27
|
+
catch (error) {
|
|
28
|
+
logger.error(`Failed to parse internal-tools list: ${error instanceof Error ? error.message : String(error)}`);
|
|
29
|
+
process.exit(1);
|
|
30
|
+
}
|
|
31
|
+
}
|
|
17
32
|
/**
|
|
18
33
|
* Load custom instructions template from file with validation
|
|
19
34
|
* @param templatePath Path to template file (CLI option or default)
|
|
@@ -181,29 +196,40 @@ export async function serveCommand(parsedArgv) {
|
|
|
181
196
|
// Initialize MCP config manager using resolved config path
|
|
182
197
|
const configFilePath = configContext.getResolvedConfigPath();
|
|
183
198
|
const mcpConfigManager = ConfigManager.getInstance(configFilePath);
|
|
199
|
+
// Load app-level config from config.toml (CLI args take precedence)
|
|
200
|
+
const appConfig = mcpConfigManager.getAppConfig();
|
|
184
201
|
// Get server count for logo display
|
|
185
202
|
const transportConfig = mcpConfigManager.getTransportConfig();
|
|
186
203
|
const serverCount = Object.keys(transportConfig).length;
|
|
187
204
|
// Handle backward compatibility for auth flag
|
|
188
|
-
const authEnabled = parsedArgv['enable-auth'] ?? parsedArgv['auth'] ?? false;
|
|
205
|
+
const authEnabled = parsedArgv['enable-auth'] ?? parsedArgv['auth'] ?? appConfig.auth?.enabled ?? false;
|
|
189
206
|
// Display logo with runtime information (skip for stdio or when logging to file)
|
|
190
|
-
|
|
207
|
+
const effectiveTransport = parsedArgv.transport ?? appConfig.transport ?? 'http';
|
|
208
|
+
const effectivePort = parsedArgv.port ?? appConfig.port ?? PORT;
|
|
209
|
+
const effectiveHost = parsedArgv.host ?? appConfig.host ?? HOST;
|
|
210
|
+
configureGlobalLogger({
|
|
211
|
+
...parsedArgv,
|
|
212
|
+
'log-level': parsedArgv['log-level'] ?? appConfig.logLevel,
|
|
213
|
+
'log-file': parsedArgv['log-file'] ?? appConfig.logFile,
|
|
214
|
+
}, effectiveTransport);
|
|
215
|
+
const effectiveLogFile = parsedArgv['log-file'] ?? appConfig.logFile;
|
|
216
|
+
if (effectiveTransport !== 'stdio' && !effectiveLogFile) {
|
|
191
217
|
displayLogo({
|
|
192
|
-
transport:
|
|
193
|
-
port:
|
|
194
|
-
host:
|
|
218
|
+
transport: effectiveTransport,
|
|
219
|
+
port: effectivePort,
|
|
220
|
+
host: effectiveHost,
|
|
195
221
|
serverCount,
|
|
196
222
|
authEnabled,
|
|
197
|
-
logLevel: parsedArgv['log-level'],
|
|
223
|
+
logLevel: parsedArgv['log-level'] ?? appConfig.logLevel,
|
|
198
224
|
configDir: getConfigDir(parsedArgv['config-dir']),
|
|
199
225
|
});
|
|
200
226
|
}
|
|
201
|
-
// Configure server settings from CLI arguments
|
|
227
|
+
// Configure server settings from CLI arguments (CLI args take precedence over appConfig)
|
|
202
228
|
const serverConfigManager = AgentConfigManager.getInstance();
|
|
203
|
-
const scopeValidationEnabled = parsedArgv['enable-scope-validation'] ??
|
|
204
|
-
const enhancedSecurityEnabled = parsedArgv['enable-enhanced-security'] ?? false;
|
|
229
|
+
const scopeValidationEnabled = parsedArgv['enable-scope-validation'] ?? appConfig.auth?.enableScopeValidation ?? true;
|
|
230
|
+
const enhancedSecurityEnabled = parsedArgv['enable-enhanced-security'] ?? appConfig.auth?.enableEnhancedSecurity ?? false;
|
|
205
231
|
// Handle trust proxy configuration (convert 'true'/'false' strings to boolean)
|
|
206
|
-
const trustProxyValue = parsedArgv['trust-proxy'];
|
|
232
|
+
const trustProxyValue = parsedArgv['trust-proxy'] ?? appConfig.auth?.trustProxy ?? 'loopback';
|
|
207
233
|
const trustProxy = trustProxyValue === 'true' ? true : trustProxyValue === 'false' ? false : trustProxyValue;
|
|
208
234
|
// Derive session storage path: explicit option > config-dir/sessions > global default
|
|
209
235
|
let sessionStoragePath = parsedArgv['session-storage-path'];
|
|
@@ -212,74 +238,64 @@ export async function serveCommand(parsedArgv) {
|
|
|
212
238
|
// store sessions within the config directory to maintain isolation
|
|
213
239
|
sessionStoragePath = path.join(parsedArgv['config-dir'], 'sessions');
|
|
214
240
|
}
|
|
241
|
+
const internalToolsList = parseInternalToolsList(parsedArgv['internal-tools']);
|
|
242
|
+
const directExpose = parseCommaSeparatedList(parsedArgv['lazy-direct-expose']);
|
|
243
|
+
const preloadPatterns = parseCommaSeparatedList(parsedArgv['lazy-preload']);
|
|
244
|
+
const preloadKeywords = parseCommaSeparatedList(parsedArgv['lazy-preload-keywords']);
|
|
245
|
+
const sessionTtlMinutes = parsedArgv['session-ttl'] ?? appConfig.auth?.sessionTtl ?? 1440;
|
|
215
246
|
serverConfigManager.updateConfig({
|
|
216
|
-
host:
|
|
217
|
-
port:
|
|
247
|
+
host: effectiveHost,
|
|
248
|
+
port: effectivePort,
|
|
218
249
|
externalUrl: parsedArgv['external-url'],
|
|
219
250
|
trustProxy,
|
|
220
251
|
auth: {
|
|
221
252
|
enabled: authEnabled,
|
|
222
|
-
sessionTtlMinutes
|
|
253
|
+
sessionTtlMinutes,
|
|
223
254
|
sessionStoragePath,
|
|
224
255
|
oauthCodeTtlMs: 60 * 1000, // 1 minute
|
|
225
|
-
oauthTokenTtlMs:
|
|
256
|
+
oauthTokenTtlMs: sessionTtlMinutes * 60 * 1000,
|
|
226
257
|
},
|
|
227
258
|
rateLimit: {
|
|
228
|
-
windowMs: parsedArgv['rate-limit-window'] * 60 * 1000,
|
|
229
|
-
max: parsedArgv['rate-limit-max'],
|
|
259
|
+
windowMs: (parsedArgv['rate-limit-window'] ?? appConfig.auth?.rateLimitWindow ?? 15) * 60 * 1000,
|
|
260
|
+
max: parsedArgv['rate-limit-max'] ?? appConfig.auth?.rateLimitMax ?? 100,
|
|
230
261
|
},
|
|
231
262
|
features: {
|
|
232
263
|
auth: authEnabled,
|
|
233
264
|
scopeValidation: scopeValidationEnabled,
|
|
234
265
|
enhancedSecurity: enhancedSecurityEnabled,
|
|
235
|
-
configReload: parsedArgv['enable-config-reload'],
|
|
266
|
+
configReload: parsedArgv['enable-config-reload'] ?? appConfig.configReload?.enabled ?? true,
|
|
236
267
|
envSubstitution: parsedArgv['enable-env-substitution'],
|
|
237
268
|
sessionPersistence: parsedArgv['enable-session-persistence'],
|
|
238
269
|
clientNotifications: parsedArgv['enable-client-notifications'],
|
|
239
270
|
jsonRpcErrorLogging: parsedArgv['enable-jsonrpc-error-logging'],
|
|
240
271
|
// Internal tool configuration from CLI flags
|
|
241
272
|
internalTools: parsedArgv['enable-internal-tools'],
|
|
242
|
-
internalToolsList
|
|
243
|
-
? (() => {
|
|
244
|
-
try {
|
|
245
|
-
const flagManager = FlagManager.getInstance();
|
|
246
|
-
return flagManager.parseToolsList(parsedArgv['internal-tools']);
|
|
247
|
-
}
|
|
248
|
-
catch (error) {
|
|
249
|
-
logger.error(`Failed to parse internal-tools list: ${error instanceof Error ? error.message : String(error)}`);
|
|
250
|
-
process.exit(1);
|
|
251
|
-
}
|
|
252
|
-
})()
|
|
253
|
-
: [],
|
|
273
|
+
internalToolsList,
|
|
254
274
|
},
|
|
255
275
|
health: {
|
|
256
276
|
detailLevel: parsedArgv['health-info-level'],
|
|
257
277
|
},
|
|
258
278
|
asyncLoading: {
|
|
259
|
-
enabled: parsedArgv['enable-async-loading'],
|
|
279
|
+
enabled: parsedArgv['enable-async-loading'] ?? appConfig.asyncLoading?.enabled ?? false,
|
|
260
280
|
notifyOnServerReady: parsedArgv['async-notify-on-ready'],
|
|
261
|
-
waitForMinimumServers: parsedArgv['async-min-servers'],
|
|
262
|
-
initialLoadTimeoutMs: parsedArgv['async-timeout'],
|
|
263
|
-
batchNotifications: parsedArgv['async-batch-notifications'],
|
|
264
|
-
batchDelayMs: parsedArgv['async-batch-delay'],
|
|
281
|
+
waitForMinimumServers: parsedArgv['async-min-servers'] ?? appConfig.asyncLoading?.minServers ?? 1,
|
|
282
|
+
initialLoadTimeoutMs: parsedArgv['async-timeout'] ?? appConfig.asyncLoading?.timeout ?? 30000,
|
|
283
|
+
batchNotifications: parsedArgv['async-batch-notifications'] ?? appConfig.asyncLoading?.batchNotifications ?? true,
|
|
284
|
+
batchDelayMs: parsedArgv['async-batch-delay'] ?? appConfig.asyncLoading?.batchDelay ?? 100,
|
|
265
285
|
},
|
|
266
286
|
lazyLoading: {
|
|
267
|
-
enabled: parsedArgv['enable-lazy-loading'],
|
|
268
|
-
inlineCatalog: parsedArgv['lazy-inline-catalog'],
|
|
287
|
+
enabled: parsedArgv['enable-lazy-loading'] ?? appConfig.lazyLoading?.enabled ?? false,
|
|
288
|
+
inlineCatalog: parsedArgv['lazy-inline-catalog'] ?? appConfig.lazyLoading?.inlineCatalog ?? false,
|
|
269
289
|
catalogFormat: (parsedArgv['lazy-catalog-format'] || 'grouped'),
|
|
270
|
-
directExpose
|
|
271
|
-
? parsedArgv['lazy-direct-expose'].split(',').map((s) => s.trim())
|
|
272
|
-
: [],
|
|
290
|
+
directExpose,
|
|
273
291
|
cache: {
|
|
274
|
-
maxEntries: parsedArgv['lazy-cache-max-entries'],
|
|
292
|
+
maxEntries: parsedArgv['lazy-cache-max-entries'] ?? appConfig.lazyLoading?.cacheMaxEntries ?? 1000,
|
|
275
293
|
strategy: 'lru',
|
|
276
294
|
ttlMs: parsedArgv['lazy-cache-ttl'],
|
|
277
295
|
},
|
|
278
296
|
preload: {
|
|
279
|
-
patterns:
|
|
280
|
-
keywords:
|
|
281
|
-
? parsedArgv['lazy-preload-keywords'].split(',').map((s) => s.trim())
|
|
282
|
-
: [],
|
|
297
|
+
patterns: preloadPatterns,
|
|
298
|
+
keywords: preloadKeywords,
|
|
283
299
|
},
|
|
284
300
|
fallback: {
|
|
285
301
|
onError: (parsedArgv['lazy-fallback-on-error'] || 'skip'),
|
|
@@ -287,7 +303,7 @@ export async function serveCommand(parsedArgv) {
|
|
|
287
303
|
},
|
|
288
304
|
},
|
|
289
305
|
configReload: {
|
|
290
|
-
debounceMs: parsedArgv['config-reload-debounce'],
|
|
306
|
+
debounceMs: parsedArgv['config-reload-debounce'] ?? appConfig.configReload?.debounce ?? 500,
|
|
291
307
|
},
|
|
292
308
|
sessionPersistence: {
|
|
293
309
|
persistRequests: parsedArgv['session-persist-requests'],
|
|
@@ -304,7 +320,7 @@ export async function serveCommand(parsedArgv) {
|
|
|
304
320
|
// Load custom instructions template if provided (applies to all transport types)
|
|
305
321
|
const customTemplate = loadInstructionsTemplate(parsedArgv['instructions-template'], parsedArgv['config-dir']);
|
|
306
322
|
let expressServer;
|
|
307
|
-
switch (
|
|
323
|
+
switch (effectiveTransport) {
|
|
308
324
|
case 'stdio': {
|
|
309
325
|
// DEPRECATION WARNING
|
|
310
326
|
logger.warn('⚠️ DEPRECATION WARNING: `serve --transport stdio` is deprecated');
|
|
@@ -434,8 +450,8 @@ export async function serveCommand(parsedArgv) {
|
|
|
434
450
|
writePidFile(configDir, {
|
|
435
451
|
pid: process.pid,
|
|
436
452
|
url: `${serverUrl}/mcp`,
|
|
437
|
-
port:
|
|
438
|
-
host:
|
|
453
|
+
port: effectivePort,
|
|
454
|
+
host: effectiveHost,
|
|
439
455
|
transport: 'http',
|
|
440
456
|
startedAt: new Date().toISOString(),
|
|
441
457
|
configDir,
|
|
@@ -445,7 +461,7 @@ export async function serveCommand(parsedArgv) {
|
|
|
445
461
|
break;
|
|
446
462
|
}
|
|
447
463
|
default:
|
|
448
|
-
logger.error(`Invalid transport: ${
|
|
464
|
+
logger.error(`Invalid transport: ${effectiveTransport}`);
|
|
449
465
|
process.exit(1);
|
|
450
466
|
}
|
|
451
467
|
// Set up graceful shutdown handling
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"serve.js","sourceRoot":"","sources":["../../../src/commands/serve/serve.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"serve.js","sourceRoot":"","sources":["../../../src/commands/serve/serve.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { MCPServerParams } from '../../core/types/index.js';
|
|
1
|
+
import { GlobalTransportConfig, MCPServerParams } from '../../core/types/index.js';
|
|
2
2
|
/**
|
|
3
3
|
* Configuration file utilities for server management commands
|
|
4
4
|
*/
|
|
@@ -8,6 +8,7 @@ import { MCPServerParams } from '../../core/types/index.js';
|
|
|
8
8
|
*/
|
|
9
9
|
export declare function initializeConfigContext(configPath?: string, configDir?: string): void;
|
|
10
10
|
export interface ServerConfig {
|
|
11
|
+
serverDefaults?: GlobalTransportConfig;
|
|
11
12
|
mcpServers: Record<string, MCPServerParams>;
|
|
12
13
|
}
|
|
13
14
|
/**
|
|
@@ -28,6 +29,14 @@ export declare function serverExists(serverName: string): boolean;
|
|
|
28
29
|
* Get a specific server configuration
|
|
29
30
|
*/
|
|
30
31
|
export declare function getServer(serverName: string): MCPServerParams | null;
|
|
32
|
+
/**
|
|
33
|
+
* Get global MCP configuration from file.
|
|
34
|
+
*/
|
|
35
|
+
export declare function getGlobalConfig(): GlobalTransportConfig;
|
|
36
|
+
/**
|
|
37
|
+
* Get effective merged configuration for a specific server.
|
|
38
|
+
*/
|
|
39
|
+
export declare function getEffectiveServerConfig(serverName: string): MCPServerParams | null;
|
|
31
40
|
/**
|
|
32
41
|
* Add or update a server in the configuration
|
|
33
42
|
*/
|
|
@@ -40,6 +49,10 @@ export declare function removeServer(serverName: string): boolean;
|
|
|
40
49
|
* Get all servers in the configuration
|
|
41
50
|
*/
|
|
42
51
|
export declare function getAllServers(): Record<string, MCPServerParams>;
|
|
52
|
+
/**
|
|
53
|
+
* Get all effective server configurations after applying global inheritance.
|
|
54
|
+
*/
|
|
55
|
+
export declare function getAllEffectiveServers(): Record<string, MCPServerParams>;
|
|
43
56
|
/**
|
|
44
57
|
* Parse environment variables from key=value format
|
|
45
58
|
*/
|
|
@@ -68,4 +81,5 @@ export declare function validateServerConfig(serverConfig: MCPServerParams): voi
|
|
|
68
81
|
* Reload MCP config manager after configuration changes
|
|
69
82
|
*/
|
|
70
83
|
export declare function reloadMcpConfig(): void;
|
|
84
|
+
export declare function getInheritedKeys(rawConfig: MCPServerParams, effectiveConfig: MCPServerParams, globalConfig: GlobalTransportConfig): string[];
|
|
71
85
|
//# sourceMappingURL=baseConfigUtils.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"baseConfigUtils.d.ts","sourceRoot":"","sources":["../../../src/commands/shared/baseConfigUtils.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"baseConfigUtils.d.ts","sourceRoot":"","sources":["../../../src/commands/shared/baseConfigUtils.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,qBAAqB,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAIlF;;GAEG;AAEH;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,UAAU,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAgBrF;AAwBD,MAAM,WAAW,YAAY;IAC3B,cAAc,CAAC,EAAE,qBAAqB,CAAC;IACvC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;CAC7C;AA0CD;;;GAGG;AACH,wBAAgB,UAAU,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,YAAY,CAE5D;AASD;;;GAGG;AACH,wBAAgB,UAAU,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI,CAmBrD;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAOxD;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,UAAU,EAAE,MAAM,GAAG,eAAe,GAAG,IAAI,CAWpE;AAED;;GAEG;AACH,wBAAgB,eAAe,IAAI,qBAAqB,CAWvD;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,UAAU,EAAE,MAAM,GAAG,eAAe,GAAG,IAAI,CAkBnF;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,eAAe,GAAG,IAAI,CAiBjF;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAexD;AAED;;GAEG;AACH,wBAAgB,aAAa,IAAI,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAW/D;AAED;;GAEG;AACH,wBAAgB,sBAAsB,IAAI,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAUxE;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAwBxE;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,YAAY,CAAC,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAwB5E;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CASvD;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,CAuB9D;AAED;;GAEG;AACH,wBAAgB,YAAY,IAAI,MAAM,CAcrC;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,YAAY,EAAE,eAAe,GAAG,IAAI,CAmDxE;AAED;;GAEG;AACH,wBAAgB,eAAe,IAAI,IAAI,CAYtC;AAED,wBAAgB,gBAAgB,CAC9B,SAAS,EAAE,eAAe,EAC1B,eAAe,EAAE,eAAe,EAChC,YAAY,EAAE,qBAAqB,GAClC,MAAM,EAAE,CAsDV"}
|
|
@@ -1,8 +1,11 @@
|
|
|
1
1
|
import fs from 'fs';
|
|
2
2
|
import path from 'path';
|
|
3
3
|
import ConfigContext from '../../config/configContext.js';
|
|
4
|
+
import { ConfigLoader } from '../../config/configLoader.js';
|
|
4
5
|
import { McpConfigManager } from '../../config/mcpConfigManager.js';
|
|
6
|
+
import { mergeGlobalAndServerConfig, mergeGlobalWithServers } from '../../config/mcpConfigMerge.js';
|
|
5
7
|
import logger from '../../logger/logger.js';
|
|
8
|
+
import { normalizedArgv } from '../../utils/cli/normalizedArgv.js';
|
|
6
9
|
/**
|
|
7
10
|
* Configuration file utilities for server management commands
|
|
8
11
|
*/
|
|
@@ -31,8 +34,8 @@ export function initializeConfigContext(configPath, configDir) {
|
|
|
31
34
|
}
|
|
32
35
|
}
|
|
33
36
|
function getExplicitCliOptionValue(flags) {
|
|
34
|
-
for (let index = 0; index <
|
|
35
|
-
const arg =
|
|
37
|
+
for (let index = 0; index < normalizedArgv.length; index += 1) {
|
|
38
|
+
const arg = normalizedArgv[index];
|
|
36
39
|
if (!flags.includes(arg)) {
|
|
37
40
|
const matchingFlag = flags.find((flag) => arg.startsWith(`${flag}=`));
|
|
38
41
|
if (!matchingFlag) {
|
|
@@ -41,57 +44,56 @@ function getExplicitCliOptionValue(flags) {
|
|
|
41
44
|
const [, value] = arg.split(/=(.*)/su);
|
|
42
45
|
return value || undefined;
|
|
43
46
|
}
|
|
44
|
-
const value =
|
|
47
|
+
const value = normalizedArgv[index + 1];
|
|
45
48
|
if (value && !value.startsWith('-')) {
|
|
46
49
|
return value;
|
|
47
50
|
}
|
|
48
51
|
}
|
|
49
52
|
return undefined;
|
|
50
53
|
}
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
export function loadConfig(configPath) {
|
|
54
|
+
function createCommandConfigLoader(configPath) {
|
|
55
|
+
return new ConfigLoader(configPath, { ensureConfigExists: false });
|
|
56
|
+
}
|
|
57
|
+
function loadSharedConfigState(configPath) {
|
|
56
58
|
const configContext = ConfigContext.getInstance();
|
|
57
59
|
const filePath = configPath || configContext.getResolvedConfigPath();
|
|
60
|
+
if (!fs.existsSync(filePath)) {
|
|
61
|
+
throw new Error(`Configuration file not found: ${filePath}`);
|
|
62
|
+
}
|
|
58
63
|
try {
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
// Ensure mcpServers exists and is properly typed
|
|
69
|
-
if (!configObj.mcpServers || typeof configObj.mcpServers !== 'object') {
|
|
70
|
-
configObj.mcpServers = {};
|
|
64
|
+
const loader = createCommandConfigLoader(filePath);
|
|
65
|
+
const loadedConfig = loader.loadParsedConfig({ substituteEnv: false, includeAppConfig: false });
|
|
66
|
+
const config = {
|
|
67
|
+
...loadedConfig.processedConfig,
|
|
68
|
+
serverDefaults: loadedConfig.globalConfig,
|
|
69
|
+
mcpServers: loadedConfig.rawServers,
|
|
70
|
+
};
|
|
71
|
+
if (loadedConfig.schemaInjected) {
|
|
72
|
+
delete config.$schema;
|
|
71
73
|
}
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
const validatedMcpServers = {};
|
|
77
|
-
for (const [key, value] of Object.entries(mcpServers)) {
|
|
78
|
-
if (value && typeof value === 'object') {
|
|
79
|
-
// Basic validation - ensure it has at least a type property
|
|
80
|
-
const serverConfig = value;
|
|
81
|
-
validatedMcpServers[key] = serverConfig;
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
configObj.mcpServers = validatedMcpServers;
|
|
85
|
-
}
|
|
86
|
-
return configObj;
|
|
74
|
+
return {
|
|
75
|
+
config,
|
|
76
|
+
effectiveServers: mergeGlobalWithServers(loadedConfig.globalConfig, loadedConfig.rawServers),
|
|
77
|
+
};
|
|
87
78
|
}
|
|
88
79
|
catch (error) {
|
|
89
|
-
if (error instanceof SyntaxError) {
|
|
80
|
+
if (error instanceof Error && error.cause instanceof SyntaxError) {
|
|
90
81
|
throw new Error(`Invalid JSON in configuration file: ${filePath}`);
|
|
91
82
|
}
|
|
92
83
|
throw error;
|
|
93
84
|
}
|
|
94
85
|
}
|
|
86
|
+
/**
|
|
87
|
+
* Load the MCP configuration from a file
|
|
88
|
+
* Uses ConfigContext to resolve the appropriate config file path
|
|
89
|
+
*/
|
|
90
|
+
export function loadConfig(configPath) {
|
|
91
|
+
return loadSharedConfigState(configPath).config;
|
|
92
|
+
}
|
|
93
|
+
function isMissingConfigError(error) {
|
|
94
|
+
return ((error instanceof Error && error.message.includes('Configuration file not found')) ||
|
|
95
|
+
(typeof error === 'object' && error !== null && 'code' in error && error.code === 'ENOENT'));
|
|
96
|
+
}
|
|
95
97
|
/**
|
|
96
98
|
* Save the MCP configuration to a file
|
|
97
99
|
* Uses ConfigContext to resolve the appropriate config file path
|
|
@@ -134,8 +136,47 @@ export function getServer(serverName) {
|
|
|
134
136
|
const config = loadConfig();
|
|
135
137
|
return config.mcpServers[serverName] || null;
|
|
136
138
|
}
|
|
137
|
-
catch (
|
|
138
|
-
|
|
139
|
+
catch (error) {
|
|
140
|
+
logger.warn(`Failed to get server '${serverName}': ${error instanceof Error ? error.message : String(error)}`);
|
|
141
|
+
if (isMissingConfigError(error)) {
|
|
142
|
+
return null;
|
|
143
|
+
}
|
|
144
|
+
throw error;
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
/**
|
|
148
|
+
* Get global MCP configuration from file.
|
|
149
|
+
*/
|
|
150
|
+
export function getGlobalConfig() {
|
|
151
|
+
try {
|
|
152
|
+
const config = loadConfig();
|
|
153
|
+
return config.serverDefaults || {};
|
|
154
|
+
}
|
|
155
|
+
catch (error) {
|
|
156
|
+
logger.warn(`Failed to get global config: ${error instanceof Error ? error.message : String(error)}`);
|
|
157
|
+
if (isMissingConfigError(error)) {
|
|
158
|
+
return {};
|
|
159
|
+
}
|
|
160
|
+
throw error;
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
/**
|
|
164
|
+
* Get effective merged configuration for a specific server.
|
|
165
|
+
*/
|
|
166
|
+
export function getEffectiveServerConfig(serverName) {
|
|
167
|
+
try {
|
|
168
|
+
const { config, effectiveServers } = loadSharedConfigState();
|
|
169
|
+
if (!config.mcpServers[serverName]) {
|
|
170
|
+
return null;
|
|
171
|
+
}
|
|
172
|
+
return (effectiveServers[serverName] || mergeGlobalAndServerConfig(config.serverDefaults, config.mcpServers[serverName]));
|
|
173
|
+
}
|
|
174
|
+
catch (error) {
|
|
175
|
+
logger.warn(`Failed to get effective server config for '${serverName}': ${error instanceof Error ? error.message : String(error)}`);
|
|
176
|
+
if (isMissingConfigError(error)) {
|
|
177
|
+
return null;
|
|
178
|
+
}
|
|
179
|
+
throw error;
|
|
139
180
|
}
|
|
140
181
|
}
|
|
141
182
|
/**
|
|
@@ -183,8 +224,27 @@ export function getAllServers() {
|
|
|
183
224
|
const config = loadConfig();
|
|
184
225
|
return config.mcpServers;
|
|
185
226
|
}
|
|
186
|
-
catch (
|
|
187
|
-
|
|
227
|
+
catch (error) {
|
|
228
|
+
logger.warn(`Failed to get all servers: ${error instanceof Error ? error.message : String(error)}`);
|
|
229
|
+
if (isMissingConfigError(error)) {
|
|
230
|
+
return {};
|
|
231
|
+
}
|
|
232
|
+
throw error;
|
|
233
|
+
}
|
|
234
|
+
}
|
|
235
|
+
/**
|
|
236
|
+
* Get all effective server configurations after applying global inheritance.
|
|
237
|
+
*/
|
|
238
|
+
export function getAllEffectiveServers() {
|
|
239
|
+
try {
|
|
240
|
+
return loadSharedConfigState().effectiveServers;
|
|
241
|
+
}
|
|
242
|
+
catch (error) {
|
|
243
|
+
logger.warn(`Failed to get all effective servers: ${error instanceof Error ? error.message : String(error)}`);
|
|
244
|
+
if (isMissingConfigError(error)) {
|
|
245
|
+
return {};
|
|
246
|
+
}
|
|
247
|
+
throw error;
|
|
188
248
|
}
|
|
189
249
|
}
|
|
190
250
|
/**
|
|
@@ -302,6 +362,7 @@ export function validateServerConfig(serverConfig) {
|
|
|
302
362
|
break;
|
|
303
363
|
case 'http':
|
|
304
364
|
case 'sse':
|
|
365
|
+
case 'streamableHttp':
|
|
305
366
|
if (!serverConfig.url) {
|
|
306
367
|
throw new Error(`URL is required for ${serverConfig.type} servers`);
|
|
307
368
|
}
|
|
@@ -346,7 +407,51 @@ export function reloadMcpConfig() {
|
|
|
346
407
|
logger.info('MCP configuration reloaded');
|
|
347
408
|
}
|
|
348
409
|
catch (error) {
|
|
349
|
-
logger.warn(`Failed to reload MCP configuration: ${error}`);
|
|
410
|
+
logger.warn(`Failed to reload MCP configuration: ${error instanceof Error ? error.message : String(error)}`);
|
|
411
|
+
}
|
|
412
|
+
}
|
|
413
|
+
export function getInheritedKeys(rawConfig, effectiveConfig, globalConfig) {
|
|
414
|
+
const inherited = [];
|
|
415
|
+
const fallbackKeys = [
|
|
416
|
+
'timeout',
|
|
417
|
+
'connectionTimeout',
|
|
418
|
+
'requestTimeout',
|
|
419
|
+
'oauth',
|
|
420
|
+
'headers',
|
|
421
|
+
'inheritParentEnv',
|
|
422
|
+
];
|
|
423
|
+
for (const key of fallbackKeys) {
|
|
424
|
+
if (rawConfig[key] === undefined &&
|
|
425
|
+
effectiveConfig[key] !== undefined &&
|
|
426
|
+
globalConfig[key] !== undefined) {
|
|
427
|
+
inherited.push(String(key));
|
|
428
|
+
}
|
|
429
|
+
}
|
|
430
|
+
if (rawConfig.env === undefined && effectiveConfig.env !== undefined && globalConfig.env !== undefined) {
|
|
431
|
+
inherited.push('env');
|
|
432
|
+
}
|
|
433
|
+
if (rawConfig.envFilter === undefined &&
|
|
434
|
+
Array.isArray(effectiveConfig.envFilter) &&
|
|
435
|
+
effectiveConfig.envFilter.length > 0 &&
|
|
436
|
+
Array.isArray(globalConfig.envFilter) &&
|
|
437
|
+
globalConfig.envFilter.length > 0) {
|
|
438
|
+
inherited.push('envFilter');
|
|
439
|
+
}
|
|
440
|
+
if (rawConfig.env &&
|
|
441
|
+
effectiveConfig.env &&
|
|
442
|
+
typeof rawConfig.env === 'object' &&
|
|
443
|
+
typeof effectiveConfig.env === 'object' &&
|
|
444
|
+
!Array.isArray(rawConfig.env) &&
|
|
445
|
+
!Array.isArray(effectiveConfig.env) &&
|
|
446
|
+
typeof globalConfig.env === 'object' &&
|
|
447
|
+
globalConfig.env !== null &&
|
|
448
|
+
!Array.isArray(globalConfig.env)) {
|
|
449
|
+
const rawEnv = rawConfig.env;
|
|
450
|
+
const effectiveEnv = effectiveConfig.env;
|
|
451
|
+
if (Object.keys(effectiveEnv).some((key) => !(key in rawEnv))) {
|
|
452
|
+
inherited.push('env(merged)');
|
|
453
|
+
}
|
|
350
454
|
}
|
|
455
|
+
return inherited;
|
|
351
456
|
}
|
|
352
457
|
//# sourceMappingURL=baseConfigUtils.js.map
|