Skip to main content
Glama
logger.ts1.15 kB
export enum LogLevel { ERROR = "error", WARN = "warn", INFO = "info", DEBUG = "debug", } interface LogEntry { level: LogLevel; message: string; timestamp: string; context?: Record<string, unknown>; } class Logger { constructor(private context: string = "MCP-Server") {} private log( level: LogLevel, message: string, meta?: Record<string, unknown> ) { const entry: LogEntry = { level, message, timestamp: new Date().toISOString(), context: { service: this.context, ...meta }, }; // eslint-disable-next-line no-console console.error(JSON.stringify(entry)); } error(message: string, meta?: Record<string, unknown>) { this.log(LogLevel.ERROR, message, meta); } warn(message: string, meta?: Record<string, unknown>) { this.log(LogLevel.WARN, message, meta); } info(message: string, meta?: Record<string, unknown>) { this.log(LogLevel.INFO, message, meta); } debug(message: string, meta?: Record<string, unknown>) { this.log(LogLevel.DEBUG, message, meta); } } export function createLogger(context?: string) { return new Logger(context); }

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/andradehenrique/dokploy-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server