ruvnet/ruflo · error

[${b.name}] failed to start

Error message

[${b.name}] failed to start

What it means

Log warning in initBackends: StdioMcpClient.start() returned false for a needed MCP backend; that backend is omitted from the backend map and its tools are simply unavailable, while the remaining backends still start.

Source

Thrown at ruflo/src/mcp-bridge/index.js:310

    }
  }
  return filtered;
}

async function initBackends() {
  const needed = BACKEND_DEFS.filter(isBackendNeeded);
  if (needed.length === 0) return;

  console.log(`Starting ${needed.length} MCP backends: ${needed.map(b => b.name).join(", ")}`);

  await Promise.allSettled(
    needed.map(async (b) => {
      const client = new StdioMcpClient(b.name, b.command, b.args);
      const ok = await client.start();
      if (ok) {
        mcpBackends.set(b.name, client);
      } else {
        console.warn(`[${b.name}] failed to start`);
      }
    })
  );

  allBackendTools = getActiveTools();
  console.log(`MCP backends: ${mcpBackends.size} active, ${allBackendTools.length} tools (filtered by groups)`);
}

process.on("SIGTERM", () => { for (const [, c] of mcpBackends) c.stop(); process.exit(0); });
process.on("SIGINT", () => { for (const [, c] of mcpBackends) c.stop(); process.exit(0); });

// =============================================================================
// BUILT-IN TOOLS (core group — always on)
// =============================================================================

const BUILTIN_TOOLS = [
  {
    name: "search",

View on GitHub (pinned to fa13ee4ad6)

Solutions

  1. Check the bridge process stderr/logs for the named server; fix its configuration or command and restart the bridge.
Defensive patterns

Strategy: fallback

When it happens

Trigger: Thrown at ruflo/src/mcp-bridge/index.js:310 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of ruvnet/ruflo@fa13ee4ad6 (2026-08-18). Data as JSON: /api/errors/3b5d8df9c0e8d460. Report an issue: GitHub.