@1mcp/agent 0.16.0 ā 0.18.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 +103 -11
- package/build/auth/sdkOAuthClientProvider.d.ts.map +1 -1
- package/build/auth/sdkOAuthClientProvider.js +1 -1
- package/build/auth/sdkOAuthClientProvider.js.map +1 -1
- package/build/commands/app/backups.d.ts +17 -0
- package/build/commands/app/backups.d.ts.map +1 -0
- package/build/commands/app/backups.js +162 -0
- package/build/commands/app/backups.js.map +1 -0
- package/build/commands/app/consolidate.d.ts +21 -0
- package/build/commands/app/consolidate.d.ts.map +1 -0
- package/build/commands/app/consolidate.js +383 -0
- package/build/commands/app/consolidate.js.map +1 -0
- package/build/commands/app/discover.d.ts +16 -0
- package/build/commands/app/discover.d.ts.map +1 -0
- package/build/commands/app/discover.js +79 -0
- package/build/commands/app/discover.js.map +1 -0
- package/build/commands/app/index.d.ts +12 -0
- package/build/commands/app/index.d.ts.map +1 -0
- package/build/commands/app/index.js +274 -0
- package/build/commands/app/index.js.map +1 -0
- package/build/commands/app/list.d.ts +16 -0
- package/build/commands/app/list.d.ts.map +1 -0
- package/build/commands/app/list.js +95 -0
- package/build/commands/app/list.js.map +1 -0
- package/build/commands/app/restore.d.ts +21 -0
- package/build/commands/app/restore.d.ts.map +1 -0
- package/build/commands/app/restore.js +265 -0
- package/build/commands/app/restore.js.map +1 -0
- package/build/commands/app/status.d.ts +16 -0
- package/build/commands/app/status.d.ts.map +1 -0
- package/build/commands/app/status.js +224 -0
- package/build/commands/app/status.js.map +1 -0
- package/build/commands/mcp/add.d.ts +19 -0
- package/build/commands/mcp/add.d.ts.map +1 -0
- package/build/commands/mcp/add.js +135 -0
- package/build/commands/mcp/add.js.map +1 -0
- package/build/commands/mcp/enable.d.ts +13 -0
- package/build/commands/mcp/enable.d.ts.map +1 -0
- package/build/commands/mcp/enable.js +100 -0
- package/build/commands/mcp/enable.js.map +1 -0
- package/build/commands/mcp/index.d.ts +12 -0
- package/build/commands/mcp/index.d.ts.map +1 -0
- package/build/commands/mcp/index.js +351 -0
- package/build/commands/mcp/index.js.map +1 -0
- package/build/commands/mcp/list.d.ts +11 -0
- package/build/commands/mcp/list.d.ts.map +1 -0
- package/build/commands/mcp/list.js +144 -0
- package/build/commands/mcp/list.js.map +1 -0
- package/build/commands/mcp/remove.d.ts +10 -0
- package/build/commands/mcp/remove.d.ts.map +1 -0
- package/build/commands/mcp/remove.js +89 -0
- package/build/commands/mcp/remove.js.map +1 -0
- package/build/commands/mcp/status.d.ts +10 -0
- package/build/commands/mcp/status.d.ts.map +1 -0
- package/build/commands/mcp/status.js +243 -0
- package/build/commands/mcp/status.js.map +1 -0
- package/build/commands/mcp/update.d.ts +18 -0
- package/build/commands/mcp/update.d.ts.map +1 -0
- package/build/commands/mcp/update.js +157 -0
- package/build/commands/mcp/update.js.map +1 -0
- package/build/commands/mcp/utils/configUtils.d.ts +64 -0
- package/build/commands/mcp/utils/configUtils.d.ts.map +1 -0
- package/build/commands/mcp/utils/configUtils.js +266 -0
- package/build/commands/mcp/utils/configUtils.js.map +1 -0
- package/build/commands/mcp/utils/doubleHyphenParser.d.ts +32 -0
- package/build/commands/mcp/utils/doubleHyphenParser.d.ts.map +1 -0
- package/build/commands/mcp/utils/doubleHyphenParser.js +61 -0
- package/build/commands/mcp/utils/doubleHyphenParser.js.map +1 -0
- package/build/commands/mcp/utils/validation.d.ts +33 -0
- package/build/commands/mcp/utils/validation.d.ts.map +1 -0
- package/build/commands/mcp/utils/validation.js +235 -0
- package/build/commands/mcp/utils/validation.js.map +1 -0
- package/build/constants.d.ts +11 -2
- package/build/constants.d.ts.map +1 -1
- package/build/constants.js +18 -5
- package/build/constants.js.map +1 -1
- package/build/core/capabilities/asyncLoadingOrchestrator.d.ts +96 -0
- package/build/core/capabilities/asyncLoadingOrchestrator.d.ts.map +1 -0
- package/build/core/capabilities/asyncLoadingOrchestrator.js +256 -0
- package/build/core/capabilities/asyncLoadingOrchestrator.js.map +1 -0
- package/build/core/capabilities/capabilityAggregator.d.ts +114 -0
- package/build/core/capabilities/capabilityAggregator.d.ts.map +1 -0
- package/build/core/capabilities/capabilityAggregator.js +234 -0
- package/build/core/capabilities/capabilityAggregator.js.map +1 -0
- package/build/core/client/clientManager.d.ts +29 -0
- package/build/core/client/clientManager.d.ts.map +1 -1
- package/build/core/client/clientManager.js +151 -2
- package/build/core/client/clientManager.js.map +1 -1
- package/build/core/loading/loadingStateTracker.d.ts +128 -0
- package/build/core/loading/loadingStateTracker.d.ts.map +1 -0
- package/build/core/loading/loadingStateTracker.js +211 -0
- package/build/core/loading/loadingStateTracker.js.map +1 -0
- package/build/core/loading/mcpLoadingManager.d.ts +156 -0
- package/build/core/loading/mcpLoadingManager.d.ts.map +1 -0
- package/build/core/loading/mcpLoadingManager.js +352 -0
- package/build/core/loading/mcpLoadingManager.js.map +1 -0
- package/build/core/notifications/notificationManager.d.ts +111 -0
- package/build/core/notifications/notificationManager.d.ts.map +1 -0
- package/build/core/notifications/notificationManager.js +232 -0
- package/build/core/notifications/notificationManager.js.map +1 -0
- package/build/core/server/agentConfig.d.ts +50 -0
- package/build/core/server/agentConfig.d.ts.map +1 -1
- package/build/core/server/agentConfig.js +68 -1
- package/build/core/server/agentConfig.js.map +1 -1
- package/build/core/server/serverManager.d.ts +1 -0
- package/build/core/server/serverManager.d.ts.map +1 -1
- package/build/core/server/serverManager.js +3 -0
- package/build/core/server/serverManager.js.map +1 -1
- package/build/core/types/transport.d.ts +2 -2
- package/build/index.js +133 -34
- package/build/index.js.map +1 -1
- package/build/logger/logger.d.ts +9 -0
- package/build/logger/logger.d.ts.map +1 -1
- package/build/logger/logger.js +49 -0
- package/build/logger/logger.js.map +1 -1
- package/build/logger/secureLogger.d.ts +22 -0
- package/build/logger/secureLogger.d.ts.map +1 -0
- package/build/logger/secureLogger.js +120 -0
- package/build/logger/secureLogger.js.map +1 -0
- package/build/server.d.ts +23 -2
- package/build/server.d.ts.map +1 -1
- package/build/server.js +83 -10
- package/build/server.js.map +1 -1
- package/build/services/configReloadService.d.ts +8 -0
- package/build/services/configReloadService.d.ts.map +1 -1
- package/build/services/configReloadService.js +68 -0
- package/build/services/configReloadService.js.map +1 -1
- package/build/transport/http/middlewares/mcpAvailabilityMiddleware.d.ts +79 -0
- package/build/transport/http/middlewares/mcpAvailabilityMiddleware.d.ts.map +1 -0
- package/build/transport/http/middlewares/mcpAvailabilityMiddleware.js +306 -0
- package/build/transport/http/middlewares/mcpAvailabilityMiddleware.js.map +1 -0
- package/build/transport/http/routes/healthRoutes.d.ts +2 -1
- package/build/transport/http/routes/healthRoutes.d.ts.map +1 -1
- package/build/transport/http/routes/healthRoutes.js +170 -1
- package/build/transport/http/routes/healthRoutes.js.map +1 -1
- package/build/transport/http/routes/sseRoutes.d.ts +2 -1
- package/build/transport/http/routes/sseRoutes.d.ts.map +1 -1
- package/build/transport/http/routes/sseRoutes.js +13 -1
- package/build/transport/http/routes/sseRoutes.js.map +1 -1
- package/build/transport/http/routes/streamableHttpRoutes.d.ts +2 -1
- package/build/transport/http/routes/streamableHttpRoutes.d.ts.map +1 -1
- package/build/transport/http/routes/streamableHttpRoutes.js +13 -1
- package/build/transport/http/routes/streamableHttpRoutes.js.map +1 -1
- package/build/transport/http/server.d.ts +7 -1
- package/build/transport/http/server.d.ts.map +1 -1
- package/build/transport/http/server.js +15 -4
- package/build/transport/http/server.js.map +1 -1
- package/build/transport/transportFactory.d.ts +4 -0
- package/build/transport/transportFactory.d.ts.map +1 -1
- package/build/transport/transportFactory.js +1 -1
- package/build/transport/transportFactory.js.map +1 -1
- package/build/utils/appDiscovery.d.ts +75 -0
- package/build/utils/appDiscovery.d.ts.map +1 -0
- package/build/utils/appDiscovery.js +358 -0
- package/build/utils/appDiscovery.js.map +1 -0
- package/build/utils/appPresets.d.ts +88 -0
- package/build/utils/appPresets.d.ts.map +1 -0
- package/build/utils/appPresets.js +430 -0
- package/build/utils/appPresets.js.map +1 -0
- package/build/utils/backupManager.d.ts +61 -0
- package/build/utils/backupManager.d.ts.map +1 -0
- package/build/utils/backupManager.js +314 -0
- package/build/utils/backupManager.js.map +1 -0
- package/build/utils/urlDetection.d.ts +35 -0
- package/build/utils/urlDetection.d.ts.map +1 -0
- package/build/utils/urlDetection.js +115 -0
- package/build/utils/urlDetection.js.map +1 -0
- package/build/utils/validationHelpers.d.ts +62 -0
- package/build/utils/validationHelpers.d.ts.map +1 -0
- package/build/utils/validationHelpers.js +252 -0
- package/build/utils/validationHelpers.js.map +1 -0
- package/package.json +9 -2
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export interface ListCommandArgs {
|
|
2
|
+
config?: string;
|
|
3
|
+
'show-disabled'?: boolean;
|
|
4
|
+
tags?: string;
|
|
5
|
+
verbose?: boolean;
|
|
6
|
+
}
|
|
7
|
+
/**
|
|
8
|
+
* List all configured MCP servers
|
|
9
|
+
*/
|
|
10
|
+
export declare function listCommand(argv: ListCommandArgs): Promise<void>;
|
|
11
|
+
//# sourceMappingURL=list.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list.d.ts","sourceRoot":"","sources":["../../../src/commands/mcp/list.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,eAAe;IAC9B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;GAEG;AACH,wBAAsB,WAAW,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CA4EtE"}
|
|
@@ -0,0 +1,144 @@
|
|
|
1
|
+
import { getAllServers, validateConfigPath, parseTags } from './utils/configUtils.js';
|
|
2
|
+
import { validateTags } from './utils/validation.js';
|
|
3
|
+
import { inferTransportType } from '../../transport/transportFactory.js';
|
|
4
|
+
/**
|
|
5
|
+
* List all configured MCP servers
|
|
6
|
+
*/
|
|
7
|
+
export async function listCommand(argv) {
|
|
8
|
+
try {
|
|
9
|
+
const { config: configPath, 'show-disabled': showDisabled = false, tags: tagsFilter, verbose = false } = argv;
|
|
10
|
+
// Validate config path
|
|
11
|
+
validateConfigPath(configPath);
|
|
12
|
+
// Validate tags filter if provided
|
|
13
|
+
if (tagsFilter) {
|
|
14
|
+
validateTags(tagsFilter);
|
|
15
|
+
}
|
|
16
|
+
// Get all servers
|
|
17
|
+
const allServers = getAllServers(configPath);
|
|
18
|
+
if (Object.keys(allServers).length === 0) {
|
|
19
|
+
console.log('No MCP servers are configured.');
|
|
20
|
+
console.log('\nš” Use "server add <name>" to add your first server.');
|
|
21
|
+
return;
|
|
22
|
+
}
|
|
23
|
+
// Filter servers
|
|
24
|
+
const filteredServers = filterServers(allServers, showDisabled, tagsFilter);
|
|
25
|
+
if (Object.keys(filteredServers).length === 0) {
|
|
26
|
+
if (tagsFilter) {
|
|
27
|
+
console.log(`No servers found matching the specified tags: ${tagsFilter}`);
|
|
28
|
+
}
|
|
29
|
+
else if (!showDisabled) {
|
|
30
|
+
console.log('No enabled servers found.');
|
|
31
|
+
console.log('\nš” Use --show-disabled to include disabled servers, or "server enable <name>" to enable servers.');
|
|
32
|
+
}
|
|
33
|
+
else {
|
|
34
|
+
console.log('No servers found.');
|
|
35
|
+
}
|
|
36
|
+
return;
|
|
37
|
+
}
|
|
38
|
+
// Display results
|
|
39
|
+
console.log(`\nš MCP Servers (${Object.keys(filteredServers).length} server${Object.keys(filteredServers).length === 1 ? '' : 's'}):\n`);
|
|
40
|
+
// Sort servers by name for consistent output
|
|
41
|
+
const sortedServerNames = Object.keys(filteredServers).sort();
|
|
42
|
+
for (const serverName of sortedServerNames) {
|
|
43
|
+
const config = filteredServers[serverName];
|
|
44
|
+
displayServer(serverName, config, verbose);
|
|
45
|
+
console.log(); // Empty line between servers
|
|
46
|
+
}
|
|
47
|
+
// Summary information
|
|
48
|
+
const enabledCount = sortedServerNames.filter((name) => !filteredServers[name].disabled).length;
|
|
49
|
+
const disabledCount = sortedServerNames.length - enabledCount;
|
|
50
|
+
console.log(`š Summary:`);
|
|
51
|
+
console.log(` Total: ${sortedServerNames.length} server${sortedServerNames.length === 1 ? '' : 's'}`);
|
|
52
|
+
console.log(` Enabled: ${enabledCount}`);
|
|
53
|
+
if (showDisabled && disabledCount > 0) {
|
|
54
|
+
console.log(` Disabled: ${disabledCount}`);
|
|
55
|
+
}
|
|
56
|
+
if (tagsFilter) {
|
|
57
|
+
console.log(` Filtered by tags: ${tagsFilter}`);
|
|
58
|
+
}
|
|
59
|
+
if (!showDisabled && disabledCount > 0) {
|
|
60
|
+
console.log(`\nš” ${disabledCount} disabled server${disabledCount === 1 ? '' : 's'} hidden. Use --show-disabled to see all servers.`);
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
catch (error) {
|
|
64
|
+
console.error(`ā Failed to list servers: ${error instanceof Error ? error.message : error}`);
|
|
65
|
+
process.exit(1);
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Filter servers based on criteria
|
|
70
|
+
*/
|
|
71
|
+
function filterServers(servers, showDisabled, tagsFilter) {
|
|
72
|
+
const filtered = {};
|
|
73
|
+
// Parse tags filter if provided
|
|
74
|
+
const filterTags = tagsFilter ? parseTags(tagsFilter) : undefined;
|
|
75
|
+
for (const [name, config] of Object.entries(servers)) {
|
|
76
|
+
// Skip disabled servers unless explicitly requested
|
|
77
|
+
if (config.disabled && !showDisabled) {
|
|
78
|
+
continue;
|
|
79
|
+
}
|
|
80
|
+
// Apply tags filter if provided
|
|
81
|
+
if (filterTags && filterTags.length > 0) {
|
|
82
|
+
const serverTags = config.tags || [];
|
|
83
|
+
const hasMatchingTag = filterTags.some((filterTag) => serverTags.some((serverTag) => serverTag.toLowerCase() === filterTag.toLowerCase()));
|
|
84
|
+
if (!hasMatchingTag) {
|
|
85
|
+
continue;
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
filtered[name] = config;
|
|
89
|
+
}
|
|
90
|
+
return filtered;
|
|
91
|
+
}
|
|
92
|
+
/**
|
|
93
|
+
* Display a single server's information
|
|
94
|
+
*/
|
|
95
|
+
function displayServer(name, config, verbose) {
|
|
96
|
+
const statusIcon = config.disabled ? 'š“' : 'š¢';
|
|
97
|
+
const statusText = config.disabled ? 'Disabled' : 'Enabled';
|
|
98
|
+
// Infer type if missing
|
|
99
|
+
const inferredConfig = config.type ? config : inferTransportType(config, name);
|
|
100
|
+
const displayType = inferredConfig.type || 'unknown';
|
|
101
|
+
console.log(`${statusIcon} ${name} (${statusText})`);
|
|
102
|
+
console.log(` Type: ${displayType}`);
|
|
103
|
+
// Type-specific information
|
|
104
|
+
if (inferredConfig.type === 'stdio') {
|
|
105
|
+
console.log(` Command: ${inferredConfig.command}`);
|
|
106
|
+
if (inferredConfig.args && inferredConfig.args.length > 0) {
|
|
107
|
+
console.log(` Args: ${inferredConfig.args.join(' ')}`);
|
|
108
|
+
}
|
|
109
|
+
if (inferredConfig.cwd) {
|
|
110
|
+
console.log(` Working Directory: ${inferredConfig.cwd}`);
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
else if (inferredConfig.type === 'http' || inferredConfig.type === 'sse') {
|
|
114
|
+
console.log(` URL: ${inferredConfig.url}`);
|
|
115
|
+
if (inferredConfig.headers && Object.keys(inferredConfig.headers).length > 0) {
|
|
116
|
+
const headerCount = Object.keys(inferredConfig.headers).length;
|
|
117
|
+
console.log(` Headers: ${headerCount} header${headerCount === 1 ? '' : 's'}`);
|
|
118
|
+
if (verbose) {
|
|
119
|
+
for (const [key, value] of Object.entries(inferredConfig.headers)) {
|
|
120
|
+
console.log(` ${key}: ${value}`);
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
// Common properties
|
|
126
|
+
if (inferredConfig.tags && inferredConfig.tags.length > 0) {
|
|
127
|
+
console.log(` Tags: ${inferredConfig.tags.join(', ')}`);
|
|
128
|
+
}
|
|
129
|
+
if (inferredConfig.timeout) {
|
|
130
|
+
console.log(` Timeout: ${inferredConfig.timeout}ms`);
|
|
131
|
+
}
|
|
132
|
+
if (inferredConfig.env && Object.keys(inferredConfig.env).length > 0) {
|
|
133
|
+
const envCount = Object.keys(inferredConfig.env).length;
|
|
134
|
+
console.log(` Environment: ${envCount} variable${envCount === 1 ? '' : 's'}`);
|
|
135
|
+
if (verbose) {
|
|
136
|
+
for (const [key, value] of Object.entries(inferredConfig.env)) {
|
|
137
|
+
// Don't show full values of environment variables for security
|
|
138
|
+
const displayValue = value.length > 20 ? `${value.substring(0, 20)}...` : value;
|
|
139
|
+
console.log(` ${key}=${displayValue}`);
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
//# sourceMappingURL=list.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list.js","sourceRoot":"","sources":["../../../src/commands/mcp/list.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export interface RemoveCommandArgs {
|
|
2
|
+
name: string;
|
|
3
|
+
config?: string;
|
|
4
|
+
yes?: boolean;
|
|
5
|
+
}
|
|
6
|
+
/**
|
|
7
|
+
* Remove an MCP server from the configuration
|
|
8
|
+
*/
|
|
9
|
+
export declare function removeCommand(argv: RemoveCommandArgs): Promise<void>;
|
|
10
|
+
//# sourceMappingURL=remove.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"remove.d.ts","sourceRoot":"","sources":["../../../src/commands/mcp/remove.ts"],"names":[],"mappings":"AAWA,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,GAAG,CAAC,EAAE,OAAO,CAAC;CACf;AAED;;GAEG;AACH,wBAAsB,aAAa,CAAC,IAAI,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,CA8E1E"}
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
import readline from 'readline';
|
|
2
|
+
import { serverExists, getServer, removeServer, validateConfigPath, backupConfig, reloadMcpConfig, } from './utils/configUtils.js';
|
|
3
|
+
import { validateServerName } from './utils/validation.js';
|
|
4
|
+
/**
|
|
5
|
+
* Remove an MCP server from the configuration
|
|
6
|
+
*/
|
|
7
|
+
export async function removeCommand(argv) {
|
|
8
|
+
try {
|
|
9
|
+
const { name, config: configPath, yes = false } = argv;
|
|
10
|
+
console.log(`Removing MCP server: ${name}`);
|
|
11
|
+
// Validate inputs
|
|
12
|
+
validateServerName(name);
|
|
13
|
+
// Validate config path
|
|
14
|
+
validateConfigPath(configPath);
|
|
15
|
+
// Check if server exists
|
|
16
|
+
if (!serverExists(name, configPath)) {
|
|
17
|
+
throw new Error(`Server '${name}' does not exist in the configuration.`);
|
|
18
|
+
}
|
|
19
|
+
// Get server details for confirmation
|
|
20
|
+
const serverConfig = getServer(name, configPath);
|
|
21
|
+
if (!serverConfig) {
|
|
22
|
+
throw new Error(`Failed to retrieve server '${name}' configuration.`);
|
|
23
|
+
}
|
|
24
|
+
// Show server details
|
|
25
|
+
console.log(`\nServer Details:`);
|
|
26
|
+
console.log(` Name: ${name}`);
|
|
27
|
+
console.log(` Type: ${serverConfig.type}`);
|
|
28
|
+
if (serverConfig.type === 'stdio') {
|
|
29
|
+
console.log(` Command: ${serverConfig.command}`);
|
|
30
|
+
if (serverConfig.args) {
|
|
31
|
+
console.log(` Args: ${serverConfig.args.join(' ')}`);
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
else {
|
|
35
|
+
console.log(` URL: ${serverConfig.url}`);
|
|
36
|
+
}
|
|
37
|
+
if (serverConfig.tags && serverConfig.tags.length > 0) {
|
|
38
|
+
console.log(` Tags: ${serverConfig.tags.join(', ')}`);
|
|
39
|
+
}
|
|
40
|
+
if (serverConfig.disabled) {
|
|
41
|
+
console.log(` Status: Disabled`);
|
|
42
|
+
}
|
|
43
|
+
else {
|
|
44
|
+
console.log(` Status: Enabled`);
|
|
45
|
+
}
|
|
46
|
+
// Confirmation prompt unless --yes flag is used
|
|
47
|
+
if (!yes) {
|
|
48
|
+
const confirmed = await confirmRemoval(name);
|
|
49
|
+
if (!confirmed) {
|
|
50
|
+
console.log('Operation cancelled.');
|
|
51
|
+
return;
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
// Create backup
|
|
55
|
+
const backupPath = backupConfig(configPath);
|
|
56
|
+
// Remove the server
|
|
57
|
+
const removed = removeServer(name, configPath);
|
|
58
|
+
if (!removed) {
|
|
59
|
+
throw new Error(`Failed to remove server '${name}' from configuration.`);
|
|
60
|
+
}
|
|
61
|
+
// Reload MCP configuration
|
|
62
|
+
reloadMcpConfig(configPath);
|
|
63
|
+
// Success message
|
|
64
|
+
console.log(`ā
Successfully removed server '${name}'`);
|
|
65
|
+
console.log(` Backup created: ${backupPath}`);
|
|
66
|
+
console.log(`\nš” Server removed from configuration. If 1mcp is running, the server will be unloaded automatically.`);
|
|
67
|
+
}
|
|
68
|
+
catch (error) {
|
|
69
|
+
console.error(`ā Failed to remove server: ${error instanceof Error ? error.message : error}`);
|
|
70
|
+
process.exit(1);
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* Prompt user for confirmation
|
|
75
|
+
*/
|
|
76
|
+
function confirmRemoval(serverName) {
|
|
77
|
+
return new Promise((resolve) => {
|
|
78
|
+
const rl = readline.createInterface({
|
|
79
|
+
input: process.stdin,
|
|
80
|
+
output: process.stdout,
|
|
81
|
+
});
|
|
82
|
+
rl.question(`\nā ļø Are you sure you want to remove server '${serverName}'? This action cannot be undone. (y/N): `, (answer) => {
|
|
83
|
+
rl.close();
|
|
84
|
+
const confirmed = answer.toLowerCase().trim() === 'y' || answer.toLowerCase().trim() === 'yes';
|
|
85
|
+
resolve(confirmed);
|
|
86
|
+
});
|
|
87
|
+
});
|
|
88
|
+
}
|
|
89
|
+
//# sourceMappingURL=remove.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"remove.js","sourceRoot":"","sources":["../../../src/commands/mcp/remove.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export interface StatusCommandArgs {
|
|
2
|
+
name?: string;
|
|
3
|
+
config?: string;
|
|
4
|
+
verbose?: boolean;
|
|
5
|
+
}
|
|
6
|
+
/**
|
|
7
|
+
* Show status and details of MCP servers
|
|
8
|
+
*/
|
|
9
|
+
export declare function statusCommand(argv: StatusCommandArgs): Promise<void>;
|
|
10
|
+
//# sourceMappingURL=status.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../../src/commands/mcp/status.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,iBAAiB;IAChC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;GAEG;AACH,wBAAsB,aAAa,CAAC,IAAI,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,CAkB1E"}
|
|
@@ -0,0 +1,243 @@
|
|
|
1
|
+
import { getAllServers, getServer, validateConfigPath } from './utils/configUtils.js';
|
|
2
|
+
import { validateServerName } from './utils/validation.js';
|
|
3
|
+
import { inferTransportType } from '../../transport/transportFactory.js';
|
|
4
|
+
/**
|
|
5
|
+
* Show status and details of MCP servers
|
|
6
|
+
*/
|
|
7
|
+
export async function statusCommand(argv) {
|
|
8
|
+
try {
|
|
9
|
+
const { name, config: configPath, verbose = false } = argv;
|
|
10
|
+
// Validate config path
|
|
11
|
+
validateConfigPath(configPath);
|
|
12
|
+
if (name) {
|
|
13
|
+
// Show status for specific server
|
|
14
|
+
await showServerStatus(name, configPath, verbose);
|
|
15
|
+
}
|
|
16
|
+
else {
|
|
17
|
+
// Show status for all servers
|
|
18
|
+
await showAllServersStatus(configPath, verbose);
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
catch (error) {
|
|
22
|
+
console.error(`ā Failed to get server status: ${error instanceof Error ? error.message : error}`);
|
|
23
|
+
process.exit(1);
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Show status for a specific server
|
|
28
|
+
*/
|
|
29
|
+
async function showServerStatus(serverName, configPath, verbose = false) {
|
|
30
|
+
// Validate server name
|
|
31
|
+
validateServerName(serverName);
|
|
32
|
+
// Get server configuration
|
|
33
|
+
const serverConfig = getServer(serverName, configPath);
|
|
34
|
+
if (!serverConfig) {
|
|
35
|
+
throw new Error(`Server '${serverName}' does not exist.`);
|
|
36
|
+
}
|
|
37
|
+
console.log(`\nš Server Status: ${serverName}\n`);
|
|
38
|
+
displayDetailedServerStatus(serverName, serverConfig, verbose);
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Show status for all servers
|
|
42
|
+
*/
|
|
43
|
+
async function showAllServersStatus(configPath, verbose = false) {
|
|
44
|
+
const allServers = getAllServers(configPath);
|
|
45
|
+
if (Object.keys(allServers).length === 0) {
|
|
46
|
+
console.log('No MCP servers are configured.');
|
|
47
|
+
console.log('\nš” Use "mcp add <name>" to add your first server.');
|
|
48
|
+
return;
|
|
49
|
+
}
|
|
50
|
+
console.log(`\nš MCP Servers Status (${Object.keys(allServers).length} server${Object.keys(allServers).length === 1 ? '' : 's'}):\n`);
|
|
51
|
+
// Sort servers by name for consistent output
|
|
52
|
+
const sortedServerNames = Object.keys(allServers).sort();
|
|
53
|
+
for (const serverName of sortedServerNames) {
|
|
54
|
+
const config = allServers[serverName];
|
|
55
|
+
displayServerStatusSummary(serverName, config);
|
|
56
|
+
console.log(); // Empty line between servers
|
|
57
|
+
}
|
|
58
|
+
// Overall summary
|
|
59
|
+
const enabledCount = sortedServerNames.filter((name) => !allServers[name].disabled).length;
|
|
60
|
+
const disabledCount = sortedServerNames.length - enabledCount;
|
|
61
|
+
const stdioCount = sortedServerNames.filter((name) => allServers[name].type === 'stdio').length;
|
|
62
|
+
const httpCount = sortedServerNames.filter((name) => allServers[name].type === 'http').length;
|
|
63
|
+
const sseCount = sortedServerNames.filter((name) => allServers[name].type === 'sse').length;
|
|
64
|
+
console.log(`š Overall Summary:`);
|
|
65
|
+
console.log(` Total Servers: ${sortedServerNames.length}`);
|
|
66
|
+
console.log(` Enabled: ${enabledCount} | Disabled: ${disabledCount}`);
|
|
67
|
+
console.log(` Transport Types:`);
|
|
68
|
+
console.log(` ⢠stdio: ${stdioCount}`);
|
|
69
|
+
console.log(` ⢠http: ${httpCount}`);
|
|
70
|
+
console.log(` ⢠sse: ${sseCount}`);
|
|
71
|
+
// Get unique tags
|
|
72
|
+
const allTags = new Set();
|
|
73
|
+
for (const config of Object.values(allServers)) {
|
|
74
|
+
if (config.tags) {
|
|
75
|
+
config.tags.forEach((tag) => allTags.add(tag));
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
if (allTags.size > 0) {
|
|
79
|
+
console.log(` Available Tags: ${Array.from(allTags).sort().join(', ')}`);
|
|
80
|
+
}
|
|
81
|
+
if (verbose) {
|
|
82
|
+
console.log(`\nš” Use "mcp status <name>" to see detailed information for a specific server.`);
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* Display summary status for a server (used in list view)
|
|
87
|
+
*/
|
|
88
|
+
function displayServerStatusSummary(name, config) {
|
|
89
|
+
const statusIcon = config.disabled ? 'š“' : 'š¢';
|
|
90
|
+
const statusText = config.disabled ? 'Disabled' : 'Enabled';
|
|
91
|
+
// Infer type if missing
|
|
92
|
+
const inferredConfig = config.type ? config : inferTransportType(config, name);
|
|
93
|
+
const displayType = inferredConfig.type || 'unknown';
|
|
94
|
+
console.log(`${statusIcon} ${name}`);
|
|
95
|
+
console.log(` Status: ${statusText}`);
|
|
96
|
+
console.log(` Type: ${displayType}`);
|
|
97
|
+
// Brief description of endpoint/command
|
|
98
|
+
if (inferredConfig.type === 'stdio') {
|
|
99
|
+
console.log(` Command: ${inferredConfig.command}`);
|
|
100
|
+
}
|
|
101
|
+
else {
|
|
102
|
+
console.log(` URL: ${inferredConfig.url}`);
|
|
103
|
+
}
|
|
104
|
+
if (config.tags && config.tags.length > 0) {
|
|
105
|
+
console.log(` Tags: ${config.tags.join(', ')}`);
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
/**
|
|
109
|
+
* Display detailed status for a server (used in single server view)
|
|
110
|
+
*/
|
|
111
|
+
function displayDetailedServerStatus(name, config, verbose) {
|
|
112
|
+
const statusIcon = config.disabled ? 'š“' : 'š¢';
|
|
113
|
+
const statusText = config.disabled ? 'Disabled' : 'Enabled';
|
|
114
|
+
// Infer type if missing
|
|
115
|
+
const inferredConfig = config.type ? config : inferTransportType(config, name);
|
|
116
|
+
const displayType = inferredConfig.type || 'unknown';
|
|
117
|
+
console.log(`š Configuration:`);
|
|
118
|
+
console.log(` Name: ${name}`);
|
|
119
|
+
console.log(` Status: ${statusIcon} ${statusText}`);
|
|
120
|
+
console.log(` Type: ${displayType}`);
|
|
121
|
+
// Type-specific configuration
|
|
122
|
+
if (inferredConfig.type === 'stdio') {
|
|
123
|
+
console.log(` Command: ${inferredConfig.command}`);
|
|
124
|
+
if (inferredConfig.args && inferredConfig.args.length > 0) {
|
|
125
|
+
console.log(` Arguments:`);
|
|
126
|
+
inferredConfig.args.forEach((arg, index) => {
|
|
127
|
+
console.log(` [${index}]: ${arg}`);
|
|
128
|
+
});
|
|
129
|
+
}
|
|
130
|
+
else {
|
|
131
|
+
console.log(` Arguments: (none)`);
|
|
132
|
+
}
|
|
133
|
+
if (inferredConfig.cwd) {
|
|
134
|
+
console.log(` Working Directory: ${inferredConfig.cwd}`);
|
|
135
|
+
}
|
|
136
|
+
else {
|
|
137
|
+
console.log(` Working Directory: (current directory)`);
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
else if (inferredConfig.type === 'http' || inferredConfig.type === 'sse') {
|
|
141
|
+
console.log(` URL: ${inferredConfig.url}`);
|
|
142
|
+
if (inferredConfig.headers && Object.keys(inferredConfig.headers).length > 0) {
|
|
143
|
+
console.log(` Headers:`);
|
|
144
|
+
for (const [key, value] of Object.entries(inferredConfig.headers)) {
|
|
145
|
+
console.log(` ${key}: ${value}`);
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
else {
|
|
149
|
+
console.log(` Headers: (none)`);
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
// Common configuration
|
|
153
|
+
if (inferredConfig.timeout) {
|
|
154
|
+
console.log(` Timeout: ${inferredConfig.timeout}ms`);
|
|
155
|
+
}
|
|
156
|
+
else {
|
|
157
|
+
console.log(` Timeout: (default)`);
|
|
158
|
+
}
|
|
159
|
+
if (inferredConfig.tags && inferredConfig.tags.length > 0) {
|
|
160
|
+
console.log(` Tags: ${inferredConfig.tags.join(', ')}`);
|
|
161
|
+
}
|
|
162
|
+
else {
|
|
163
|
+
console.log(` Tags: (none)`);
|
|
164
|
+
}
|
|
165
|
+
// Environment variables
|
|
166
|
+
if (inferredConfig.env && Object.keys(inferredConfig.env).length > 0) {
|
|
167
|
+
console.log(` Environment Variables:`);
|
|
168
|
+
for (const [key, value] of Object.entries(inferredConfig.env)) {
|
|
169
|
+
// Show first few characters for security, unless verbose mode
|
|
170
|
+
if (verbose) {
|
|
171
|
+
console.log(` ${key}=${value}`);
|
|
172
|
+
}
|
|
173
|
+
else {
|
|
174
|
+
const displayValue = value.length > 20 ? `${value.substring(0, 20)}...` : value;
|
|
175
|
+
console.log(` ${key}=${displayValue}`);
|
|
176
|
+
}
|
|
177
|
+
}
|
|
178
|
+
}
|
|
179
|
+
else {
|
|
180
|
+
console.log(` Environment Variables: (none)`);
|
|
181
|
+
}
|
|
182
|
+
// Runtime status (this would require integration with ServerManager to get actual runtime status)
|
|
183
|
+
console.log(`\nš§ Runtime Information:`);
|
|
184
|
+
console.log(` Configuration File: ${config}`);
|
|
185
|
+
if (config.disabled) {
|
|
186
|
+
console.log(` Runtime Status: ā¹ļø Not running (disabled)`);
|
|
187
|
+
console.log(` Note: Use 'mcp enable ${name}' to enable this server.`);
|
|
188
|
+
}
|
|
189
|
+
else {
|
|
190
|
+
console.log(` Runtime Status: ā Unknown (requires 1mcp to be running)`);
|
|
191
|
+
console.log(` Note: Start 1mcp to see actual runtime status.`);
|
|
192
|
+
}
|
|
193
|
+
// Validation status
|
|
194
|
+
console.log(`\nā
Validation:`);
|
|
195
|
+
try {
|
|
196
|
+
validateServerConfiguration(config);
|
|
197
|
+
console.log(` Configuration: Valid ā`);
|
|
198
|
+
}
|
|
199
|
+
catch (error) {
|
|
200
|
+
console.log(` Configuration: Invalid ā`);
|
|
201
|
+
console.log(` Error: ${error instanceof Error ? error.message : error}`);
|
|
202
|
+
}
|
|
203
|
+
// Quick actions
|
|
204
|
+
console.log(`\nš Quick Actions:`);
|
|
205
|
+
if (config.disabled) {
|
|
206
|
+
console.log(` ⢠Enable: mcp enable ${name}`);
|
|
207
|
+
}
|
|
208
|
+
else {
|
|
209
|
+
console.log(` ⢠Disable: mcp disable ${name}`);
|
|
210
|
+
}
|
|
211
|
+
console.log(` ⢠Update: mcp update ${name} [options]`);
|
|
212
|
+
console.log(` ⢠Remove: server remove ${name}`);
|
|
213
|
+
}
|
|
214
|
+
/**
|
|
215
|
+
* Validate server configuration
|
|
216
|
+
*/
|
|
217
|
+
function validateServerConfiguration(config) {
|
|
218
|
+
if (!config.type) {
|
|
219
|
+
throw new Error('Server type is required');
|
|
220
|
+
}
|
|
221
|
+
switch (config.type) {
|
|
222
|
+
case 'stdio':
|
|
223
|
+
if (!config.command) {
|
|
224
|
+
throw new Error('Command is required for stdio servers');
|
|
225
|
+
}
|
|
226
|
+
break;
|
|
227
|
+
case 'http':
|
|
228
|
+
case 'sse':
|
|
229
|
+
if (!config.url) {
|
|
230
|
+
throw new Error(`URL is required for ${config.type} servers`);
|
|
231
|
+
}
|
|
232
|
+
try {
|
|
233
|
+
new URL(config.url);
|
|
234
|
+
}
|
|
235
|
+
catch {
|
|
236
|
+
throw new Error('Invalid URL format');
|
|
237
|
+
}
|
|
238
|
+
break;
|
|
239
|
+
default:
|
|
240
|
+
throw new Error(`Unsupported server type: ${config.type}`);
|
|
241
|
+
}
|
|
242
|
+
}
|
|
243
|
+
//# sourceMappingURL=status.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"status.js","sourceRoot":"","sources":["../../../src/commands/mcp/status.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
export interface UpdateCommandArgs {
|
|
2
|
+
name: string;
|
|
3
|
+
config?: string;
|
|
4
|
+
type?: string;
|
|
5
|
+
command?: string;
|
|
6
|
+
args?: string[];
|
|
7
|
+
url?: string;
|
|
8
|
+
env?: string[];
|
|
9
|
+
tags?: string;
|
|
10
|
+
timeout?: number;
|
|
11
|
+
cwd?: string;
|
|
12
|
+
headers?: string[];
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Update an existing MCP server configuration
|
|
16
|
+
*/
|
|
17
|
+
export declare function updateCommand(argv: UpdateCommandArgs): Promise<void>;
|
|
18
|
+
//# sourceMappingURL=update.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../../src/commands/mcp/update.ts"],"names":[],"mappings":"AAqBA,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;CACpB;AAED;;GAEG;AACH,wBAAsB,aAAa,CAAC,IAAI,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,CA8K1E"}
|