imcp 0.1.3 → 0.1.5
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 +21 -4
- package/dist/cli/commands/install.js.map +1 -0
- package/dist/cli/commands/list.js.map +1 -0
- package/dist/cli/commands/pull.js.map +1 -0
- package/dist/cli/commands/serve.js.map +1 -0
- package/dist/cli/commands/start.d.ts +2 -0
- package/dist/cli/commands/start.js +32 -0
- package/dist/cli/commands/start.js.map +1 -0
- package/dist/cli/commands/sync.d.ts +2 -0
- package/dist/cli/commands/sync.js +17 -0
- package/dist/cli/commands/sync.js.map +1 -0
- package/dist/cli/commands/uninstall.js.map +1 -0
- package/dist/cli/index.js +0 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/core/ConfigurationLoader.d.ts +32 -0
- package/{src/core/loaders/ConfigurationLoader.ts → dist/core/ConfigurationLoader.js} +236 -298
- package/dist/core/ConfigurationLoader.js.map +1 -0
- package/dist/core/ConfigurationProvider.d.ts +35 -0
- package/{src/core/loaders/ConfigurationProvider.ts → dist/core/ConfigurationProvider.js} +375 -462
- package/dist/core/ConfigurationProvider.js.map +1 -0
- package/dist/core/InstallationService.d.ts +50 -0
- package/dist/core/InstallationService.js +350 -0
- package/dist/core/InstallationService.js.map +1 -0
- package/dist/core/MCPManager.d.ts +28 -0
- package/dist/core/MCPManager.js +188 -0
- package/dist/core/MCPManager.js.map +1 -0
- package/dist/core/RequirementService.d.ts +40 -0
- package/dist/core/RequirementService.js +110 -0
- package/dist/core/RequirementService.js.map +1 -0
- package/dist/core/ServerSchemaLoader.d.ts +11 -0
- package/dist/core/ServerSchemaLoader.js +43 -0
- package/dist/core/ServerSchemaLoader.js.map +1 -0
- package/dist/core/ServerSchemaProvider.d.ts +17 -0
- package/dist/core/ServerSchemaProvider.js +120 -0
- package/dist/core/ServerSchemaProvider.js.map +1 -0
- package/dist/core/constants.d.ts +47 -0
- package/dist/core/constants.js +94 -0
- package/dist/core/constants.js.map +1 -0
- package/dist/core/installers/BaseInstaller.d.ts +74 -0
- package/dist/core/installers/BaseInstaller.js +253 -0
- package/dist/core/installers/BaseInstaller.js.map +1 -0
- package/dist/core/installers/ClientInstaller.d.ts +23 -0
- package/dist/core/installers/ClientInstaller.js +564 -0
- package/dist/core/installers/ClientInstaller.js.map +1 -0
- package/dist/core/installers/CommandInstaller.d.ts +37 -0
- package/{src/core/installers/requirements/CommandInstaller.ts → dist/core/installers/CommandInstaller.js} +173 -231
- package/dist/core/installers/CommandInstaller.js.map +1 -0
- package/dist/core/installers/GeneralInstaller.d.ts +33 -0
- package/dist/core/installers/GeneralInstaller.js +85 -0
- package/dist/core/installers/GeneralInstaller.js.map +1 -0
- package/dist/core/installers/InstallerFactory.d.ts +54 -0
- package/{src/core/installers/requirements/InstallerFactory.ts → dist/core/installers/InstallerFactory.js} +97 -112
- package/dist/core/installers/InstallerFactory.js.map +1 -0
- package/dist/core/installers/NpmInstaller.d.ts +26 -0
- package/dist/core/installers/NpmInstaller.js +127 -0
- package/dist/core/installers/NpmInstaller.js.map +1 -0
- package/dist/core/installers/PipInstaller.d.ts +28 -0
- package/dist/core/installers/PipInstaller.js +127 -0
- package/dist/core/installers/PipInstaller.js.map +1 -0
- package/{src/core/installers/requirements/RequirementInstaller.ts → dist/core/installers/RequirementInstaller.d.ts} +33 -42
- package/dist/core/installers/RequirementInstaller.js +3 -0
- package/dist/core/installers/RequirementInstaller.js.map +1 -0
- package/dist/core/installers/clients/BaseClientInstaller.js.map +1 -0
- package/dist/core/installers/clients/ClientInstaller.js.map +1 -0
- package/dist/core/installers/clients/ClientInstallerFactory.js.map +1 -0
- package/dist/core/installers/clients/ClineInstaller.js.map +1 -0
- package/dist/core/installers/clients/ExtensionInstaller.js.map +1 -0
- package/dist/core/installers/clients/GithubCopilotInstaller.js.map +1 -0
- package/dist/core/installers/clients/MSRooCodeInstaller.js.map +1 -0
- package/dist/core/installers/index.js.map +1 -0
- package/dist/core/installers/requirements/BaseInstaller.js.map +1 -0
- package/dist/core/installers/requirements/CommandInstaller.js.map +1 -0
- package/dist/core/installers/requirements/GeneralInstaller.js.map +1 -0
- package/dist/core/installers/requirements/InstallerFactory.js +2 -0
- package/dist/core/installers/requirements/InstallerFactory.js.map +1 -0
- package/dist/core/installers/requirements/NpmInstaller.js.map +1 -0
- package/dist/core/installers/requirements/NugetInstaller.d.ts +37 -0
- package/dist/core/installers/requirements/NugetInstaller.js +189 -0
- package/dist/core/installers/requirements/NugetInstaller.js.map +1 -0
- package/dist/core/installers/requirements/PipInstaller.js.map +1 -0
- package/dist/core/installers/requirements/RequirementInstaller.js.map +1 -0
- package/dist/core/loaders/ConfigurationLoader.js.map +1 -0
- package/dist/core/loaders/ConfigurationProvider.js.map +1 -0
- package/dist/core/loaders/InstallOperationManager.js.map +1 -0
- package/dist/core/loaders/ServerSchemaLoader.js.map +1 -0
- package/dist/core/loaders/ServerSchemaProvider.js.map +1 -0
- package/dist/core/loaders/SystemSettingsManager.js.map +1 -0
- package/dist/core/metadatas/constants.js.map +1 -0
- package/dist/core/metadatas/recordingConstants.d.ts +2 -0
- package/dist/core/metadatas/recordingConstants.js +2 -0
- package/dist/core/metadatas/recordingConstants.js.map +1 -0
- package/dist/core/metadatas/types.d.ts +1 -1
- package/dist/core/metadatas/types.js.map +1 -0
- package/dist/core/onboard/FeedOnboardService.js +1 -22
- package/dist/core/onboard/FeedOnboardService.js.map +1 -0
- package/dist/core/onboard/OnboardProcessor.js.map +1 -0
- package/dist/core/onboard/OnboardStatus.js.map +1 -0
- package/dist/core/onboard/OnboardStatusManager.js.map +1 -0
- package/dist/core/types.d.ts +166 -0
- package/dist/core/types.js +16 -0
- package/dist/core/types.js.map +1 -0
- package/dist/core/validators/FeedValidator.js.map +1 -0
- package/dist/core/validators/IServerValidator.js.map +1 -0
- package/dist/core/validators/SSEServerValidator.js.map +1 -0
- package/dist/core/validators/ServerValidatorFactory.js.map +1 -0
- package/dist/core/validators/StdioServerValidator.js +5 -5
- package/dist/core/validators/StdioServerValidator.js.map +1 -0
- package/dist/index.js.map +1 -0
- package/dist/services/InstallRequestValidator.d.ts +21 -0
- package/dist/services/InstallRequestValidator.js +99 -0
- package/dist/services/InstallRequestValidator.js.map +1 -0
- package/dist/services/InstallationService.js.map +1 -0
- package/dist/services/MCPManager.js.map +1 -0
- package/dist/services/RequirementService.js.map +1 -0
- package/dist/services/ServerService.js.map +1 -0
- package/dist/services/TelemetryService.js.map +1 -0
- package/dist/utils/UpdateCheckTracker.js.map +1 -0
- package/dist/utils/adoUtils.js.map +1 -0
- package/dist/utils/clientUtils.js.map +1 -0
- package/dist/utils/feedUtils.js.map +1 -0
- package/dist/utils/githubAuth.js.map +1 -0
- package/dist/utils/githubUtils.js.map +1 -0
- package/dist/utils/logger.js.map +1 -0
- package/dist/utils/macroExpressionUtils.js.map +1 -0
- package/dist/utils/osUtils.d.ts +11 -0
- package/dist/utils/osUtils.js +100 -0
- package/dist/utils/osUtils.js.map +1 -0
- package/dist/utils/versionUtils.js.map +1 -0
- package/dist/web/contract/serverContract.js.map +1 -0
- package/dist/web/public/index.html +1 -1
- package/dist/web/public/js/modal/installHandler.js +227 -0
- package/dist/web/public/js/modal/loadingUI.js +74 -0
- package/dist/web/public/js/modal/messageQueue.js +101 -45
- package/dist/web/public/js/modal/modalUI.js +214 -0
- package/{src/web/public/js/modal/versionUtils.js → dist/web/public/js/modal/version.js} +1 -1
- package/dist/web/public/js/onboard/templates.js +1 -0
- package/dist/web/public/js/serverCategoryList.js +3 -3
- package/dist/web/public/onboard.html +4 -4
- package/dist/web/server.js.map +1 -0
- package/package.json +5 -1
- package/.github/ISSUE_TEMPLATE/JitAccess.yml +0 -28
- package/.github/acl/access.yml +0 -20
- package/.github/compliance/inventory.yml +0 -5
- package/.github/policies/jit.yml +0 -19
- package/.roo/rules-code/rules.md +0 -88
- package/dist/core/onboard/InstallOperationManager.d.ts +0 -23
- package/dist/core/onboard/InstallOperationManager.js +0 -144
- package/docs/ONBOARDING_PAGE_DESIGN.md +0 -260
- package/docs/Telemetry.md +0 -136
- package/memory-bank/activeContext.md +0 -26
- package/memory-bank/decisionLog.md +0 -91
- package/memory-bank/productContext.md +0 -41
- package/memory-bank/progress.md +0 -35
- package/memory-bank/systemPatterns.md +0 -10
- package/src/cli/commands/install.ts +0 -139
- package/src/cli/commands/list.ts +0 -113
- package/src/cli/commands/pull.ts +0 -16
- package/src/cli/commands/serve.ts +0 -39
- package/src/cli/commands/uninstall.ts +0 -64
- package/src/cli/index.ts +0 -82
- package/src/core/installers/clients/BaseClientInstaller.ts +0 -341
- package/src/core/installers/clients/ClientInstaller.ts +0 -222
- package/src/core/installers/clients/ClientInstallerFactory.ts +0 -43
- package/src/core/installers/clients/ClineInstaller.ts +0 -35
- package/src/core/installers/clients/ExtensionInstaller.ts +0 -165
- package/src/core/installers/clients/GithubCopilotInstaller.ts +0 -79
- package/src/core/installers/clients/MSRooCodeInstaller.ts +0 -32
- package/src/core/installers/index.ts +0 -11
- package/src/core/installers/requirements/BaseInstaller.ts +0 -85
- package/src/core/installers/requirements/GeneralInstaller.ts +0 -133
- package/src/core/installers/requirements/NpmInstaller.ts +0 -271
- package/src/core/installers/requirements/PipInstaller.ts +0 -207
- package/src/core/loaders/InstallOperationManager.ts +0 -367
- package/src/core/loaders/ServerSchemaLoader.ts +0 -117
- package/src/core/loaders/ServerSchemaProvider.ts +0 -99
- package/src/core/loaders/SystemSettingsManager.ts +0 -278
- package/src/core/metadatas/constants.ts +0 -122
- package/src/core/metadatas/recordingConstants.ts +0 -62
- package/src/core/metadatas/types.ts +0 -202
- package/src/core/onboard/FeedOnboardService.ts +0 -524
- package/src/core/onboard/OnboardProcessor.ts +0 -356
- package/src/core/onboard/OnboardStatus.ts +0 -60
- package/src/core/onboard/OnboardStatusManager.ts +0 -416
- package/src/core/validators/FeedValidator.ts +0 -135
- package/src/core/validators/IServerValidator.ts +0 -21
- package/src/core/validators/SSEServerValidator.ts +0 -43
- package/src/core/validators/ServerValidatorFactory.ts +0 -51
- package/src/core/validators/StdioServerValidator.ts +0 -312
- package/src/index.ts +0 -44
- package/src/services/InstallationService.ts +0 -102
- package/src/services/MCPManager.ts +0 -249
- package/src/services/RequirementService.ts +0 -627
- package/src/services/ServerService.ts +0 -161
- package/src/services/TelemetryService.ts +0 -59
- package/src/utils/UpdateCheckTracker.ts +0 -86
- package/src/utils/adoUtils.ts +0 -293
- package/src/utils/clientUtils.ts +0 -72
- package/src/utils/feedUtils.ts +0 -31
- package/src/utils/githubAuth.ts +0 -212
- package/src/utils/githubUtils.ts +0 -164
- package/src/utils/logger.ts +0 -195
- package/src/utils/macroExpressionUtils.ts +0 -104
- package/src/utils/osUtils.ts +0 -597
- package/src/utils/versionUtils.ts +0 -114
- package/src/web/contract/serverContract.ts +0 -74
- package/src/web/public/css/detailsWidget.css +0 -235
- package/src/web/public/css/modal.css +0 -757
- package/src/web/public/css/notifications.css +0 -101
- package/src/web/public/css/onboard.css +0 -107
- package/src/web/public/css/serverCategoryList.css +0 -120
- package/src/web/public/css/serverDetails.css +0 -139
- package/src/web/public/index.html +0 -359
- package/src/web/public/js/api.js +0 -132
- package/src/web/public/js/detailsWidget.js +0 -264
- package/src/web/public/js/flights/flights.js +0 -127
- package/src/web/public/js/modal/index.js +0 -52
- package/src/web/public/js/modal/installModal.js +0 -162
- package/src/web/public/js/modal/installation.js +0 -266
- package/src/web/public/js/modal/loadingModal.js +0 -182
- package/src/web/public/js/modal/modalSetup.js +0 -595
- package/src/web/public/js/modal/modalUtils.js +0 -37
- package/src/web/public/js/modal.js +0 -42
- package/src/web/public/js/notifications.js +0 -137
- package/src/web/public/js/onboard/formProcessor.js +0 -1037
- package/src/web/public/js/onboard/index.js +0 -374
- package/src/web/public/js/onboard/publishHandler.js +0 -172
- package/src/web/public/js/onboard/state.js +0 -76
- package/src/web/public/js/onboard/templates.js +0 -341
- package/src/web/public/js/onboard/uiHandlers.js +0 -1076
- package/src/web/public/js/onboard/validationHandlers.js +0 -493
- package/src/web/public/js/serverCategoryDetails.js +0 -364
- package/src/web/public/js/serverCategoryList.js +0 -241
- package/src/web/public/js/settings.js +0 -314
- package/src/web/public/modal.html +0 -84
- package/src/web/public/onboard.html +0 -296
- package/src/web/public/settings.html +0 -135
- package/src/web/public/styles.css +0 -277
- package/src/web/server.ts +0 -478
- package/tsconfig.json +0 -18
|
@@ -1,56 +1,112 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
// for overall status and step details, this queueing mechanism for individual
|
|
4
|
-
// step messages is no longer the primary way messages are displayed.
|
|
5
|
-
// The loadingModal.js now has `updateOverallInstallStatus` and `addInstallationStep`.
|
|
6
|
-
|
|
7
|
-
// The `updateCompletionUI` function might still be relevant if we want to
|
|
8
|
-
// change the overall modal's appearance (e.g., title, main icon) upon final completion,
|
|
9
|
-
// separate from the step-by-step updates.
|
|
1
|
+
/** @type {boolean} Flag indicating if a message is currently being appended */
|
|
2
|
+
let isAppending = false;
|
|
10
3
|
|
|
11
4
|
/** @type {boolean} Flag indicating if completion UI update is pending */
|
|
12
|
-
let completionPending = false;
|
|
5
|
+
let completionPending = false;
|
|
13
6
|
|
|
14
7
|
/**
|
|
15
|
-
*
|
|
16
|
-
*
|
|
17
|
-
* and a small delay).
|
|
18
|
-
* @param {'completed' | 'failed'} finalState
|
|
8
|
+
* Message queue for delayed loading modal updates.
|
|
9
|
+
* @type {Array<{msg: string, isCompletion: boolean}>}
|
|
19
10
|
*/
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
11
|
+
let messageQueue = [];
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* Process messages in the queue with a delay between each message.
|
|
15
|
+
* When the queue is empty and completion is pending, triggers the completion UI.
|
|
16
|
+
* @private
|
|
17
|
+
*/
|
|
18
|
+
function processMessageQueue() {
|
|
19
|
+
if (isAppending || messageQueue.length === 0) {
|
|
20
|
+
// Only update completion UI if all messages have been displayed
|
|
21
|
+
if (messageQueue.length === 0 && completionPending) {
|
|
22
|
+
// Add small delay before showing completion to ensure last message is visible
|
|
23
|
+
setTimeout(() => {
|
|
24
|
+
updateCompletionUI();
|
|
25
|
+
completionPending = false;
|
|
26
|
+
}, 500);
|
|
27
|
+
}
|
|
28
|
+
return;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
isAppending = true;
|
|
32
|
+
const { msg, isCompletion } = messageQueue.shift();
|
|
33
|
+
|
|
34
|
+
if (isCompletion) {
|
|
35
|
+
completionPending = true;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
appendInstallLoadingMessage(msg);
|
|
39
|
+
|
|
40
|
+
setTimeout(() => {
|
|
41
|
+
isAppending = false;
|
|
42
|
+
processMessageQueue();
|
|
43
|
+
}, 1000);
|
|
35
44
|
}
|
|
36
45
|
|
|
46
|
+
/**
|
|
47
|
+
* Queue a message to be displayed with a delay.
|
|
48
|
+
* Messages are displayed sequentially with a 1-second delay between each.
|
|
49
|
+
* @param {string} msg The message to display
|
|
50
|
+
* @param {boolean} [isCompletion=false] If true, triggers completion UI after message display
|
|
51
|
+
*/
|
|
52
|
+
export function delayedAppendInstallLoadingMessage(msg, isCompletion = false) {
|
|
53
|
+
messageQueue.push({ msg, isCompletion });
|
|
54
|
+
processMessageQueue();
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
function updateCompletionUI() {
|
|
58
|
+
const loadingTitle = document.querySelector('.loading-title');
|
|
59
|
+
const loadingIcon = document.querySelector('.loading-icon');
|
|
60
|
+
|
|
61
|
+
if (loadingTitle) {
|
|
62
|
+
loadingTitle.textContent = 'Completed';
|
|
63
|
+
loadingTitle.classList.add('completed');
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
if (loadingIcon) {
|
|
67
|
+
loadingIcon.innerHTML = `
|
|
68
|
+
<svg width="48" height="48" viewBox="0 0 48 48" fill="none">
|
|
69
|
+
<circle cx="24" cy="24" r="20" stroke="#059669" stroke-width="4"/>
|
|
70
|
+
<path d="M16 24l6 6 12-12" stroke="#059669" stroke-width="4" stroke-linecap="round" stroke-linejoin="round"/>
|
|
71
|
+
</svg>
|
|
72
|
+
`;
|
|
73
|
+
loadingIcon.classList.add('completed');
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
/**
|
|
78
|
+
* Internal function to append a message to the loading modal with formatting.
|
|
79
|
+
* @private
|
|
80
|
+
* @param {string} message - The message to append
|
|
81
|
+
*/
|
|
82
|
+
function appendInstallLoadingMessage(message) {
|
|
83
|
+
const loadingMsg = document.getElementById('installLoadingMessage');
|
|
84
|
+
if (loadingMsg) {
|
|
85
|
+
// Split message on newlines
|
|
86
|
+
const lines = message.split('\n');
|
|
87
|
+
|
|
88
|
+
lines.forEach(line => {
|
|
89
|
+
// Check if line contains an error
|
|
90
|
+
const isError = line.toLowerCase().includes('error') ||
|
|
91
|
+
line.toLowerCase().includes('failed') ||
|
|
92
|
+
line.toLowerCase().includes('timeout');
|
|
37
93
|
|
|
38
|
-
|
|
39
|
-
// // This function's original content might be merged into updateOverallInstallStatus
|
|
40
|
-
// // or called if a distinct "modal completed" visual state is needed beyond the text/icon.
|
|
41
|
-
// const loadingTitle = document.querySelector('.loading-title'); // This element might not exist with new structure
|
|
42
|
-
// const loadingIcon = document.querySelector('.loading-icon'); // This element might not exist
|
|
94
|
+
const formattedMessage = line;
|
|
43
95
|
|
|
44
|
-
//
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
// }
|
|
96
|
+
// Create message container
|
|
97
|
+
const messageDiv = document.createElement('div');
|
|
98
|
+
messageDiv.className = 'message-line';
|
|
48
99
|
|
|
49
|
-
//
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
100
|
+
// Apply yellow color for error messages
|
|
101
|
+
if (isError) {
|
|
102
|
+
messageDiv.style.color = '#f59e0b';
|
|
103
|
+
}
|
|
104
|
+
messageDiv.innerHTML = formattedMessage;
|
|
53
105
|
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
106
|
+
loadingMsg.appendChild(messageDiv);
|
|
107
|
+
loadingMsg.scrollTop = loadingMsg.scrollHeight;
|
|
108
|
+
});
|
|
109
|
+
} else {
|
|
110
|
+
console.error('[LoadingModal] Element not found: installLoadingMessage');
|
|
111
|
+
}
|
|
112
|
+
}
|
|
@@ -0,0 +1,214 @@
|
|
|
1
|
+
import { showConfirm } from '../notifications.js';
|
|
2
|
+
import { handleInstallation, handleUninstallation } from './installHandler.js';
|
|
3
|
+
import { showLoadingModal } from './loadingUI.js';
|
|
4
|
+
import { compareVersions } from './version.js';
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Show installation modal for MCP tools
|
|
8
|
+
* @param {string} categoryName Category name
|
|
9
|
+
* @param {string} serverName Server name
|
|
10
|
+
*/
|
|
11
|
+
export async function showInstallModal(categoryName, serverName) {
|
|
12
|
+
console.log("Showing install modal for:", serverName);
|
|
13
|
+
await new Promise(resolve => setTimeout(resolve, 100));
|
|
14
|
+
|
|
15
|
+
const elements = getModalElements();
|
|
16
|
+
if (!elements) return;
|
|
17
|
+
|
|
18
|
+
initializeModal(elements, serverName);
|
|
19
|
+
|
|
20
|
+
try {
|
|
21
|
+
const { targetData, serverData } = await fetchModalData(categoryName);
|
|
22
|
+
const mcpServer = findMcpServer(serverData, serverName);
|
|
23
|
+
|
|
24
|
+
renderModalContent(elements, {
|
|
25
|
+
targetData,
|
|
26
|
+
serverData,
|
|
27
|
+
mcpServer,
|
|
28
|
+
categoryName,
|
|
29
|
+
serverName
|
|
30
|
+
});
|
|
31
|
+
|
|
32
|
+
setupFormHandler(elements, categoryName, serverName, serverData);
|
|
33
|
+
elements.modal.style.display = "block";
|
|
34
|
+
} catch (error) {
|
|
35
|
+
handleModalError(error, elements.targetDiv);
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
/**
|
|
40
|
+
* Close modal and refresh with selected category
|
|
41
|
+
*/
|
|
42
|
+
export function closeModal() {
|
|
43
|
+
const modal = document.getElementById('installModal');
|
|
44
|
+
if (modal) {
|
|
45
|
+
modal.style.display = "none";
|
|
46
|
+
refreshWithCategory();
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
/**
|
|
51
|
+
* Setup click outside modal handler
|
|
52
|
+
*/
|
|
53
|
+
export function setupModalOutsideClick() {
|
|
54
|
+
window.onclick = function (event) {
|
|
55
|
+
const modal = document.getElementById('installModal');
|
|
56
|
+
if (event.target === modal) {
|
|
57
|
+
closeModal();
|
|
58
|
+
}
|
|
59
|
+
};
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
// Private helper functions
|
|
63
|
+
|
|
64
|
+
function getModalElements() {
|
|
65
|
+
const modal = document.getElementById('installModal');
|
|
66
|
+
if (!modal) {
|
|
67
|
+
console.error('Modal container not found');
|
|
68
|
+
return null;
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
const elements = {
|
|
72
|
+
modal,
|
|
73
|
+
title: modal.querySelector('#modalTitle'),
|
|
74
|
+
envInputs: modal.querySelector('#modalEnvInputs'),
|
|
75
|
+
targetDiv: modal.querySelector('#modalTargets'),
|
|
76
|
+
requirements: modal.querySelector('#modalRequirements'),
|
|
77
|
+
arguments: modal.querySelector('#modalArguments')
|
|
78
|
+
};
|
|
79
|
+
|
|
80
|
+
if (!Object.values(elements).every(Boolean)) {
|
|
81
|
+
console.error('Required modal elements not found');
|
|
82
|
+
return null;
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
return elements;
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
function initializeModal(elements, serverName) {
|
|
89
|
+
window.selectedClients = [];
|
|
90
|
+
elements.title.textContent = `Install ${serverName}`;
|
|
91
|
+
clearModalSections(elements);
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
function clearModalSections(elements) {
|
|
95
|
+
['envInputs', 'targetDiv', 'requirements', 'arguments'].forEach(section => {
|
|
96
|
+
elements[section].innerHTML = '';
|
|
97
|
+
});
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
async function fetchModalData(categoryName) {
|
|
101
|
+
const [targetResponse, serverResponse] = await Promise.all([
|
|
102
|
+
fetch('/api/targets'),
|
|
103
|
+
fetch(`/api/categories/${categoryName}`)
|
|
104
|
+
]);
|
|
105
|
+
|
|
106
|
+
if (!targetResponse.ok || !serverResponse.ok) {
|
|
107
|
+
throw new Error('Failed to fetch required data');
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
const [targetData, serverData] = await Promise.all([
|
|
111
|
+
targetResponse.json(),
|
|
112
|
+
serverResponse.json()
|
|
113
|
+
]);
|
|
114
|
+
|
|
115
|
+
if (!targetData.success || !serverData.success) {
|
|
116
|
+
throw new Error('Invalid data received');
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
return { targetData, serverData };
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
function findMcpServer(serverData, serverName) {
|
|
123
|
+
const mcpServer = serverData.data.feedConfiguration.mcpServers
|
|
124
|
+
.find(server => server.name === serverName);
|
|
125
|
+
|
|
126
|
+
if (!mcpServer) {
|
|
127
|
+
throw new Error('Server configuration not found');
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
return mcpServer;
|
|
131
|
+
}
|
|
132
|
+
|
|
133
|
+
function renderModalContent(elements, data) {
|
|
134
|
+
const { targetData, serverData, mcpServer, categoryName, serverName } = data;
|
|
135
|
+
const installationStatus = serverData.data.installationStatus || {};
|
|
136
|
+
const serverStatuses = installationStatus.serversStatus || {};
|
|
137
|
+
const serverStatus = serverStatuses[serverName] || { installedStatus: {} };
|
|
138
|
+
|
|
139
|
+
renderClientSection(elements.targetDiv, targetData.data, serverStatus, serverName, categoryName);
|
|
140
|
+
renderEnvironmentSection(elements.envInputs, mcpServer, targetData.clientMcpSettings, serverName);
|
|
141
|
+
renderArgumentsSection(elements.arguments, mcpServer);
|
|
142
|
+
renderRequirementsSection(elements.requirements, mcpServer, serverData, categoryName, serverName);
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
function setupFormHandler(elements, categoryName, serverName, serverData) {
|
|
146
|
+
const form = document.getElementById('installForm');
|
|
147
|
+
form.onsubmit = (e) => handleFormSubmit(e, {
|
|
148
|
+
elements,
|
|
149
|
+
categoryName,
|
|
150
|
+
serverName,
|
|
151
|
+
serverData
|
|
152
|
+
});
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
function handleFormSubmit(event, options) {
|
|
156
|
+
event.preventDefault();
|
|
157
|
+
const { elements, categoryName, serverName, serverData } = options;
|
|
158
|
+
|
|
159
|
+
const formData = collectFormData(elements);
|
|
160
|
+
if (!validateFormData(formData)) return;
|
|
161
|
+
|
|
162
|
+
const installOptions = buildInstallOptions(formData, serverData, serverName);
|
|
163
|
+
handleInstallation(categoryName, serverName, formData.targets, installOptions);
|
|
164
|
+
}
|
|
165
|
+
|
|
166
|
+
function collectFormData(elements) {
|
|
167
|
+
return {
|
|
168
|
+
envVars: getEnvironmentVariables(elements.envInputs),
|
|
169
|
+
args: getArguments(elements.arguments),
|
|
170
|
+
pythonEnv: getPythonEnvironment(),
|
|
171
|
+
targets: getSelectedTargets(),
|
|
172
|
+
requirements: getSelectedRequirements()
|
|
173
|
+
};
|
|
174
|
+
}
|
|
175
|
+
|
|
176
|
+
function validateFormData(formData) {
|
|
177
|
+
const { targets, requirements } = formData;
|
|
178
|
+
if (targets.length === 0 && requirements.length === 0) {
|
|
179
|
+
showError('Please select at least one client or requirement to update.');
|
|
180
|
+
return false;
|
|
181
|
+
}
|
|
182
|
+
return true;
|
|
183
|
+
}
|
|
184
|
+
|
|
185
|
+
function handleModalError(error, targetDiv) {
|
|
186
|
+
console.error("Error loading data:", error);
|
|
187
|
+
targetDiv.innerHTML = `<p class="text-red-500">Error: ${error.message}</p>`;
|
|
188
|
+
}
|
|
189
|
+
|
|
190
|
+
function refreshWithCategory() {
|
|
191
|
+
const lastSelected = localStorage.getItem('lastSelectedCategory');
|
|
192
|
+
setTimeout(() => {
|
|
193
|
+
if (lastSelected) {
|
|
194
|
+
window.location.href = window.location.pathname + '?category=' + encodeURIComponent(lastSelected);
|
|
195
|
+
} else {
|
|
196
|
+
location.reload();
|
|
197
|
+
}
|
|
198
|
+
}, 100);
|
|
199
|
+
}
|
|
200
|
+
|
|
201
|
+
// Add CSS styles for the toggle switch
|
|
202
|
+
const styleElement = document.createElement('style');
|
|
203
|
+
styleElement.textContent = `
|
|
204
|
+
.toggle-bg.bg-blue-500 {
|
|
205
|
+
background-color: #3b82f6;
|
|
206
|
+
}
|
|
207
|
+
.toggle-bg {
|
|
208
|
+
transition: background-color 0.3s;
|
|
209
|
+
}
|
|
210
|
+
.toggle-bg div {
|
|
211
|
+
transition: transform 0.3s;
|
|
212
|
+
}
|
|
213
|
+
`;
|
|
214
|
+
document.head.appendChild(styleElement);
|
|
@@ -235,6 +235,7 @@ export const serverRequirementTemplate = (serverIndex, reqIndex, isReadOnly = fa
|
|
|
235
235
|
<option value="">Select Type</option>
|
|
236
236
|
<option value="npm">NPM Package</option>
|
|
237
237
|
<option value="pip">PIP Package</option>
|
|
238
|
+
<option value="nuget">Nuget Package</option>
|
|
238
239
|
<option value="command">Command</option>
|
|
239
240
|
</select>
|
|
240
241
|
</div>
|
|
@@ -158,16 +158,16 @@ function renderServerCategoryList(servers) {
|
|
|
158
158
|
|
|
159
159
|
return `
|
|
160
160
|
<div class="server-item border border-gray-200 p-3 rounded hover:bg-gray-50 cursor-pointer transition duration-150 ease-in-out ${pinnedClass}"
|
|
161
|
-
data-server-name="${server.name}">
|
|
161
|
+
data-server-name="${server.name}" onclick="navigateToCategory('${server.name}')">
|
|
162
162
|
<div class="flex justify-between items-center">
|
|
163
|
-
<h3 class="font-semibold text-gray-800"
|
|
163
|
+
<h3 class="font-semibold text-gray-800">${server.displayName || server.name}</h3>
|
|
164
164
|
<div class="flex items-center">
|
|
165
165
|
<div class="pin-button ${pinnedClass}" onclick="togglePinCategoryItem('${server.name}', event)" title="${isPinned ? 'Unpin' : 'Pin'} this category">
|
|
166
166
|
${pinIcon}
|
|
167
167
|
</div>
|
|
168
168
|
</div>
|
|
169
169
|
</div>
|
|
170
|
-
<div class="text-sm text-gray-500 flex items-center mt-1"
|
|
170
|
+
<div class="text-sm text-gray-500 flex items-center mt-1">
|
|
171
171
|
${statusHtml}
|
|
172
172
|
${systemTagsHtml}
|
|
173
173
|
</div>
|
|
@@ -49,11 +49,11 @@
|
|
|
49
49
|
<div class="flex items-center justify-between mb-8">
|
|
50
50
|
<h1 class="text-3xl font-bold text-gray-900 flex items-center">
|
|
51
51
|
<i class='bx bx-server mr-3 text-blue-600'></i>
|
|
52
|
-
|
|
52
|
+
Publish MCP Server
|
|
53
53
|
</h1>
|
|
54
54
|
<a href="index.html" class="text-gray-600 hover:text-gray-900 flex items-center">
|
|
55
55
|
<i class='bx bx-arrow-back mr-2'></i>
|
|
56
|
-
|
|
56
|
+
Server List
|
|
57
57
|
</a>
|
|
58
58
|
</div>
|
|
59
59
|
|
|
@@ -62,10 +62,10 @@
|
|
|
62
62
|
<div class="mb-6 border-b border-gray-200">
|
|
63
63
|
<nav class="flex space-x-8" aria-label="Tabs">
|
|
64
64
|
<button id="tab-create-category" class="py-2 px-4 text-blue-600 border-b-2 border-blue-600 font-semibold focus:outline-none" type="button">
|
|
65
|
-
|
|
65
|
+
Add New Server Category
|
|
66
66
|
</button>
|
|
67
67
|
<button id="tab-create-server" class="py-2 px-4 text-gray-600 border-b-2 border-transparent hover:text-blue-600 hover:border-blue-600 font-semibold focus:outline-none" type="button">
|
|
68
|
-
|
|
68
|
+
Add New Server in Existing Category
|
|
69
69
|
</button>
|
|
70
70
|
</nav>
|
|
71
71
|
<!-- View Mode Toggle Switch -->
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/web/server.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,12 +1,16 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "imcp",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.5",
|
|
4
4
|
"description": "Node.js SDK for Model Context Protocol (MCP)",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
7
7
|
"bin": {
|
|
8
8
|
"imcp": "./dist/cli/index.js"
|
|
9
9
|
},
|
|
10
|
+
"files": [
|
|
11
|
+
"dist",
|
|
12
|
+
"README.md"
|
|
13
|
+
],
|
|
10
14
|
"scripts": {
|
|
11
15
|
"build": "tsc && npm run copy-public",
|
|
12
16
|
"dev": "tsc -w",
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
name: Temporary administrator access request
|
|
2
|
-
description: Request for temporary repository administrator access to this repository, a.k.a Just-in-Time (JIT) access.
|
|
3
|
-
title: "JIT Request"
|
|
4
|
-
labels: ["jit"]
|
|
5
|
-
assignees:
|
|
6
|
-
- gimsvc_microsoft
|
|
7
|
-
-
|
|
8
|
-
body:
|
|
9
|
-
- type: markdown
|
|
10
|
-
attributes:
|
|
11
|
-
value: |
|
|
12
|
-
:closed_lock_with_key: Permanent repository administrator access is not allowed as per Microsoft security policy. You can use this form to request for temporary administrator access to this repository.
|
|
13
|
-
- type: textarea
|
|
14
|
-
id: justification
|
|
15
|
-
attributes:
|
|
16
|
-
label: Justification
|
|
17
|
-
description: Describe the actions that you will perform with your temporary administrator access.
|
|
18
|
-
placeholder: I need to create secrets.
|
|
19
|
-
validations:
|
|
20
|
-
required: true
|
|
21
|
-
- type: dropdown
|
|
22
|
-
id: duration
|
|
23
|
-
attributes:
|
|
24
|
-
label: Duration (hours)
|
|
25
|
-
description: How long do you need access for? The duration you select is in hours.
|
|
26
|
-
options:
|
|
27
|
-
- 1
|
|
28
|
-
- 2
|
package/.github/acl/access.yml
DELETED
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
# Documentation for ACL policy: https://aka.ms/gim/docs/policy/acl
|
|
2
|
-
|
|
3
|
-
name: Access control list
|
|
4
|
-
description: List of teams and their permission levels
|
|
5
|
-
resource: repository
|
|
6
|
-
where:
|
|
7
|
-
configuration:
|
|
8
|
-
manageAccess:
|
|
9
|
-
- team: aicodervteam
|
|
10
|
-
role: Triage
|
|
11
|
-
- member: hod
|
|
12
|
-
role: Maintain
|
|
13
|
-
- member: penwa
|
|
14
|
-
role: Maintain
|
|
15
|
-
- member: anthu
|
|
16
|
-
role: Maintain
|
|
17
|
-
- member: enbaowang
|
|
18
|
-
role: Maintain
|
|
19
|
-
- member: xinli7
|
|
20
|
-
role: Maintain
|
package/.github/policies/jit.yml
DELETED
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
# Documentation for JIT policy: https://aka.ms/gim/docs/policy/jit
|
|
2
|
-
|
|
3
|
-
# metadata
|
|
4
|
-
id: id
|
|
5
|
-
name: JIT_Access
|
|
6
|
-
description: Policy for admin JIT for repos in this org
|
|
7
|
-
|
|
8
|
-
# filters
|
|
9
|
-
resource: repository
|
|
10
|
-
|
|
11
|
-
# primitive configuration
|
|
12
|
-
configuration:
|
|
13
|
-
jitAccess:
|
|
14
|
-
enabled: true
|
|
15
|
-
maxHours: 2
|
|
16
|
-
approvers:
|
|
17
|
-
role: Maintain
|
|
18
|
-
requestors:
|
|
19
|
-
role: Write
|
package/.roo/rules-code/rules.md
DELETED
|
@@ -1,88 +0,0 @@
|
|
|
1
|
-
*IMPORTANT* Before I attempt to complete a task with code changes, I MUST have to ask confirmation with user whether to update memory bank
|
|
2
|
-
|
|
3
|
-
memory*bank_strategy:
|
|
4
|
-
initialization: |
|
|
5
|
-
<thinking> - **CHECK FOR MEMORY BANK:**
|
|
6
|
-
</thinking>
|
|
7
|
-
<thinking>
|
|
8
|
-
* First, check if the memory-bank/ directory exists.
|
|
9
|
-
</thinking>
|
|
10
|
-
<thinking>
|
|
11
|
-
_ If memory-bank DOES exist, skip immediately to `if_memory_bank_exists`.
|
|
12
|
-
</thinking>
|
|
13
|
-
if_no_memory_bank: | 1. **Inform the User:**
|
|
14
|
-
"No Memory Bank was found. I recommend creating one to maintain project context. Would you like to switch to Flow-Architect mode to do this?" 2. **Conditional Actions:**
|
|
15
|
-
_ If the user declines:
|
|
16
|
-
<thinking>
|
|
17
|
-
I need to proceed with the task without Memory Bank functionality.
|
|
18
|
-
</thinking>
|
|
19
|
-
a. Inform the user that the Memory Bank will not be created.
|
|
20
|
-
b. Set the status to '[MEMORY BANK: INACTIVE]'.
|
|
21
|
-
c. Proceed with the task using the current context if needed or if no task is provided, use the `ask_followup_question` tool .
|
|
22
|
-
_ If the user agrees:
|
|
23
|
-
Switch to Flow-Architect mode to create the Memory Bank.
|
|
24
|
-
if_memory_bank_exists: |
|
|
25
|
-
\*\*READ \_ALL_ MEMORY BANK FILES\*\*
|
|
26
|
-
<thinking>
|
|
27
|
-
I will read all memory bank files, one at a time.
|
|
28
|
-
</thinking>
|
|
29
|
-
Plan: Read all mandatory files sequentially. 1. Read `productContext.md` 2. Read `activeContext.md` 3. Read `systemPatterns.md` 4. Read `decisionLog.md` 5. Read `progress.md` 6. Set status to [MEMORY BANK: ACTIVE] and inform user. 7. Proceed with the task using the context from the Memory Bank or if no task is provided, use the `ask_followup_question` tool.
|
|
30
|
-
|
|
31
|
-
general:
|
|
32
|
-
status_prefix: "Begin EVERY response with either '[MEMORY BANK: ACTIVE]' or '[MEMORY BANK: INACTIVE]', according to the current state of the Memory Bank."
|
|
33
|
-
|
|
34
|
-
memory_bank_updates:
|
|
35
|
-
frequency:
|
|
36
|
-
|
|
37
|
-
- "UPDATE MEMORY BANK THROUGHOUT THE CHAT SESSION, WHEN SIGNIFICANT CHANGES OCCUR IN THE PROJECT."
|
|
38
|
-
decisionLog.md:
|
|
39
|
-
trigger: "When a significant architectural decision is made (new component, data flow change, technology choice, etc.). Use your judgment to determine significance."
|
|
40
|
-
action: |
|
|
41
|
-
<thinking>
|
|
42
|
-
I need to update decisionLog.md with a decision, the rationale, and any implications.
|
|
43
|
-
</thinking>
|
|
44
|
-
Use insert*content to \_append* new information. Never overwrite existing entries. Always include a timestamp.
|
|
45
|
-
format: |
|
|
46
|
-
"[YYYY-MM-DD HH:MM:SS] - [Summary of Change/Focus/Issue]"
|
|
47
|
-
productContext.md:
|
|
48
|
-
trigger: "When the high-level project description, goals, features, or overall architecture changes significantly. Use your judgment to determine significance."
|
|
49
|
-
action: |
|
|
50
|
-
<thinking>
|
|
51
|
-
A fundamental change has occurred which warrants an update to productContext.md.
|
|
52
|
-
</thinking>
|
|
53
|
-
Use insert*content to \_append* new information or use apply*diff to modify existing entries if necessary. Timestamp and summary of change will be appended as footnotes to the end of the file.
|
|
54
|
-
format: "[YYYY-MM-DD HH:MM:SS] - [Summary of Change]"
|
|
55
|
-
systemPatterns.md:
|
|
56
|
-
trigger: "When new architectural patterns are introduced or existing ones are modified. Use your judgement."
|
|
57
|
-
action: |
|
|
58
|
-
<thinking>
|
|
59
|
-
I need to update systemPatterns.md with a brief summary and time stamp.
|
|
60
|
-
</thinking>
|
|
61
|
-
Use insert_content to \_append* new patterns or use apply*diff to modify existing entries if warranted. Always include a timestamp.
|
|
62
|
-
format: "[YYYY-MM-DD HH:MM:SS] - [Description of Pattern/Change]"
|
|
63
|
-
activeContext.md:
|
|
64
|
-
trigger: "When the current focus of work changes, or when significant progress is made. Use your judgement."
|
|
65
|
-
action: |
|
|
66
|
-
<thinking>
|
|
67
|
-
I need to update activeContext.md with a brief summary and time stamp.
|
|
68
|
-
</thinking>
|
|
69
|
-
Use insert_content to \_append* to the relevant section (Current Focus, Recent Changes, Open Questions/Issues) or use apply*diff to modify existing entries if warranted. Always include a timestamp.
|
|
70
|
-
format: "[YYYY-MM-DD HH:MM:SS] - [Summary of Change/Focus/Issue]"
|
|
71
|
-
progress.md:
|
|
72
|
-
trigger: "When a task begins, is completed, or if there are any changes Use your judgement."
|
|
73
|
-
action: |
|
|
74
|
-
<thinking>
|
|
75
|
-
I need to update progress.md with a brief summary and time stamp.
|
|
76
|
-
</thinking>
|
|
77
|
-
Use insert_content to \_append* the new entry, never overwrite existing entries. Always include a timestamp.
|
|
78
|
-
format: "[YYYY-MM-DD HH:MM:SS] - [Summary of Change/Focus/Issue]"
|
|
79
|
-
|
|
80
|
-
umb:
|
|
81
|
-
trigger: "^(Update Memory Bank|UMB)$"
|
|
82
|
-
instructions: - "Halt Current Task: Stop current activity" - "Acknowledge Command: '[MEMORY BANK: UPDATING]'" - "Review Chat History"
|
|
83
|
-
core_update_process: | 1. Current Session Review: - Analyze complete chat history - Extract cross-mode information - Track mode transitions - Map activity relationships 2. Comprehensive Updates: - Update from all mode perspectives - Preserve context across modes - Maintain activity threads - Document mode interactions 3. Memory Bank Synchronization: - Update all affected *.md files - Ensure cross-mode consistency - Preserve activity context - Document continuation points
|
|
84
|
-
task_focus: "During a UMB update, focus on capturing any clarifications, questions answered, or context provided *during the chat session*. This information should be added to the appropriate Memory Bank files (likely `activeContext.md` or `decisionLog.md`), using the other modes' update formats as a guide. *Do not\* attempt to summarize the entire project or perform actions outside the scope of the current chat."
|
|
85
|
-
cross-mode_updates: "During a UMB update, ensure that all relevant information from the chat session is captured and added to the Memory Bank. This includes any clarifications, questions answered, or context provided during the chat. Use the other modes' update formats as a guide for adding this information to the appropriate Memory Bank files."
|
|
86
|
-
post_umb_actions: - "Memory Bank fully synchronized" - "All mode contexts preserved" - "Session can be safely closed" - "Next assistant will have complete context"
|
|
87
|
-
override_file_restrictions: true
|
|
88
|
-
override_mode_restrictions: true
|