logger.ts•845 B
export class Logger {
  private context: string;
  
  constructor(context: string) {
    this.context = context;
  }
  
  private log(level: string, message: string, data?: any): void {
    // MCP servers should log to stderr
    console.error(JSON.stringify({
      timestamp: new Date().toISOString(),
      level,
      context: this.context,
      message,
      ...(data && { data })
    }));
  }
  
  info(message: string, data?: any): void {
    this.log('info', message, data);
  }
  
  error(message: string, data?: any): void {
    this.log('error', message, data);
  }
  
  warn(message: string, data?: any): void {
    this.log('warn', message, data);
  }
  
  debug(message: string, data?: any): void {
    if (process.env.DEBUG) {
      this.log('debug', message, data);
    }
  }
}
export const logger = new Logger('things-mcp');