@global-packages/mcp-kit 1.0.1 → 1.0.4

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 (120) hide show
  1. package/dist/commands/add.d.ts.map +1 -1
  2. package/dist/commands/add.js +117 -71
  3. package/dist/commands/add.js.map +1 -1
  4. package/dist/commands/backup.d.ts.map +1 -1
  5. package/dist/commands/backup.js +27 -27
  6. package/dist/commands/backup.js.map +1 -1
  7. package/dist/commands/completion.d.ts.map +1 -1
  8. package/dist/commands/completion.js +50 -35
  9. package/dist/commands/completion.js.map +1 -1
  10. package/dist/commands/doctor.d.ts +5 -1
  11. package/dist/commands/doctor.d.ts.map +1 -1
  12. package/dist/commands/doctor.js +128 -104
  13. package/dist/commands/doctor.js.map +1 -1
  14. package/dist/commands/env-check.d.ts.map +1 -1
  15. package/dist/commands/env-check.js +63 -40
  16. package/dist/commands/env-check.js.map +1 -1
  17. package/dist/commands/export.d.ts +6 -4
  18. package/dist/commands/export.d.ts.map +1 -1
  19. package/dist/commands/export.js +52 -41
  20. package/dist/commands/export.js.map +1 -1
  21. package/dist/commands/import.d.ts.map +1 -1
  22. package/dist/commands/import.js +109 -74
  23. package/dist/commands/import.js.map +1 -1
  24. package/dist/commands/info.d.ts.map +1 -1
  25. package/dist/commands/info.js +60 -56
  26. package/dist/commands/info.js.map +1 -1
  27. package/dist/commands/init.d.ts +5 -2
  28. package/dist/commands/init.d.ts.map +1 -1
  29. package/dist/commands/init.js +189 -87
  30. package/dist/commands/init.js.map +1 -1
  31. package/dist/commands/install.d.ts.map +1 -1
  32. package/dist/commands/install.js +56 -48
  33. package/dist/commands/install.js.map +1 -1
  34. package/dist/commands/list.d.ts +5 -2
  35. package/dist/commands/list.d.ts.map +1 -1
  36. package/dist/commands/list.js +103 -45
  37. package/dist/commands/list.js.map +1 -1
  38. package/dist/commands/open.d.ts.map +1 -1
  39. package/dist/commands/open.js +31 -23
  40. package/dist/commands/open.js.map +1 -1
  41. package/dist/commands/remove.d.ts.map +1 -1
  42. package/dist/commands/remove.js +60 -43
  43. package/dist/commands/remove.js.map +1 -1
  44. package/dist/commands/reset.d.ts.map +1 -1
  45. package/dist/commands/reset.js +52 -48
  46. package/dist/commands/reset.js.map +1 -1
  47. package/dist/commands/search.d.ts.map +1 -1
  48. package/dist/commands/search.js +52 -20
  49. package/dist/commands/search.js.map +1 -1
  50. package/dist/commands/status.d.ts.map +1 -1
  51. package/dist/commands/status.js +94 -76
  52. package/dist/commands/status.js.map +1 -1
  53. package/dist/commands/toggle.d.ts.map +1 -1
  54. package/dist/commands/toggle.js +22 -24
  55. package/dist/commands/toggle.js.map +1 -1
  56. package/dist/commands/update.d.ts.map +1 -1
  57. package/dist/commands/update.js +86 -62
  58. package/dist/commands/update.js.map +1 -1
  59. package/dist/commands/validate.d.ts.map +1 -1
  60. package/dist/commands/validate.js +43 -37
  61. package/dist/commands/validate.js.map +1 -1
  62. package/dist/constants.d.ts +3 -1
  63. package/dist/constants.d.ts.map +1 -1
  64. package/dist/constants.js +377 -78
  65. package/dist/constants.js.map +1 -1
  66. package/dist/core/credentials.d.ts +15 -2
  67. package/dist/core/credentials.d.ts.map +1 -1
  68. package/dist/core/credentials.js +205 -116
  69. package/dist/core/credentials.js.map +1 -1
  70. package/dist/core/detector.d.ts +28 -2
  71. package/dist/core/detector.d.ts.map +1 -1
  72. package/dist/core/detector.js +101 -60
  73. package/dist/core/detector.js.map +1 -1
  74. package/dist/core/registry.d.ts +25 -1
  75. package/dist/core/registry.d.ts.map +1 -1
  76. package/dist/core/registry.js +45 -33
  77. package/dist/core/registry.js.map +1 -1
  78. package/dist/core/validator.d.ts +18 -2
  79. package/dist/core/validator.d.ts.map +1 -1
  80. package/dist/core/validator.js +53 -30
  81. package/dist/core/validator.js.map +1 -1
  82. package/dist/core/writer.d.ts +19 -1
  83. package/dist/core/writer.d.ts.map +1 -1
  84. package/dist/core/writer.js +41 -35
  85. package/dist/core/writer.js.map +1 -1
  86. package/dist/index.js +233 -122
  87. package/dist/index.js.map +1 -1
  88. package/dist/postinstall.js +25 -30
  89. package/dist/postinstall.js.map +1 -1
  90. package/dist/prompts/dev-prompts.d.ts +10 -2
  91. package/dist/prompts/dev-prompts.d.ts.map +1 -1
  92. package/dist/prompts/dev-prompts.js +87 -31
  93. package/dist/prompts/dev-prompts.js.map +1 -1
  94. package/dist/prompts/non-dev-prompts.d.ts +16 -2
  95. package/dist/prompts/non-dev-prompts.d.ts.map +1 -1
  96. package/dist/prompts/non-dev-prompts.js +90 -35
  97. package/dist/prompts/non-dev-prompts.js.map +1 -1
  98. package/dist/prompts/shared-prompts.d.ts +10 -1
  99. package/dist/prompts/shared-prompts.d.ts.map +1 -1
  100. package/dist/prompts/shared-prompts.js +66 -43
  101. package/dist/prompts/shared-prompts.js.map +1 -1
  102. package/dist/types.d.ts +22 -6
  103. package/dist/types.d.ts.map +1 -1
  104. package/dist/types.js +4 -2
  105. package/dist/types.js.map +1 -1
  106. package/dist/utils/fs.d.ts +36 -4
  107. package/dist/utils/fs.d.ts.map +1 -1
  108. package/dist/utils/fs.js +92 -28
  109. package/dist/utils/fs.js.map +1 -1
  110. package/dist/utils/logger.d.ts.map +1 -1
  111. package/dist/utils/logger.js +18 -24
  112. package/dist/utils/logger.js.map +1 -1
  113. package/dist/utils/network.d.ts +12 -1
  114. package/dist/utils/network.d.ts.map +1 -1
  115. package/dist/utils/network.js +37 -9
  116. package/dist/utils/network.js.map +1 -1
  117. package/dist/utils/spinner.js +10 -19
  118. package/dist/utils/spinner.js.map +1 -1
  119. package/package.json +62 -27
  120. package/src/postinstall.ts +121 -0
