UNPKG

@todo-for-ai/mcp

Version:

Model Context Protocol server for Todo for AI task management system with Streamable HTTP transport. Provides AI assistants with access to task management, project information, and feedback submission capabilities through modern HTTP-based communication.

56 lines 1.78 kB
import { CONFIG } from './config.js'; const LOG_LEVELS = { debug: 0, info: 1, warn: 2, error: 3, }; class Logger { level; constructor(level = 'info') { console.log('[LOGGER] Initializing logger...'); this.level = level; console.log('[LOGGER] Logger initialized:', { configuredLevel: level, numericLevel: LOG_LEVELS[level], availableLevels: Object.keys(LOG_LEVELS), timestamp: new Date().toISOString() }); } shouldLog(level) { return LOG_LEVELS[level] >= LOG_LEVELS[this.level]; } formatMessage(level, message, ...args) { const timestamp = new Date().toISOString(); const prefix = `[${timestamp}] [${level.toUpperCase()}] [todo-mcp]`; if (args.length > 0) { return `${prefix} ${message} ${args.map(arg => typeof arg === 'object' ? JSON.stringify(arg, null, 2) : String(arg)).join(' ')}`; } return `${prefix} ${message}`; } debug(message, ...args) { if (this.shouldLog('debug')) { console.debug(this.formatMessage('debug', message, ...args)); } } info(message, ...args) { if (this.shouldLog('info')) { console.info(this.formatMessage('info', message, ...args)); } } warn(message, ...args) { if (this.shouldLog('warn')) { console.warn(this.formatMessage('warn', message, ...args)); } } error(message, ...args) { if (this.shouldLog('error')) { console.error(this.formatMessage('error', message, ...args)); } } setLevel(level) { this.level = level; } } export const logger = new Logger(CONFIG.logLevel); //# sourceMappingURL=logger.js.map