UNPKG

limitless-ai-mcp-server

Version:

MCP server for integrating Limitless AI Pendant recordings with AI assistants

57 lines 2.1 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.logger = exports.Logger = exports.LogLevel = void 0; var LogLevel; (function (LogLevel) { LogLevel[LogLevel["DEBUG"] = 0] = "DEBUG"; LogLevel[LogLevel["INFO"] = 1] = "INFO"; LogLevel[LogLevel["WARN"] = 2] = "WARN"; LogLevel[LogLevel["ERROR"] = 3] = "ERROR"; })(LogLevel || (exports.LogLevel = LogLevel = {})); class Logger { level; prefix; constructor(prefix = 'limitless-mcp', level = LogLevel.INFO) { this.prefix = prefix; this.level = this.getLogLevelFromEnv() || level; } getLogLevelFromEnv() { const envLevel = process.env.LOG_LEVEL?.toUpperCase(); if (envLevel && envLevel in LogLevel) { return LogLevel[envLevel]; } return null; } shouldLog(level) { return level >= this.level; } formatMessage(level, message, ...args) { const timestamp = new Date().toISOString(); const formattedArgs = args.length > 0 ? ' ' + JSON.stringify(args) : ''; return `[${timestamp}] [${this.prefix}] [${level}] ${message}${formattedArgs}`; } debug(message, ...args) { if (this.shouldLog(LogLevel.DEBUG)) { process.stderr.write(this.formatMessage('DEBUG', message, ...args) + '\n'); } } info(message, ...args) { if (this.shouldLog(LogLevel.INFO)) { process.stderr.write(this.formatMessage('INFO', message, ...args) + '\n'); } } warn(message, ...args) { if (this.shouldLog(LogLevel.WARN)) { process.stderr.write(this.formatMessage('WARN', message, ...args) + '\n'); } } error(message, error, ...args) { if (this.shouldLog(LogLevel.ERROR)) { const errorDetails = error instanceof Error ? { message: error.message, stack: error.stack } : error; process.stderr.write(this.formatMessage('ERROR', message, errorDetails, ...args) + '\n'); } } } exports.Logger = Logger; exports.logger = new Logger(); //# sourceMappingURL=logger.js.map