imcp 0.1.1 → 0.1.3
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/dist/cli/index.js +1 -45
- package/dist/core/installers/clients/BaseClientInstaller.d.ts +1 -5
- package/dist/core/installers/clients/BaseClientInstaller.js +40 -38
- package/dist/core/installers/clients/ClientInstaller.d.ts +9 -9
- package/dist/core/installers/clients/ClientInstaller.js +105 -99
- package/dist/core/installers/requirements/BaseInstaller.d.ts +9 -1
- package/dist/core/installers/requirements/CommandInstaller.d.ts +9 -1
- package/dist/core/installers/requirements/CommandInstaller.js +46 -12
- package/dist/core/installers/requirements/GeneralInstaller.d.ts +11 -1
- package/dist/core/installers/requirements/GeneralInstaller.js +46 -10
- package/dist/core/installers/requirements/InstallerFactory.d.ts +3 -1
- package/dist/core/installers/requirements/InstallerFactory.js +3 -2
- package/dist/core/installers/requirements/NpmInstaller.d.ts +4 -2
- package/dist/core/installers/requirements/NpmInstaller.js +38 -22
- package/dist/core/installers/requirements/PipInstaller.d.ts +3 -1
- package/dist/core/installers/requirements/PipInstaller.js +58 -36
- package/dist/core/installers/requirements/RequirementInstaller.d.ts +4 -1
- package/dist/core/loaders/InstallOperationManager.d.ts +115 -0
- package/dist/core/loaders/InstallOperationManager.js +311 -0
- package/dist/core/loaders/SystemSettingsManager.d.ts +54 -0
- package/dist/core/loaders/SystemSettingsManager.js +257 -0
- package/dist/core/metadatas/recordingConstants.d.ts +44 -0
- package/dist/core/metadatas/recordingConstants.js +45 -0
- package/dist/core/metadatas/types.d.ts +21 -0
- package/dist/core/onboard/InstallOperationManager.d.ts +23 -0
- package/dist/core/onboard/InstallOperationManager.js +144 -0
- package/dist/core/onboard/OnboardStatusManager.js +2 -1
- package/dist/core/validators/StdioServerValidator.js +4 -3
- package/dist/services/InstallationService.d.ts +2 -37
- package/dist/services/InstallationService.js +45 -313
- package/dist/services/MCPManager.d.ts +1 -1
- package/dist/services/MCPManager.js +4 -58
- package/dist/services/RequirementService.d.ts +85 -12
- package/dist/services/RequirementService.js +488 -49
- package/dist/services/ServerService.d.ts +0 -6
- package/dist/services/ServerService.js +0 -74
- package/dist/utils/adoUtils.js +6 -3
- package/dist/utils/logger.js +1 -1
- package/dist/utils/macroExpressionUtils.js +3 -25
- package/dist/utils/osUtils.d.ts +22 -1
- package/dist/utils/osUtils.js +92 -1
- package/dist/utils/versionUtils.d.ts +20 -1
- package/dist/utils/versionUtils.js +51 -4
- package/dist/web/public/css/modal.css +292 -1
- package/dist/web/public/css/serverDetails.css +14 -1
- package/dist/web/public/index.html +122 -20
- package/dist/web/public/js/flights/flights.js +1 -0
- package/dist/web/public/js/modal/index.js +8 -14
- package/dist/web/public/js/modal/installModal.js +3 -4
- package/dist/web/public/js/modal/installation.js +122 -137
- package/dist/web/public/js/modal/loadingModal.js +155 -25
- package/dist/web/public/js/modal/messageQueue.js +45 -101
- package/dist/web/public/js/modal/modalSetup.js +125 -43
- package/dist/web/public/js/modal/modalUtils.js +0 -12
- package/dist/web/public/js/modal.js +23 -10
- package/dist/web/public/js/onboard/publishHandler.js +22 -20
- package/dist/web/public/js/serverCategoryDetails.js +60 -11
- package/dist/web/public/js/serverCategoryList.js +2 -2
- package/dist/web/public/js/settings.js +314 -0
- package/dist/web/public/settings.html +135 -0
- package/dist/web/public/styles.css +32 -0
- package/dist/web/server.js +82 -0
- package/memory-bank/activeContext.md +13 -1
- package/memory-bank/decisionLog.md +63 -0
- package/memory-bank/progress.md +30 -0
- package/memory-bank/systemPatterns.md +7 -0
- package/package.json +1 -1
- package/src/cli/index.ts +1 -48
- package/src/core/installers/clients/BaseClientInstaller.ts +64 -50
- package/src/core/installers/clients/ClientInstaller.ts +130 -130
- package/src/core/installers/requirements/BaseInstaller.ts +9 -1
- package/src/core/installers/requirements/CommandInstaller.ts +47 -13
- package/src/core/installers/requirements/GeneralInstaller.ts +48 -10
- package/src/core/installers/requirements/InstallerFactory.ts +4 -3
- package/src/core/installers/requirements/NpmInstaller.ts +90 -68
- package/src/core/installers/requirements/PipInstaller.ts +81 -55
- package/src/core/installers/requirements/RequirementInstaller.ts +4 -3
- package/src/core/loaders/InstallOperationManager.ts +367 -0
- package/src/core/loaders/SystemSettingsManager.ts +278 -0
- package/src/core/metadatas/recordingConstants.ts +62 -0
- package/src/core/metadatas/types.ts +23 -0
- package/src/core/onboard/OnboardStatusManager.ts +2 -1
- package/src/core/validators/StdioServerValidator.ts +4 -3
- package/src/services/InstallationService.ts +54 -399
- package/src/services/MCPManager.ts +4 -77
- package/src/services/RequirementService.ts +564 -67
- package/src/services/ServerService.ts +0 -90
- package/src/utils/adoUtils.ts +6 -4
- package/src/utils/logger.ts +1 -1
- package/src/utils/macroExpressionUtils.ts +4 -21
- package/src/utils/osUtils.ts +92 -1
- package/src/utils/versionUtils.ts +71 -19
- package/src/web/public/css/modal.css +292 -1
- package/src/web/public/css/serverDetails.css +14 -1
- package/src/web/public/index.html +122 -20
- package/src/web/public/js/flights/flights.js +1 -1
- package/src/web/public/js/modal/index.js +8 -14
- package/src/web/public/js/modal/installModal.js +3 -4
- package/src/web/public/js/modal/installation.js +122 -137
- package/src/web/public/js/modal/loadingModal.js +155 -25
- package/src/web/public/js/modal/modalSetup.js +125 -43
- package/src/web/public/js/modal/modalUtils.js +0 -12
- package/src/web/public/js/modal.js +23 -10
- package/src/web/public/js/onboard/publishHandler.js +22 -20
- package/src/web/public/js/serverCategoryDetails.js +60 -11
- package/src/web/public/js/serverCategoryList.js +5 -5
- package/src/web/public/js/settings.js +314 -0
- package/src/web/public/settings.html +135 -0
- package/src/web/public/styles.css +32 -0
- package/src/web/server.ts +85 -0
- package/src/web/public/js/modal/messageQueue.js +0 -112
|
@@ -18,12 +18,14 @@ import { Logger, EventType, EventStatus } from '../utils/logger.js';
|
|
|
18
18
|
import { FeedOnboardService } from '../core/onboard/FeedOnboardService.js';
|
|
19
19
|
import path from 'path';
|
|
20
20
|
import { Server } from 'http';
|
|
21
|
+
import { RequirementService } from './RequirementService.js';
|
|
21
22
|
|
|
22
23
|
export class MCPManager extends EventEmitter {
|
|
23
24
|
private installationService: InstallationService;
|
|
24
25
|
private configProvider: ConfigurationProvider;
|
|
25
26
|
private feedOnboardService: FeedOnboardService;
|
|
26
27
|
private schemaProvider: ServerSchemaProvider;
|
|
28
|
+
private requirementsService: RequirementService;
|
|
27
29
|
|
|
28
30
|
constructor() {
|
|
29
31
|
super();
|
|
@@ -31,6 +33,7 @@ export class MCPManager extends EventEmitter {
|
|
|
31
33
|
this.schemaProvider = ServerSchemaProvider.getInstance();
|
|
32
34
|
this.installationService = new InstallationService();
|
|
33
35
|
this.feedOnboardService = new FeedOnboardService();
|
|
36
|
+
this.requirementsService = RequirementService.getInstance();
|
|
34
37
|
}
|
|
35
38
|
|
|
36
39
|
async syncFeeds(): Promise<void> {
|
|
@@ -41,6 +44,7 @@ export class MCPManager extends EventEmitter {
|
|
|
41
44
|
try {
|
|
42
45
|
await this.configProvider.initialize(feedFile);
|
|
43
46
|
await this.schemaProvider.initialize(schemasDirectory);
|
|
47
|
+
await this.requirementsService.checkRequirementForUpdateAsync();
|
|
44
48
|
} catch (error) {
|
|
45
49
|
console.error("Error during MCPManager initialization:", error);
|
|
46
50
|
throw error;
|
|
@@ -193,83 +197,6 @@ export class MCPManager extends EventEmitter {
|
|
|
193
197
|
}
|
|
194
198
|
}
|
|
195
199
|
|
|
196
|
-
async updateRequirement(
|
|
197
|
-
categoryName: string,
|
|
198
|
-
serverName: string,
|
|
199
|
-
requirementName: string,
|
|
200
|
-
updateVersion: string
|
|
201
|
-
): Promise<ServerOperationResult> {
|
|
202
|
-
try {
|
|
203
|
-
const { requirementService } = await import('./RequirementService.js');
|
|
204
|
-
const serverCategory = await this.configProvider.getServerCategory(categoryName);
|
|
205
|
-
if (!serverCategory) {
|
|
206
|
-
return {
|
|
207
|
-
success: false,
|
|
208
|
-
message: `Server category ${categoryName} is not onboarded`,
|
|
209
|
-
};
|
|
210
|
-
}
|
|
211
|
-
|
|
212
|
-
if (!serverCategory.feedConfiguration) {
|
|
213
|
-
return {
|
|
214
|
-
success: false,
|
|
215
|
-
message: `Server category ${categoryName} has no feed configuration`,
|
|
216
|
-
};
|
|
217
|
-
}
|
|
218
|
-
|
|
219
|
-
// Find the requirement
|
|
220
|
-
const requirement = serverCategory.feedConfiguration.requirements.find(
|
|
221
|
-
r => r.name === requirementName
|
|
222
|
-
);
|
|
223
|
-
if (!requirement) {
|
|
224
|
-
return {
|
|
225
|
-
success: false,
|
|
226
|
-
message: `Requirement ${requirementName} not found in category ${categoryName}`,
|
|
227
|
-
};
|
|
228
|
-
}
|
|
229
|
-
|
|
230
|
-
// Update the requirement using requirementService
|
|
231
|
-
const updatedStatus = await requirementService.updateRequirement(requirement, updateVersion);
|
|
232
|
-
|
|
233
|
-
// Update the status in configuration
|
|
234
|
-
await this.configProvider.updateRequirementStatus(
|
|
235
|
-
categoryName,
|
|
236
|
-
requirementName,
|
|
237
|
-
updatedStatus
|
|
238
|
-
);
|
|
239
|
-
|
|
240
|
-
Logger.trackEvent(EventType.REQUIREMENT_UPDATE, {
|
|
241
|
-
status: EventStatus.SUCCESS,
|
|
242
|
-
categoryName,
|
|
243
|
-
serverName,
|
|
244
|
-
requirementName,
|
|
245
|
-
updateVersion
|
|
246
|
-
});
|
|
247
|
-
|
|
248
|
-
return {
|
|
249
|
-
success: true,
|
|
250
|
-
message: `Successfully updated ${requirementName} to version ${updateVersion}`,
|
|
251
|
-
};
|
|
252
|
-
} catch (error) {
|
|
253
|
-
const errorMessage = `Failed to update ${requirementName}: ${error instanceof Error ? error.message : String(error)}`;
|
|
254
|
-
console.error(`Error updating requirement ${requirementName}:`, error);
|
|
255
|
-
|
|
256
|
-
Logger.trackEvent(EventType.REQUIREMENT_UPDATE, {
|
|
257
|
-
status: EventStatus.FAILED,
|
|
258
|
-
errorMessage,
|
|
259
|
-
categoryName,
|
|
260
|
-
serverName,
|
|
261
|
-
requirementName,
|
|
262
|
-
updateVersion
|
|
263
|
-
});
|
|
264
|
-
|
|
265
|
-
return {
|
|
266
|
-
success: false,
|
|
267
|
-
message: errorMessage,
|
|
268
|
-
error: error instanceof Error ? error : new Error(String(error)),
|
|
269
|
-
};
|
|
270
|
-
}
|
|
271
|
-
}
|
|
272
|
-
|
|
273
200
|
/**
|
|
274
201
|
* Onboards a new feed configuration
|
|
275
202
|
* @param config The feed configuration to onboard
|