MCPcopy Create free account
hub / github.com/QodeXcli/QodeX / startAll

Method startAll

src/mcp/manager.ts:78–101  ·  view source on GitHub ↗

Start every enabled server. Returns once all start attempts have finished (success or failure).

()

Source from the content-addressed store, hash-verified

76
77 /** Start every enabled server. Returns once all start attempts have finished (success or failure). */
78 async startAll(): Promise<void> {
79 const entries = Object.entries(this.config.servers ?? {});
80 if (entries.length === 0) {
81 logger.debug('MCPManager: no servers configured');
82 return;
83 }
84
85 const startup = entries.map(async ([name, srvConfig]) => {
86 if (srvConfig.enabled === false) {
87 logger.info(`MCP server '${name}' is disabled, skipping`);
88 return;
89 }
90 try {
91 await this.startOne(name, srvConfig);
92 } catch (e: any) {
93 // Don't propagate — one bad server shouldn't kill QodeX startup
94 logger.warn(`MCP server '${name}' failed to start: ${e.message}`);
95 }
96 });
97
98 await Promise.allSettled(startup);
99 const total = Array.from(this.clients.values()).reduce((sum, c) => sum + c.tools.length, 0);
100 logger.info(`MCPManager: ${this.clients.size} server(s), ${total} tool(s) total`);
101 }
102
103 /** Start a single server and register its tools. */
104 async startOne(name: string, config: MCPServerConfig): Promise<void> {

Callers 1

bootstrapFunction · 0.95

Calls 4

startOneMethod · 0.95
debugMethod · 0.80
infoMethod · 0.80
warnMethod · 0.80

Tested by

no test coverage detected