UNPKG

@aurracloud/mcp-cli

Version:

A command-line tool to install, manage, and setup MCP (Model Context Protocol) servers with Docker support

98 lines 2.65 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.logger = void 0; exports.setLoggerMode = setLoggerMode; exports.getLoggerMode = getLoggerMode; /** * Logger level hierarchy (higher numbers = more verbose) */ const LOG_LEVELS = { quiet: 0, // Only errors normal: 1, // Errors, warnings, success, basic info verbose: 2, // All of normal + detailed info debug: 3 // All of verbose + debug info }; /** * Current logger mode - can be set globally */ let currentMode = 'normal'; /** * Set the global logger mode */ function setLoggerMode(mode) { currentMode = mode; } /** * Get the current logger mode */ function getLoggerMode() { return currentMode; } /** * Check if a message should be logged based on current mode and message level */ function shouldLog(messageLevel) { return LOG_LEVELS[messageLevel] <= LOG_LEVELS[currentMode]; } /** * Simple logger utility for MCP CLI with mode support */ exports.logger = { /** * Log info message (visible in normal, verbose, debug modes) */ info: (message, mode = 'normal') => { if (shouldLog(mode)) { console.log(`\x1b[36mINFO\x1b[0m: ${message}`); } }, /** * Log success message (visible in normal, verbose, debug modes) */ success: (message, mode = 'normal') => { if (shouldLog(mode)) { console.log(`\x1b[32mSUCCESS\x1b[0m: ${message}`); } }, /** * Log warning message (visible in normal, verbose, debug modes) */ warn: (message, mode = 'normal') => { if (shouldLog(mode)) { console.warn(`\x1b[33mWARN\x1b[0m: ${message}`); } }, /** * Log error message (always visible, even in quiet mode) */ error: (message, error, mode = 'quiet') => { if (shouldLog(mode)) { console.error(`\x1b[31mERROR\x1b[0m: ${message}`); if (error) { if (error instanceof Error) { console.error(`\x1b[31m${error.message}\x1b[0m`); } else { console.error(error); } } } }, /** * Log verbose message (visible in verbose, debug modes) */ verbose: (message) => { if (shouldLog('verbose')) { console.log(`\x1b[90mVERBOSE\x1b[0m: ${message}`); } }, /** * Log debug message (visible only in debug mode) */ debug: (message) => { if (shouldLog('debug')) { console.log(`\x1b[35mDEBUG\x1b[0m: ${message}`); } } }; //# sourceMappingURL=logger.js.map