@1mcp/agent 0.16.0 → 0.17.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.
Files changed (156) hide show
  1. package/README.md +37 -2
  2. package/build/commands/app/backups.d.ts +17 -0
  3. package/build/commands/app/backups.d.ts.map +1 -0
  4. package/build/commands/app/backups.js +162 -0
  5. package/build/commands/app/backups.js.map +1 -0
  6. package/build/commands/app/consolidate.d.ts +21 -0
  7. package/build/commands/app/consolidate.d.ts.map +1 -0
  8. package/build/commands/app/consolidate.js +383 -0
  9. package/build/commands/app/consolidate.js.map +1 -0
  10. package/build/commands/app/discover.d.ts +16 -0
  11. package/build/commands/app/discover.d.ts.map +1 -0
  12. package/build/commands/app/discover.js +79 -0
  13. package/build/commands/app/discover.js.map +1 -0
  14. package/build/commands/app/index.d.ts +12 -0
  15. package/build/commands/app/index.d.ts.map +1 -0
  16. package/build/commands/app/index.js +274 -0
  17. package/build/commands/app/index.js.map +1 -0
  18. package/build/commands/app/list.d.ts +16 -0
  19. package/build/commands/app/list.d.ts.map +1 -0
  20. package/build/commands/app/list.js +95 -0
  21. package/build/commands/app/list.js.map +1 -0
  22. package/build/commands/app/restore.d.ts +21 -0
  23. package/build/commands/app/restore.d.ts.map +1 -0
  24. package/build/commands/app/restore.js +265 -0
  25. package/build/commands/app/restore.js.map +1 -0
  26. package/build/commands/app/status.d.ts +16 -0
  27. package/build/commands/app/status.d.ts.map +1 -0
  28. package/build/commands/app/status.js +224 -0
  29. package/build/commands/app/status.js.map +1 -0
  30. package/build/commands/mcp/add.d.ts +19 -0
  31. package/build/commands/mcp/add.d.ts.map +1 -0
  32. package/build/commands/mcp/add.js +135 -0
  33. package/build/commands/mcp/add.js.map +1 -0
  34. package/build/commands/mcp/enable.d.ts +13 -0
  35. package/build/commands/mcp/enable.d.ts.map +1 -0
  36. package/build/commands/mcp/enable.js +100 -0
  37. package/build/commands/mcp/enable.js.map +1 -0
  38. package/build/commands/mcp/index.d.ts +12 -0
  39. package/build/commands/mcp/index.d.ts.map +1 -0
  40. package/build/commands/mcp/index.js +351 -0
  41. package/build/commands/mcp/index.js.map +1 -0
  42. package/build/commands/mcp/list.d.ts +11 -0
  43. package/build/commands/mcp/list.d.ts.map +1 -0
  44. package/build/commands/mcp/list.js +144 -0
  45. package/build/commands/mcp/list.js.map +1 -0
  46. package/build/commands/mcp/remove.d.ts +10 -0
  47. package/build/commands/mcp/remove.d.ts.map +1 -0
  48. package/build/commands/mcp/remove.js +89 -0
  49. package/build/commands/mcp/remove.js.map +1 -0
  50. package/build/commands/mcp/status.d.ts +10 -0
  51. package/build/commands/mcp/status.d.ts.map +1 -0
  52. package/build/commands/mcp/status.js +243 -0
  53. package/build/commands/mcp/status.js.map +1 -0
  54. package/build/commands/mcp/update.d.ts +18 -0
  55. package/build/commands/mcp/update.d.ts.map +1 -0
  56. package/build/commands/mcp/update.js +157 -0
  57. package/build/commands/mcp/update.js.map +1 -0
  58. package/build/commands/mcp/utils/configUtils.d.ts +64 -0
  59. package/build/commands/mcp/utils/configUtils.d.ts.map +1 -0
  60. package/build/commands/mcp/utils/configUtils.js +266 -0
  61. package/build/commands/mcp/utils/configUtils.js.map +1 -0
  62. package/build/commands/mcp/utils/doubleHyphenParser.d.ts +32 -0
  63. package/build/commands/mcp/utils/doubleHyphenParser.d.ts.map +1 -0
  64. package/build/commands/mcp/utils/doubleHyphenParser.js +61 -0
  65. package/build/commands/mcp/utils/doubleHyphenParser.js.map +1 -0
  66. package/build/commands/mcp/utils/validation.d.ts +33 -0
  67. package/build/commands/mcp/utils/validation.d.ts.map +1 -0
  68. package/build/commands/mcp/utils/validation.js +235 -0
  69. package/build/commands/mcp/utils/validation.js.map +1 -0
  70. package/build/constants.d.ts +11 -2
  71. package/build/constants.d.ts.map +1 -1
  72. package/build/constants.js +15 -2
  73. package/build/constants.js.map +1 -1
  74. package/build/core/capabilities/asyncLoadingOrchestrator.d.ts +96 -0
  75. package/build/core/capabilities/asyncLoadingOrchestrator.d.ts.map +1 -0
  76. package/build/core/capabilities/asyncLoadingOrchestrator.js +256 -0
  77. package/build/core/capabilities/asyncLoadingOrchestrator.js.map +1 -0
  78. package/build/core/capabilities/capabilityAggregator.d.ts +114 -0
  79. package/build/core/capabilities/capabilityAggregator.d.ts.map +1 -0
  80. package/build/core/capabilities/capabilityAggregator.js +234 -0
  81. package/build/core/capabilities/capabilityAggregator.js.map +1 -0
  82. package/build/core/client/clientManager.d.ts +28 -0
  83. package/build/core/client/clientManager.d.ts.map +1 -1
  84. package/build/core/client/clientManager.js +120 -0
  85. package/build/core/client/clientManager.js.map +1 -1
  86. package/build/core/loading/loadingStateTracker.d.ts +128 -0
  87. package/build/core/loading/loadingStateTracker.d.ts.map +1 -0
  88. package/build/core/loading/loadingStateTracker.js +209 -0
  89. package/build/core/loading/loadingStateTracker.js.map +1 -0
  90. package/build/core/loading/mcpLoadingManager.d.ts +139 -0
  91. package/build/core/loading/mcpLoadingManager.d.ts.map +1 -0
  92. package/build/core/loading/mcpLoadingManager.js +296 -0
  93. package/build/core/loading/mcpLoadingManager.js.map +1 -0
  94. package/build/core/notifications/notificationManager.d.ts +111 -0
  95. package/build/core/notifications/notificationManager.d.ts.map +1 -0
  96. package/build/core/notifications/notificationManager.js +232 -0
  97. package/build/core/notifications/notificationManager.js.map +1 -0
  98. package/build/core/server/agentConfig.d.ts +50 -0
  99. package/build/core/server/agentConfig.d.ts.map +1 -1
  100. package/build/core/server/agentConfig.js +68 -1
  101. package/build/core/server/agentConfig.js.map +1 -1
  102. package/build/core/server/serverManager.d.ts +1 -0
  103. package/build/core/server/serverManager.d.ts.map +1 -1
  104. package/build/core/server/serverManager.js +3 -0
  105. package/build/core/server/serverManager.js.map +1 -1
  106. package/build/index.js +115 -32
  107. package/build/index.js.map +1 -1
  108. package/build/server.d.ts +23 -2
  109. package/build/server.d.ts.map +1 -1
  110. package/build/server.js +83 -10
  111. package/build/server.js.map +1 -1
  112. package/build/transport/http/middlewares/mcpAvailabilityMiddleware.d.ts +79 -0
  113. package/build/transport/http/middlewares/mcpAvailabilityMiddleware.d.ts.map +1 -0
  114. package/build/transport/http/middlewares/mcpAvailabilityMiddleware.js +243 -0
  115. package/build/transport/http/middlewares/mcpAvailabilityMiddleware.js.map +1 -0
  116. package/build/transport/http/routes/healthRoutes.d.ts +2 -1
  117. package/build/transport/http/routes/healthRoutes.d.ts.map +1 -1
  118. package/build/transport/http/routes/healthRoutes.js +170 -1
  119. package/build/transport/http/routes/healthRoutes.js.map +1 -1
  120. package/build/transport/http/routes/sseRoutes.d.ts +2 -1
  121. package/build/transport/http/routes/sseRoutes.d.ts.map +1 -1
  122. package/build/transport/http/routes/sseRoutes.js +13 -1
  123. package/build/transport/http/routes/sseRoutes.js.map +1 -1
  124. package/build/transport/http/routes/streamableHttpRoutes.d.ts +2 -1
  125. package/build/transport/http/routes/streamableHttpRoutes.d.ts.map +1 -1
  126. package/build/transport/http/routes/streamableHttpRoutes.js +13 -1
  127. package/build/transport/http/routes/streamableHttpRoutes.js.map +1 -1
  128. package/build/transport/http/server.d.ts +7 -1
  129. package/build/transport/http/server.d.ts.map +1 -1
  130. package/build/transport/http/server.js +15 -4
  131. package/build/transport/http/server.js.map +1 -1
  132. package/build/transport/transportFactory.d.ts +4 -0
  133. package/build/transport/transportFactory.d.ts.map +1 -1
  134. package/build/transport/transportFactory.js +1 -1
  135. package/build/transport/transportFactory.js.map +1 -1
  136. package/build/utils/appDiscovery.d.ts +75 -0
  137. package/build/utils/appDiscovery.d.ts.map +1 -0
  138. package/build/utils/appDiscovery.js +358 -0
  139. package/build/utils/appDiscovery.js.map +1 -0
  140. package/build/utils/appPresets.d.ts +88 -0
  141. package/build/utils/appPresets.d.ts.map +1 -0
  142. package/build/utils/appPresets.js +430 -0
  143. package/build/utils/appPresets.js.map +1 -0
  144. package/build/utils/backupManager.d.ts +61 -0
  145. package/build/utils/backupManager.d.ts.map +1 -0
  146. package/build/utils/backupManager.js +314 -0
  147. package/build/utils/backupManager.js.map +1 -0
  148. package/build/utils/urlDetection.d.ts +35 -0
  149. package/build/utils/urlDetection.d.ts.map +1 -0
  150. package/build/utils/urlDetection.js +115 -0
  151. package/build/utils/urlDetection.js.map +1 -0
  152. package/build/utils/validationHelpers.d.ts +62 -0
  153. package/build/utils/validationHelpers.d.ts.map +1 -0
  154. package/build/utils/validationHelpers.js +252 -0
  155. package/build/utils/validationHelpers.js.map +1 -0
  156. 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"}