@@ -1,117 +1,219 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.runInit = runInit;
7
- const fs_extra_1 = __importDefault(require("fs-extra"));
8
- const constants_1 = require("../constants");
9
- const detector_1 = require("../core/detector");
10
- const registry_1 = require("../core/registry");
11
- const writer_1 = require("../core/writer");
12
- const credentials_1 = require("../core/credentials");
13
- const dev_prompts_1 = require("../prompts/dev-prompts");
14
- const non_dev_prompts_1 = require("../prompts/non-dev-prompts");
15
- const shared_prompts_1 = require("../prompts/shared-prompts");
16
- const logger_1 = require("../utils/logger");
17
- const packageJson = require("../../package.json");
1
+ import chalk from 'chalk';
2
+ import { detectVsCodePath, detectOS, isNodeVersionCompatible, detectExistingMcps } from '../core/detector.js';
3
+ import { addServerToMcpJson } from '../core/writer.js';
4
+ import { storeCredential, buildEnvRefValue, ensureGitignored, getEnvFilePath } from '../core/credentials.js';
5
+ import { getMcpsForProfile } from '../core/registry.js';
6
+ import { askCredentialStorage, askMcpSelection } from '../prompts/shared-prompts.js';
7
+ import { collectDevAnswers } from '../prompts/dev-prompts.js';
8
+ import { collectNonDevAnswers } from '../prompts/non-dev-prompts.js';
9
+ import { log, printTable } from '../utils/logger.js';
10
+ import { safeReadJSON, safeWriteJSON, ensureDir } from '../utils/fs.js';
11
+ import { MCP_KIT_META_PATH, MCP_KIT_DIR } from '../constants.js';
12
+ import { createRequire } from 'node:module';
13
+ import path from 'node:path';
14
+ const _require = createRequire(import.meta.url);
15
+ const pkg = _require('../../package.json');
16
+ //
17
+ // Helpers
18
+ //
19
+ /**
20
+ * Replace ${KEY} placeholders in an args array with actual values.
21
+ */
18
22
  function buildArgs(mcp, answers) {
19
- if (mcp.id === "filesystem" && answers.FILESYSTEM_ALLOWED_PATH) {
20
- return [...mcp.args, answers.FILESYSTEM_ALLOWED_PATH];
23
+ return mcp.args.map(arg => arg.replace(/\$\{([^}]+)\}/g, (_, key) => answers[key] ?? ''));
24
+ }
25
+ /**
26
+ * Build the resolved command for an MCP, handling any ${KEY} in command.
27
+ */
28
+ function buildCommand(mcp, answers) {
29
+ return mcp.command.replace(/\$\{([^}]+)\}/g, (_, key) => answers[key] ?? mcp.command);
30
+ }
31
+ /**
32
+ * Determine which env var keys are embedded in args (via ${KEY} placeholders).
33
+ */
34
+ function getArgEmbeddedKeys(mcp) {
35
+ const keys = new Set();
36
+ const allText = [...mcp.args, mcp.command].join(' ');
37
+ for (const match of allText.matchAll(/\$\{([^}]+)\}/g)) {
38
+ keys.add(match[1]);
21
39
  }
