UNPKG

nikto-mcp

Version:

A secure MCP (Model Context Protocol) server that enables AI agents to interact with Nikto web server scanner

37 lines 1.49 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.logger = void 0; exports.createLogger = createLogger; const tslib_1 = require("tslib"); const winston_1 = tslib_1.__importDefault(require("winston")); const index_1 = require("../config/index"); const logFormat = winston_1.default.format.combine(winston_1.default.format.timestamp(), winston_1.default.format.errors({ stack: true }), winston_1.default.format.splat(), winston_1.default.format.json()); function getLogTransports() { // In MCP mode, we need to keep stdout clean for JSON-RPC protocol // Only errors and warnings should go to stderr, while info/debug should be discarded if (process.env['MCP_STDOUT_LOGS'] !== 'allow') { return [ new winston_1.default.transports.Console({ stderrLevels: ['error', 'warn'], consoleWarnLevels: [], level: 'warn', // Only log warn and error levels }), ]; } // In development/testing mode, allow normal console output return [ new winston_1.default.transports.Console({ stderrLevels: ['error', 'warn'], }), ]; } function createLogger(service) { return winston_1.default.createLogger({ level: index_1.config.logLevel, format: logFormat, defaultMeta: { service }, transports: getLogTransports(), }); } exports.logger = createLogger('nikto-mcp'); //# sourceMappingURL=logger.js.map