imcp 0.2.1 → 0.2.2
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/commands/uninstall.js +1 -1
- package/dist/cli/commands/uninstall.js.map +1 -1
- package/dist/cli/commands/update.d.ts +2 -0
- package/dist/cli/commands/update.js +2 -0
- package/dist/cli/commands/update.js.map +1 -0
- package/dist/cli/index.js +1 -1
- package/dist/cli/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{Command}from"commander";import{serverService}from"../../services/ServerService.js";import{SUPPORTED_CLIENTS_TEXT,parseClientsOption}from"../utils/clientOptions.js";export function createUninstallCommand(){return new Command("uninstall").description("Uninstall specific MCP servers").requiredOption("--names <names>","Server names (semicolon separated)").requiredOption("--clients <clients>",`Clients to uninstall from (semicolon separated). Supported values: ${SUPPORTED_CLIENTS_TEXT}`).option("--remove-data","Remove all associated data",!0).action((async e=>{try{const r=e.names.split(";").map((e=>e.trim()));let s,o;try{s=await serverService.resolveServerCategories(r)}catch(e){const r=e instanceof Error?e.message:"Failed to resolve server categories";console.error(r),process.exit(1)}try{o=parseClientsOption(e.clients)}catch(e){const r=e instanceof Error?e.message:String(e);console.error(r),process.exit(1)}console.log(`Uninstalling servers: ${r.map((e=>`${e} (${s[e]})`)).join(", ")} on ${o.join(", ")}`);const t=await Promise.all(r.map((r=>serverService.uninstallMcpServer(s[r],r,{removeData:e.removeData,targets:o})))),{success:
|
|
1
|
+
import{Command}from"commander";import{serverService}from"../../services/ServerService.js";import{hasLocalFeeds}from"../../utils/feedUtils.js";import{mcpManager}from"../../services/MCPManager.js";import{Logger}from"../../utils/logger.js";import{SUPPORTED_CLIENTS_TEXT,parseClientsOption}from"../utils/clientOptions.js";export function createUninstallCommand(){return new Command("uninstall").description("Uninstall specific MCP servers").requiredOption("--names <names>","Server names (semicolon separated)").requiredOption("--clients <clients>",`Clients to uninstall from (semicolon separated). Supported values: ${SUPPORTED_CLIENTS_TEXT}`).option("--remove-data","Remove all associated data",!0).action((async e=>{try{await hasLocalFeeds()||(Logger.log("Local feeds not found, syncing from remote..."),await serverService.syncFeeds()),await mcpManager.initialize();const r=e.names.split(";").map((e=>e.trim()));let s,o;try{s=await serverService.resolveServerCategories(r)}catch(e){const r=e instanceof Error?e.message:"Failed to resolve server categories";console.error(r),process.exit(1)}try{o=parseClientsOption(e.clients)}catch(e){const r=e instanceof Error?e.message:String(e);console.error(r),process.exit(1)}console.log(`Uninstalling servers: ${r.map((e=>`${e} (${s[e]})`)).join(", ")} on ${o.join(", ")}`);const t=await Promise.all(r.map((r=>serverService.uninstallMcpServer(s[r],r,{removeData:e.removeData,targets:o})))),{success:a,messages:n}=serverService.formatOperationResults(t);n.forEach((e=>{a?console.log(`✓ ${e}`):console.error(`✗ ${e}`)})),a||process.exit(1)}catch(e){const r=e instanceof Error?e.message:"Unknown error";console.error("Uninstallation failed:",r),process.exit(1)}}))}
|
|
2
2
|
//# sourceMappingURL=uninstall.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Command","serverService","SUPPORTED_CLIENTS_TEXT","parseClientsOption","createUninstallCommand","description","requiredOption","option","action","async","options","serverNames","names","split","map","name","trim","categoryMap","parsedClients","resolveServerCategories","error","message","Error","console","process","exit","clients","targetError","String","
|
|
1
|
+
{"version":3,"names":["Command","serverService","hasLocalFeeds","mcpManager","Logger","SUPPORTED_CLIENTS_TEXT","parseClientsOption","createUninstallCommand","description","requiredOption","option","action","async","options","log","syncFeeds","initialize","serverNames","names","split","map","name","trim","categoryMap","parsedClients","resolveServerCategories","error","message","Error","console","process","exit","clients","targetError","String","join","results","Promise","all","serverName","uninstallMcpServer","removeData","targets","success","messages","formatOperationResults","forEach"],"sources":["../../../src/cli/commands/uninstall.ts"],"mappings":"OAASA,YAAe,mBACfC,kBAAqB,yCACrBC,kBAAqB,kCACrBC,eAAkB,sCAClBC,WAAc,+BACdC,uBAAwBC,uBAA0B,mCAErD,SAAUC,yBACd,OAAO,IAAIP,QAAQ,aAChBQ,YAAY,kCACZC,eACC,kBACA,sCAEDA,eACC,sBACA,sEAAsEJ,0BAEvEK,OACC,gBACA,8BACA,GAEDC,QAAOC,MAAOC,IAKb,UAE2BX,kBAEvBE,OAAOU,IAAI,uDACLb,cAAcc,mBAEhBZ,WAAWa,aAEjB,MAAMC,EAAcJ,EAAQK,MAAMC,MAAM,KAAKC,KAAKC,GAAiBA,EAAKC,SACxE,IAAIC,EASAC,EARJ,IACED,QAAoBtB,cAAcwB,wBAAwBR,EAC5D,CAAE,MAAOS,GACP,MAAMC,EAAUD,aAAiBE,MAAQF,EAAMC,QAAU,sCACzDE,QAAQH,MAAMC,GACdG,QAAQC,KAAK,EACf,CAGA,IACEP,EAAgBlB,mBAAmBO,EAAQmB,QAC7C,CAAE,MAAOC,GACP,MAAMN,EAAUM,aAAuBL,MAAQK,EAAYN,QAAUO,OAAOD,GAC5EJ,QAAQH,MAAMC,GACdG,QAAQC,KAAK,EACf,CAEAF,QAAQf,IAAI,yBAAyBG,EAAYG,KAAIC,GAAQ,GAAGA,MAASE,EAAYF,QAAUc,KAAK,YAAYX,EAAcW,KAAK,SAEnI,MAAMC,QAAgBC,QAAQC,IAC5BrB,EAAYG,KAAKmB,GACRtC,cAAcuC,mBAAmBjB,EAAYgB,GAAaA,EAAY,CAC3EE,WAAY5B,EAAQ4B,WACpBC,QAASlB,QAKTmB,QAAEA,EAAOC,SAAEA,GAAa3C,cAAc4C,uBAAuBT,GACnEQ,EAASE,SAAQnB,IACXgB,EACFd,QAAQf,IAAI,KAAKa,KAEjBE,QAAQH,MAAM,KAAKC,IACrB,IAGGgB,GACHb,QAAQC,KAAK,EAEjB,CAAE,MAAOL,GACP,MAAMC,EAAUD,aAAiBE,MAAQF,EAAMC,QAAU,gBACzDE,QAAQH,MAAM,yBAA0BC,GACxCG,QAAQC,KAAK,EACf,IAEN","ignoreList":[]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{Command}from"commander";import{serverService}from"../../services/ServerService.js";import{Logger}from"../../utils/logger.js";import{hasLocalFeeds}from"../../utils/feedUtils.js";import{mcpManager}from"../../services/MCPManager.js";import{RequirementService}from"../../services/RequirementService.js";import{ConfigurationProvider}from"../../core/loaders/ConfigurationProvider.js";import{SUPPORTED_CLIENTS_TEXT,parseClientsOption}from"../utils/clientOptions.js";export function createUpdateCommand(){return new Command("update").description("Update MCP server requirements to their latest available versions").addHelpText("after",'\nExamples:\n # Update all requirements for a server\n $ imcp update --name coding-flow --clients "MSRooCode;GithubCopilot"\n\n # Update for all clients\n $ imcp update --name coding-flow --clients "MSRooCode;GithubCopilot;ClaudeCode"\n ').requiredOption("--name <name>","Server name to update").requiredOption("--clients <clients>",`Target clients (semicolon separated). Supported values: ${SUPPORTED_CLIENTS_TEXT}`).action((async e=>{try{await hasLocalFeeds()||(Logger.log("Local feeds not found, syncing from remote..."),await serverService.syncFeeds()),await mcpManager.initialize();const r=e.name.trim();let t,o;r||(Logger.error("Server name is required."),process.exit(1));try{t=parseClientsOption(e.clients)}catch(e){const r=e instanceof Error?e.message:String(e);Logger.error(r),process.exit(1)}try{o=await serverService.resolveServerCategories([r])}catch(e){const r=e instanceof Error?e.message:"Failed to resolve server categories.";Logger.error(r),process.exit(1)}const a=o[r];Logger.log(`Checking for updates: ${r} (category: ${a})`);const i=RequirementService.getInstance();await i.checkServerRequirementForUpdateAsync(a,r),await new Promise((e=>setTimeout(e,2e3)));const n=ConfigurationProvider.getInstance(),s=await n.getInstallationStatus(a),c=s?.requirementsStatus||{},l=await mcpManager.getFeedConfiguration(a),m=l?.mcpServers.find((e=>e.name===r)),p=m?.dependencies?.requirements?.map((e=>e.name))||[],g=[];for(const e of p){const r=c[e];r?.availableUpdate&&(g.push({name:e,updateVersion:r.availableUpdate.version}),Logger.log(` ↑ ${e}: ${r.version||"current"} → ${r.availableUpdate.version}`))}if(0===g.length)return void Logger.log("✓ All requirements are up to date. No updates available.");Logger.log(`Found ${g.length} requirement(s) to update. Applying...`);const d={targetClients:t,blockUntilComplete:!0,requirements:g.map((e=>({name:e.name,version:e.updateVersion,type:"npm"})))},u=await serverService.installMcpServer(a,r,d);u.success?Logger.log(`✓ ${u.message||"Update completed successfully."}`):(Logger.error(`✗ ${u.message||"Update failed."}`),process.exit(1))}catch(e){const r=e instanceof Error?e.message:"Unknown error";Logger.error("Update failed:",r),process.exit(1)}}))}
|
|
2
|
+
//# sourceMappingURL=update.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["Command","serverService","Logger","hasLocalFeeds","mcpManager","RequirementService","ConfigurationProvider","SUPPORTED_CLIENTS_TEXT","parseClientsOption","createUpdateCommand","description","addHelpText","requiredOption","action","async","options","log","syncFeeds","initialize","serverName","name","trim","parsedClients","categoryMap","error","process","exit","clients","clientError","message","Error","String","resolveServerCategories","categoryName","requirementService","getInstance","checkServerRequirementForUpdateAsync","Promise","resolve","setTimeout","configProvider","installationStatus","getInstallationStatus","requirementsStatus","feedConfig","getFeedConfiguration","serverConfig","mcpServers","find","s","serverRequirementNames","dependencies","requirements","map","r","requirementsToUpdate","reqName","status","availableUpdate","push","updateVersion","version","length","installOptions","targetClients","blockUntilComplete","type","result","installMcpServer","success"],"sources":["../../../src/cli/commands/update.ts"],"mappings":"OAASA,YAAe,mBACfC,kBAAqB,yCACrBC,WAAc,+BACdC,kBAAqB,kCACrBC,eAAkB,sCAClBC,uBAA0B,8CAC1BC,0BAA6B,qDAC7BC,uBAAwBC,uBAA0B,mCAGrD,SAAUC,sBACd,OAAO,IAAIT,QAAQ,UAChBU,YAAY,qEACZC,YAAY,QAAS,wPAQrBC,eACC,gBACA,yBAEDA,eACC,sBACA,2DAA2DL,0BAE5DM,QAAOC,MAAOC,IAIb,UAE2BZ,kBAEvBD,OAAOc,IAAI,uDACLf,cAAcgB,mBAEhBb,WAAWc,aAEjB,MAAMC,EAAaJ,EAAQK,KAAKC,OAOhC,IAAIC,EAUAC,EAhBCJ,IACHjB,OAAOsB,MAAM,4BACbC,QAAQC,KAAK,IAKf,IACEJ,EAAgBd,mBAAmBO,EAAQY,QAC7C,CAAE,MAAOC,GACP,MAAMC,EAAUD,aAAuBE,MAAQF,EAAYC,QAAUE,OAAOH,GAC5E1B,OAAOsB,MAAMK,GACbJ,QAAQC,KAAK,EACf,CAIA,IACEH,QAAoBtB,cAAc+B,wBAAwB,CAACb,GAC7D,CAAE,MAAOK,GACP,MAAMK,EAAUL,aAAiBM,MAAQN,EAAMK,QAAU,uCACzD3B,OAAOsB,MAAMK,GACbJ,QAAQC,KAAK,EACf,CAEA,MAAMO,EAAeV,EAAYJ,GACjCjB,OAAOc,IAAI,yBAAyBG,gBAAyBc,MAG7D,MAAMC,EAAqB7B,mBAAmB8B,oBACxCD,EAAmBE,qCAAqCH,EAAcd,SAGtE,IAAIkB,SAAQC,GAAWC,WAAWD,EAAS,OAGjD,MAAME,EAAiBlC,sBAAsB6B,cACvCM,QAA2BD,EAAeE,sBAAsBT,GAChEU,EAAqBF,GAAoBE,oBAAsB,GAG/DC,QAAmBxC,WAAWyC,qBAAqBZ,GACnDa,EAAeF,GAAYG,WAAWC,MAAKC,GAAKA,EAAE7B,OAASD,IAC3D+B,EAAyBJ,GAAcK,cAAcC,cAAcC,KAAIC,GAAKA,EAAElC,QAAS,GAGvFmC,EAAuE,GAC7E,IAAK,MAAMC,KAAWN,EAAwB,CAC5C,MAAMO,EAASd,EAAmBa,GAC9BC,GAAQC,kBACVH,EAAqBI,KAAK,CACxBvC,KAAMoC,EACNI,cAAeH,EAAOC,gBAAgBG,UAExC3D,OAAOc,IAAI,OAAOwC,MAAYC,EAAOI,SAAW,eAAeJ,EAAOC,gBAAgBG,WAE1F,CAEA,GAAoC,IAAhCN,EAAqBO,OAEvB,YADA5D,OAAOc,IAAI,4DAIbd,OAAOc,IAAI,SAASuC,EAAqBO,gDAGzC,MAAMC,EAAuC,CAC3CC,cAAe1C,EACf2C,oBAAoB,EACpBb,aAAcG,EAAqBF,KAAIC,IAAK,CAC1ClC,KAAMkC,EAAElC,KACRyC,QAASP,EAAEM,cACXM,KAAM,WAIJC,QAAelE,cAAcmE,iBAAiBnC,EAAcd,EAAY4C,GAE1EI,EAAOE,QACTnE,OAAOc,IAAI,KAAKmD,EAAOtC,SAAW,qCAElC3B,OAAOsB,MAAM,KAAK2C,EAAOtC,SAAW,oBACpCJ,QAAQC,KAAK,GAEjB,CAAE,MAAOF,GACP,MAAMK,EAAUL,aAAiBM,MAAQN,EAAMK,QAAU,gBACzD3B,OAAOsB,MAAM,iBAAkBK,GAC/BJ,QAAQC,KAAK,EACf,IAEN","ignoreList":[]}
|
package/dist/cli/index.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import{Command}from"commander";import{createServeCommand}from"./commands/serve.js";import{createListCommand}from"./commands/list.js";import{createInstallCommand}from"./commands/install.js";import{createUninstallCommand}from"./commands/uninstall.js";import{createPullCommand}from"./commands/pull.js";import{createTuiCommand}from"./commands/tui.js";import{Logger}from"../utils/logger.js";import{checkForUpdates}from"../utils/versionUtils.js";async function main(){const o=new Command;o.name("imcp").description("IMCP (Install Model Context Protocol) CLI").option("--verbose","Show detailed logs for all commands"),o.parseOptions(process.argv);const e=o.opts();Logger.setVerbose(!!e.verbose),o.addCommand(createServeCommand()),o.addCommand(createInstallCommand()),o.addCommand(createListCommand()),o.addCommand(createUninstallCommand()),o.addCommand(createPullCommand()),o.addCommand(createTuiCommand()),o.exitOverride(),await checkForUpdates();try{await o.parseAsync(process.argv)}catch(o){const e=o;"commander.help"===e.code||"commander.version"===e.code?process.exit(0):(console.error("Error:",e.message||"An unknown error occurred"),process.exit(1))}}process.on("unhandledRejection",(o=>{o instanceof Error?console.error("Unhandled promise rejection:",o.message):console.error("Unhandled promise rejection:",o),process.exit(1)})),main().catch((o=>{o instanceof Error?console.error("Fatal error:",o.message):console.error("Fatal error:",o),process.exit(1)}));
|
|
2
|
+
import{Command}from"commander";import{createServeCommand}from"./commands/serve.js";import{createListCommand}from"./commands/list.js";import{createInstallCommand}from"./commands/install.js";import{createUninstallCommand}from"./commands/uninstall.js";import{createUpdateCommand}from"./commands/update.js";import{createPullCommand}from"./commands/pull.js";import{createTuiCommand}from"./commands/tui.js";import{Logger}from"../utils/logger.js";import{checkForUpdates}from"../utils/versionUtils.js";async function main(){const o=new Command;o.name("imcp").description("IMCP (Install Model Context Protocol) CLI").option("--verbose","Show detailed logs for all commands"),o.parseOptions(process.argv);const e=o.opts();Logger.setVerbose(!!e.verbose),o.addCommand(createServeCommand()),o.addCommand(createInstallCommand()),o.addCommand(createUpdateCommand()),o.addCommand(createListCommand()),o.addCommand(createUninstallCommand()),o.addCommand(createPullCommand()),o.addCommand(createTuiCommand()),o.exitOverride(),await checkForUpdates();try{await o.parseAsync(process.argv)}catch(o){const e=o;"commander.help"===e.code||"commander.version"===e.code?process.exit(0):(console.error("Error:",e.message||"An unknown error occurred"),process.exit(1))}}process.on("unhandledRejection",(o=>{o instanceof Error?console.error("Unhandled promise rejection:",o.message):console.error("Unhandled promise rejection:",o),process.exit(1)})),main().catch((o=>{o instanceof Error?console.error("Fatal error:",o.message):console.error("Fatal error:",o),process.exit(1)}));
|
|
3
3
|
//# sourceMappingURL=index.js.map
|
package/dist/cli/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Command","createServeCommand","createListCommand","createInstallCommand","createUninstallCommand","createPullCommand","createTuiCommand","Logger","checkForUpdates","async","main","program","name","description","option","parseOptions","process","argv","opts","setVerbose","verbose","addCommand","exitOverride","parseAsync","error","commanderError","code","exit","console","message","on","Error","catch"],"sources":["../../src/cli/index.ts"],"mappings":";OAESA,YAAe,mBACfC,uBAA0B,6BAC1BC,sBAAyB,4BACzBC,yBAA4B,+BAC5BC,2BAA8B,iCAC9BC,sBAAyB,4BACzBC,qBAAwB,2BACxBC,WAAc,4BACdC,oBAAuB,2BAOhCC,eAAeC,OAIb,MAAMC,EAAU,
|
|
1
|
+
{"version":3,"names":["Command","createServeCommand","createListCommand","createInstallCommand","createUninstallCommand","createUpdateCommand","createPullCommand","createTuiCommand","Logger","checkForUpdates","async","main","program","name","description","option","parseOptions","process","argv","opts","setVerbose","verbose","addCommand","exitOverride","parseAsync","error","commanderError","code","exit","console","message","on","Error","catch"],"sources":["../../src/cli/index.ts"],"mappings":";OAESA,YAAe,mBACfC,uBAA0B,6BAC1BC,sBAAyB,4BACzBC,yBAA4B,+BAC5BC,2BAA8B,iCAC9BC,wBAA2B,8BAC3BC,sBAAyB,4BACzBC,qBAAwB,2BACxBC,WAAc,4BACdC,oBAAuB,2BAOhCC,eAAeC,OAIb,MAAMC,EAAU,IAAIZ,QACpBY,EACGC,KAAK,QACLC,YAAY,6CACZC,OAAO,YAAa,uCAGvBH,EAAQI,aAAaC,QAAQC,MAC7B,MAAMC,EAAOP,EAAQO,OACrBX,OAAOY,aAAaD,EAAKE,SAGzBT,EAAQU,WAAWrB,sBACnBW,EAAQU,WAAWnB,wBACnBS,EAAQU,WAAWjB,uBACnBO,EAAQU,WAAWpB,qBACnBU,EAAQU,WAAWlB,0BACnBQ,EAAQU,WAAWhB,qBACnBM,EAAQU,WAAWf,oBAGnBK,EAAQW,qBAGFd,kBAEN,UACQG,EAAQY,WAAWP,QAAQC,KACnC,CAAE,MAAOO,GACP,MAAMC,EAAiBD,EAEK,mBAAxBC,EAAeC,MAGgB,sBAAxBD,EAAeC,KADxBV,QAAQW,KAAK,IAKbC,QAAQJ,MAAM,SAAUC,EAAeI,SAAW,6BAClDb,QAAQW,KAAK,GAEjB,CACF,CAGAX,QAAQc,GAAG,sBAAuBN,IAC5BA,aAAiBO,MACnBH,QAAQJ,MAAM,+BAAgCA,EAAMK,SAEpDD,QAAQJ,MAAM,+BAAgCA,GAEhDR,QAAQW,KAAK,EAAE,IAIjBjB,OAAOsB,OAAOR,IACRA,aAAiBO,MACnBH,QAAQJ,MAAM,eAAgBA,EAAMK,SAEpCD,QAAQJ,MAAM,eAAgBA,GAEhCR,QAAQW,KAAK,EAAE","ignoreList":[]}
|