22
- return [...mcp.args];
40
+ return keys;
23
41
  }
42
+ /**
43
+ * Build the env record for an MCP server entry.
44
+ */
24
45
  function buildEnvRecord(mcp, answers, storage) {
46
+ const argEmbedded = getArgEmbeddedKeys(mcp);
25
47
  const env = {};
26
48
  for (const envVar of mcp.envVars) {
27
- const rawValue = answers[envVar.key];
28
- if (!rawValue && !envVar.required) {
29
- continue;
30
- }
31
- env[envVar.key] = (0, credentials_1.buildEnvRefValue)(envVar.key, storage, rawValue);
49
+ if (argEmbedded.has(envVar.key))
50
+ continue; // already in args
51
+ const value = answers[envVar.key] ?? '';
52
+ if (!value && !envVar.required)
53
+ continue; // skip empty optional
54
+ env[envVar.key] = buildEnvRefValue(envVar.key, storage, value);
32
55
  }
33
56
  return env;
34
57
  }
35
- async function runInit(options) {
58
+ export async function runInit(options) {
36
59
  try {
60
+ // Validate flags
37
61
  if (!options.dev && !options.nonDev) {
38
- logger_1.log.error("Usage: mcp-kit init --dev OR mcp-kit init --non-dev");
62
+ log.error('You must specify either --dev or --non-dev');
63
+ log.muted(' Usage: mcp-kit init --dev');
64
+ log.muted(' mcp-kit init --non-dev');
39
65
  process.exit(1);
40
66
  }
41
67
  if (options.dev && options.nonDev) {
42
- logger_1.log.error("Use either --dev or --non-dev, not both");
68
+ log.error('Use either --dev or --non-dev, not both');
43
69
  process.exit(1);
44
70
  }
45
- if (!(0, detector_1.isNodeVersionCompatible)()) {
46
- logger_1.log.error(`Node ${(0, detector_1.detectNodeVersion)()} detected. Node >= 18.0.0 is required.`);
71
+ // Node version check
72
+ if (!isNodeVersionCompatible()) {
73
+ log.error(`Node.js >= 18.0.0 is required. Current: ${process.version}`);
47
74
  process.exit(1);
48
75
  }
49
- const mode = options.dev ? "dev" : "non-dev";
50
- logger_1.log.header(`🔧 mcp-kit MCP Configuration Wizard\nMode: ${mode === "dev" ? "Developer" : "Non-Developer"}`);
51
- const detected = await (0, detector_1.detectVsCodePath)();
52
- logger_1.log.success(`Detected OS: ${(0, detector_1.detectOS)()}`);
53
- logger_1.log.success(`Found .vscode at: ${detected.vscodeFolderPath} (source: ${detected.source})`);
54
- const existing = await (0, detector_1.detectExistingMcps)(detected.mcpJsonPath);
55
- if (existing.length > 0) {
56
- logger_1.log.warn(`Found existing config: ${existing.join(", ")}`);
76
+ const profileMode = options.dev ? 'dev' : 'non-dev';
77
+ const modeLabel = profileMode === 'dev' ? 'Developer' : 'Non-Developer';
78
+ log.header(`\n mcp-kit - MCP Configuration Wizard\n Mode: ${modeLabel}`);
79
+ // Detect .vscode path
80
+ const vscodePaths = await detectVsCodePath();
81
+ const currentOS = detectOS();
82
+ log.success(`Detected OS: ${currentOS}`);
83
+ const sourceLabel = vscodePaths.source === 'project'
84
+ ? 'project .vscode folder'
85
+ : vscodePaths.source === 'global'
86
+ ? 'VS Code global config'
87
+ : 'created new .vscode folder';
88
+ log.success(`Found ${sourceLabel} at: ${vscodePaths.vscodeFolderPath}`);
89
+ // Check for existing config
90
+ const existingMcps = await detectExistingMcps(vscodePaths.mcpJsonPath);
91
+ if (existingMcps.length > 0) {
92
+ log.warn(`Found existing MCP config: ${existingMcps.join(', ')}`);
93
+ }
94
+ // Ask credential storage mode
95
+ const storage = await askCredentialStorage();
96
+ // Get MCP list for this profile
97
+ const profileMcps = getMcpsForProfile(profileMode);
98
+ // Ask which MCPs to configure
99
+ const selectedIds = await askMcpSelection(profileMcps, existingMcps);
100
+ if (selectedIds.length === 0) {
101
+ log.warn('No MCPs selected. Nothing to configure.');
102
+ return;
103
+ }
104
+ const selectedMcps = profileMcps.filter(m => selectedIds.includes(m.id));
105
+ // Collect answers
106
+ const answers = profileMode === 'dev'
107
+ ? await collectDevAnswers(selectedMcps, storage)
108
+ : await collectNonDevAnswers(selectedMcps, storage);
109
+ const envFilePath = getEnvFilePath(vscodePaths.vscodeFolderPath);
110
+ log.blank();
111
+ // DRY-RUN: preview only, do not write
112
+ if (options.dryRun) {
113
+ log.header('Dry-run preview - no files will be changed');
114
+ const rows = selectedMcps.map(mcp => {
115
+ const mcpAnswers = answers.get(mcp.id) ?? {};
116
+ const entry = {
117
+ type: 'stdio',
118
+ command: buildCommand(mcp, mcpAnswers),
119
+ args: buildArgs(mcp, mcpAnswers),
120
+ env: buildEnvRecord(mcp, mcpAnswers, storage),
121
+ };
122
+ if (entry.env && Object.keys(entry.env).length === 0)
123
+ delete entry.env;
124
+ return [
125
+ chalk.cyan(mcp.id),
126
+ mcp.name,
127
+ entry.command,
128
+ (entry.args ?? []).join(' '),
129
+ Object.keys(entry.env ?? {}).join(', ') || chalk.gray('-'),
130
+ ];
131
+ });
132
+ printTable(['ID', 'Name', 'Command', 'Args', 'Env Vars'], rows);
133
+ log.blank();
134
+ log.muted(`Would write to: ${vscodePaths.mcpJsonPath}`);
135
+ log.muted('Remove --dry-run to apply these changes.');
136
+ return;
57
137
  }
58
- const storage = await (0, shared_prompts_1.askCredentialStorage)();
59
- const available = (0, registry_1.getMcpsForProfile)(mode);
60
- const selectedIds = await (0, shared_prompts_1.askMcpSelection)(available, existing);
61
- const selected = available.filter((mcp) => selectedIds.includes(mcp.id));
62
- const answers = mode === "dev"
63
- ? await (0, dev_prompts_1.collectDevAnswers)(selected, storage)
64
- : await (0, non_dev_prompts_1.collectNonDevAnswers)(selected, storage);
65
- for (const mcp of selected) {
66
- const mcpAnswers = answers.get(mcp.id) || {};
67
- for (const envVar of mcp.envVars.filter((item) => item.secret)) {
68
- const value = mcpAnswers[envVar.key];
69
- if (value) {
70
- await (0, credentials_1.storeCredential)(envVar.key, value, storage);
138
+ // LIVE: write to mcp.json
139
+ log.step('Writing mcp.json entries...');
140
+ const configured = [];
141
+ const failed = [];
142
+ for (const mcp of selectedMcps) {
143
+ try {
144
+ const mcpAnswers = answers.get(mcp.id) ?? {};
145
+ const argEmbedded = getArgEmbeddedKeys(mcp);
146
+ // Store secrets
147
+ for (const envVar of mcp.envVars) {
148
+ if (argEmbedded.has(envVar.key))
149
+ continue;
150
+ const value = mcpAnswers[envVar.key];
151
+ if (value && envVar.secret && storage !== 'inline') {
152
+ await storeCredential(envVar.key, value, storage, envFilePath);
153
+ }
71
154
  }
155
+ // Build entry
156
+ const entry = {
157
+ type: 'stdio',
158
+ command: buildCommand(mcp, mcpAnswers),
159
+ args: buildArgs(mcp, mcpAnswers),
160
+ env: buildEnvRecord(mcp, mcpAnswers, storage),
161
+ };
162
+ // Remove empty env block
163
+ if (entry.env && Object.keys(entry.env).length === 0) {
164
+ delete entry.env;
165
+ }
166
+ await addServerToMcpJson(vscodePaths.mcpJsonPath, mcp.id, entry);
167
+ configured.push(mcp.name);
168
+ }
169
+ catch (err) {
170
+ const message = err instanceof Error ? err.message : String(err);
171
+ log.error(`Failed to configure ${mcp.name}: ${message}`);
172
+ failed.push(mcp.name);
72
173
  }
73
- const entry = {
74
- command: mcp.command,
75
- args: buildArgs(mcp, mcpAnswers),
76
- env: buildEnvRecord(mcp, mcpAnswers, storage)
77
- };
78
- await (0, writer_1.addServerToMcpJson)(detected.mcpJsonPath, mcp.id, entry);
79
174
  }
80
- if (storage === "dotenv") {
81
- await (0, credentials_1.ensureGitignore)(process.cwd());
175
+ // Ensure .gitignore for dotenv mode
176
+ if (storage === 'dotenv') {
177
+ const projectDir = path.dirname(vscodePaths.vscodeFolderPath);
178
+ await ensureGitignored(projectDir);
82
179
  }
83
- await fs_extra_1.default.mkdirp(require("node:path").dirname(constants_1.MCP_KIT_META_PATH));
84
- await fs_extra_1.default.writeJSON(constants_1.MCP_KIT_META_PATH, {
85
- installedAt: new Date().toISOString(),
180
+ // Update meta.json
181
+ await ensureDir(MCP_KIT_DIR);
182
+ const existingMeta = await safeReadJSON(MCP_KIT_META_PATH) ?? {};
183
+ const currentInstalled = existingMeta.installedMcps ?? [];
184
+ const meta = {
185
+ ...existingMeta,
186
+ installedAt: existingMeta.installedAt ?? new Date().toISOString(),
86
187
  lastUpdated: new Date().toISOString(),
87
- profileMode: mode,
88
- vscodePath: detected.vscodeFolderPath,
188
+ profileMode,
189
+ vscodePath: vscodePaths.mcpJsonPath,
89
190
  credentialStorage: storage,
90
- installedMcps: selected.map((mcp) => mcp.id),
91
- mcpKitVersion: packageJson.version
92
- }, { spaces: 2 });
93
- console.log("─────────────────────────────────────");
94
- logger_1.log.success("mcp-kit setup complete!");
95
- console.log("─────────────────────────────────────");
96
- console.log("Configured:");
97
- for (const mcp of selected) {
98
- logger_1.log.success(mcp.name);
99
- }
100
- console.log(`\nWritten to: ${detected.mcpJsonPath}`);
101
- console.log(`Credentials: ${storage === "keychain" ? "System Keychain" : storage === "dotenv" ? ".env file" : "Inline"}`);
102
- console.log("\nNext step: Reload VS Code window");
103
- console.log('Mac/Linux: Cmd+Shift+P → "Reload Window"');
104
- console.log('Windows: Ctrl+Shift+P → "Reload Window"');
105
- console.log("─────────────────────────────────────");
106
- process.exit(0);
191
+ installedMcps: [...new Set([...currentInstalled, ...selectedIds])],
192
+ mcpKitVersion: pkg.version,
193
+ };
194
+ await safeWriteJSON(MCP_KIT_META_PATH, meta);
195
+ // Print final summary
196
+ log.blank();
197
+ log.header('✓ mcp-kit setup complete!');
198
+ log.blank();
199
+ const summaryRows = [
200
+ ...configured.map(n => [chalk.green('✓'), n, 'configured']),
201
+ ...failed.map(n => [chalk.red('✗'), n, 'failed']),
202
+ ];
203
+ printTable(['', 'MCP', 'Result'], summaryRows);
204
+ log.muted(`Written to: ${vscodePaths.mcpJsonPath}`);
205
+ log.muted(`Credentials: ${storage}`);
206
+ log.blank();
207
+ log.step('Next step: Reload VS Code window');
208
+ log.muted(currentOS === 'windows'
209
+ ? 'Windows: Ctrl+Shift+P → "Reload Window"'
210
+ : 'Mac/Linux: Cmd+Shift+P → "Reload Window"');
107
211
  }
108
212
  catch (err) {
109
- const message = err instanceof Error ? err.message : "Unknown error";
110
- logger_1.log.error(`Init failed: ${message}`);
111
- logger_1.log.muted("Suggestion: run `mcp-kit doctor` or retry with `DEBUG=1` for details.");
112
- if (process.env.DEBUG && err instanceof Error) {
113
- console.error(err.stack);
114
- }
213
+ const message = err instanceof Error ? err.message : String(err);
214
+ log.error(`Init failed: ${message}`);
215
+ if (process.env['DEBUG'])
216
+ console.error(err);
115
217
  process.exit(1);
116
218
  }
117
219
  }
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../../src/commands/install.ts"],"names":[],"mappings":"AAUA,wBAAsB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAyDhD"}
1
+ {"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../../src/commands/install.ts"],"names":[],"mappings":"AAeA,wBAAsB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CA2EhD"}
@@ -1,68 +1,76 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.runInstall = runInstall;
7
- const fs_extra_1 = __importDefault(require("fs-extra"));
8
- const node_path_1 = __importDefault(require("node:path"));
9
- const node_child_process_1 = require("node:child_process");
10
- const constants_1 = require("../constants");
11
- const detector_1 = require("../core/detector");
12
- const spinner_1 = require("../utils/spinner");
13
- const logger_1 = require("../utils/logger");
14
- const packageJson = require("../../package.json");
15
- async function runInstall() {
1
+ import { execSync } from 'node:child_process';
2
+ import { createRequire } from 'node:module';
3
+ import { appendText, ensureDir, safeWriteJSON } from '../utils/fs.js';
4
+ import { log } from '../utils/logger.js';
5
+ import { startSpinner, succeedSpinner, failSpinner } from '../utils/spinner.js';
6
+ import { isNodeVersionCompatible } from '../core/detector.js';
7
+ import { MCP_REGISTRY, MCP_KIT_META_PATH, MCP_KIT_DIR, MCP_KIT_INSTALL_LOG } from '../constants.js';
8
+ const _require = createRequire(import.meta.url);
9
+ const pkg = _require('../../package.json');
10
+ //
11
+ // mcp-kit install
12
+ //
13
+ export async function runInstall() {
16
14
  try {
17
- logger_1.log.header("📦 Pre-installing MCP packages...");
18
- if (!(0, detector_1.isNodeVersionCompatible)()) {
19
- logger_1.log.error("Node >= 18.0.0 is required.");
20
- logger_1.log.muted("Please upgrade Node and re-run `mcp-kit install`.");
15
+ log.header('mcp-kit - Pre-install MCP Packages');
16
+ // Node version check
17
+ if (!isNodeVersionCompatible()) {
18
+ log.error(`Node.js >= 18.0.0 is required. Current: ${process.version}`);
19
+ log.step('Download the latest Node.js from: https://nodejs.org');
21
20
  process.exit(1);
22
21
  }
22
+ await ensureDir(MCP_KIT_DIR);
23
+ const succeeded = [];
23
24
  const failed = [];
24
- let succeeded = 0;
25
- for (const mcp of constants_1.MCP_REGISTRY) {
26
- const spinner = (0, spinner_1.startSpinner)(`Installing ${mcp.name}`);
25
+ for (const mcp of MCP_REGISTRY) {
26
+ // SonarQube uses a JAR file, not an npm package - skip global install
27
+ if (mcp.command === 'java') {
28
+ log.muted(` Skipping ${mcp.name} (JAR-based, not an npm package)`);
29
+ succeeded.push(mcp.name);
30
+ continue;
31
+ }
32
+ // Python-based servers (e.g. AWS MCP) run via uv - skip npm install
33
+ if (mcp.command === 'uvx') {
34
+ log.muted(` Skipping ${mcp.name} (Python/uvx-based - install uv via: brew install uv)`);
35
+ succeeded.push(mcp.name);
36
+ continue;
37
+ }
38
+ const spinner = startSpinner(`Installing ${mcp.name} (${mcp.npmPackage})...`);
27
39
  try {
28
- (0, node_child_process_1.execSync)(`npm install -g ${mcp.npmPackage}`, { stdio: "ignore" });
29
- (0, spinner_1.succeedSpinner)(spinner, `Installed ${mcp.name}`);
30
- succeeded += 1;
40
+ execSync(`npm install -g ${mcp.npmPackage}`, { stdio: 'ignore' });
41
+ succeedSpinner(spinner, `Installed ${mcp.name}`);
42
+ succeeded.push(mcp.name);
31
43
  }
32
44
  catch (err) {
33
- const error = err instanceof Error ? err.message : "Unknown error";
34
- (0, spinner_1.failSpinner)(spinner, `Failed: ${mcp.name} — ${error}`);
35
- failed.push({ id: mcp.id, error });
45
+ const message = err instanceof Error ? err.message : String(err);
46
+ failSpinner(spinner, `Failed: ${mcp.name}`);
47
+ failed.push(mcp.name);
48
+ await appendText(MCP_KIT_INSTALL_LOG, `[${new Date().toISOString()}] ${mcp.name} (${mcp.npmPackage}): ${message}\n`);
36
49
  }
37
50
  }
38
- await fs_extra_1.default.mkdirp(node_path_1.default.dirname(constants_1.MCP_KIT_META_PATH));
51
+ // Write meta.json
39
52
  const meta = {
40
53
  installedAt: new Date().toISOString(),
41
54
  lastUpdated: new Date().toISOString(),
42
- profileMode: "dev",
43
- vscodePath: "",
44
- credentialStorage: "keychain",
45
- installedMcps: constants_1.MCP_REGISTRY.map((m) => m.id),
46
- mcpKitVersion: packageJson.version
55
+ mcpKitVersion: pkg.version,
47
56
  };
48
- await fs_extra_1.default.writeJSON(constants_1.MCP_KIT_META_PATH, meta, { spaces: 2 });
57
+ await safeWriteJSON(MCP_KIT_META_PATH, meta);
58
+ log.blank();
59
+ log.success(`Packages installed: ${succeeded.length}`);
49
60
  if (failed.length > 0) {
50
- const errorLogPath = node_path_1.default.join(node_path_1.default.dirname(constants_1.MCP_KIT_META_PATH), "install-errors.log");
51
- const lines = failed.map((entry) => `${new Date().toISOString()} ${entry.id}: ${entry.error}`).join("\n");
52
- await fs_extra_1.default.appendFile(errorLogPath, `${lines}\n`, "utf8");
61
+ log.warn(`Failed packages (${failed.length}): ${failed.join(', ')}`);
62
+ log.muted(`See install log: ${MCP_KIT_INSTALL_LOG}`);
53
63
  }
54
- logger_1.log.success(`Succeeded: ${succeeded} packages`);
55
- logger_1.log.warn(`Failed: ${failed.length} packages${failed.length ? ` (${failed.map((f) => f.id).join(", ")})` : ""}`);
56
- logger_1.log.info("Run `mcp-kit init --dev` or `mcp-kit init --non-dev` to configure.");
57
- process.exit(0);
64
+ log.blank();
65
+ log.info('Next step - configure your MCP servers:');
66
+ log.code('mcp-kit init --dev # for developers');
67
+ log.code('mcp-kit init --non-dev # for non-developers');
58
68
  }
59
69
  catch (err) {
60
- const message = err instanceof Error ? err.message : "Unknown error";
61
- logger_1.log.error(`Install failed: ${message}`);
62
- logger_1.log.muted("Try again with stable network access or verify npm permissions.");
63
- if (process.env.DEBUG && err instanceof Error) {
64
- console.error(err.stack);
65
- }
70
+ const message = err instanceof Error ? err.message : String(err);
71
+ log.error(`Install failed: ${message}`);
72
+ if (process.env['DEBUG'])
73
+ console.error(err);
66
74
  process.exit(1);
67
75
  }
68
76
  }
@@ -1 +1 @@
1
- {"version":3,"file":"install.js","sourceRoot":"","sources":["../../src/commands/install.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"install.js","sourceRoot":"","sources":["../../src/commands/install.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AACtE,OAAO,EAAE,GAAG,EAAE,MAAM,oBAAoB,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAChF,OAAO,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAEpG,MAAM,QAAQ,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAChD,MAAM,GAAG,GAAG,QAAQ,CAAC,oBAAoB,CAAwB,CAAC;AAElE,EAAE;AACF,kBAAkB;AAClB,EAAE;AAEF,MAAM,CAAC,KAAK,UAAU,UAAU;IAC9B,IAAI,CAAC;QACH,GAAG,CAAC,MAAM,CAAC,oCAAoC,CAAC,CAAC;QAEjD,qBAAqB;QACrB,IAAI,CAAC,uBAAuB,EAAE,EAAE,CAAC;YAC/B,GAAG,CAAC,KAAK,CAAC,2CAA2C,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;YACxE,GAAG,CAAC,IAAI,CAAC,sDAAsD,CAAC,CAAC;YACjE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,MAAM,SAAS,CAAC,WAAW,CAAC,CAAC;QAE7B,MAAM,SAAS,GAAa,EAAE,CAAC;QAC/B,MAAM,MAAM,GAAa,EAAE,CAAC;QAE5B,KAAK,MAAM,GAAG,IAAI,YAAY,EAAE,CAAC;YAC/B,sEAAsE;YACtE,IAAI,GAAG,CAAC,OAAO,KAAK,MAAM,EAAE,CAAC;gBAC3B,GAAG,CAAC,KAAK,CAAC,cAAc,GAAG,CAAC,IAAI,kCAAkC,CAAC,CAAC;gBACpE,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBACzB,SAAS;YACX,CAAC;YAED,oEAAoE;YACpE,IAAI,GAAG,CAAC,OAAO,KAAK,KAAK,EAAE,CAAC;gBAC1B,GAAG,CAAC,KAAK,CAAC,cAAc,GAAG,CAAC,IAAI,uDAAuD,CAAC,CAAC;gBACzF,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBACzB,SAAS;YACX,CAAC;YAED,MAAM,OAAO,GAAG,YAAY,CAAC,cAAc,GAAG,CAAC,IAAI,KAAK,GAAG,CAAC,UAAU,MAAM,CAAC,CAAC;YAC9E,IAAI,CAAC;gBACH,QAAQ,CAAC,kBAAkB,GAAG,CAAC,UAAU,EAAE,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;gBAClE,cAAc,CAAC,OAAO,EAAE,aAAa,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;gBACjD,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAC3B,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBACjE,WAAW,CAAC,OAAO,EAAE,WAAW,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;gBAC5C,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBACtB,MAAM,UAAU,CACd,mBAAmB,EACnB,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,KAAK,GAAG,CAAC,IAAI,KAAK,GAAG,CAAC,UAAU,MAAM,OAAO,IAAI,CAC9E,CAAC;YACJ,CAAC;QACH,CAAC;QAED,kBAAkB;QAClB,MAAM,IAAI,GAAG;YACX,WAAW,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACrC,WAAW,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACrC,aAAa,EAAE,GAAG,CAAC,OAAO;SAC3B,CAAC;QAEF,MAAM,aAAa,CAAC,iBAAiB,EAAE,IAAI,CAAC,CAAC;QAE7C,GAAG,CAAC,KAAK,EAAE,CAAC;QACZ,GAAG,CAAC,OAAO,CAAC,uBAAuB,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC;QAEvD,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtB,GAAG,CAAC,IAAI,CAAC,oBAAoB,MAAM,CAAC,MAAM,MAAM,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACrE,GAAG,CAAC,KAAK,CAAC,oBAAoB,mBAAmB,EAAE,CAAC,CAAC;QACvD,CAAC;QAED,GAAG,CAAC,KAAK,EAAE,CAAC;QACZ,GAAG,CAAC,IAAI,CAAC,yCAAyC,CAAC,CAAC;QACpD,GAAG,CAAC,IAAI,CAAC,0CAA0C,CAAC,CAAC;QACrD,GAAG,CAAC,IAAI,CAAC,8CAA8C,CAAC,CAAC;IAE3D,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACjE,GAAG,CAAC,KAAK,CAAC,mBAAmB,OAAO,EAAE,CAAC,CAAC;QACxC,IAAI,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC;YAAE,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC7C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC"}
@@ -1,6 +1,9 @@
1
- export declare function runList(options: {
1
+ interface ListOptions {
2
2
  available?: boolean;
3
3
  dev?: boolean;
4
4
  nonDev?: boolean;
5
- }): Promise<void>;
5
+ json?: boolean;
6
+ }
7
+ export declare function runList(options: ListOptions): Promise<void>;
8
+ export {};
6
9
  //# sourceMappingURL=list.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"list.d.ts","sourceRoot":"","sources":["../../src/commands/list.ts"],"names":[],"mappings":"AAMA,wBAAsB,OAAO,CAAC,OAAO,EAAE;IAAE,SAAS,CAAC,EAAE,OAAO,CAAC;IAAC,GAAG,CAAC,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAgD9G"}
1
+ {"version":3,"file":"list.d.ts","sourceRoot":"","sources":["../../src/commands/list.ts"],"names":[],"mappings":"AAUA,UAAU,WAAW;IACnB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED,wBAAsB,OAAO,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAmEjE"}