sfcc-dev-mcp
Version:
MCP server for Salesforce B2C Commerce Cloud development assistance including logs, debugging, and development tools
58 lines • 1.63 kB
JavaScript
/**
* Shared constants for log tool handlers
* Centralizes defaults, types, and configuration
*/
// Log levels enum for type safety
export var LogLevel;
(function (LogLevel) {
LogLevel["ERROR"] = "error";
LogLevel["WARN"] = "warn";
LogLevel["INFO"] = "info";
LogLevel["DEBUG"] = "debug";
LogLevel["ALL"] = "all";
})(LogLevel || (LogLevel = {}));
// Default limits for different tool types
export const DEFAULT_LIMITS = {
latest: 10,
search: 20,
jobEntries: 50,
jobSearch: 20,
jobFiles: 10,
};
// Tool name sets for O(1) lookup
export const LOG_TOOL_NAMES_SET = new Set([
'get_latest_error',
'get_latest_warn',
'get_latest_info',
'get_latest_debug',
'summarize_logs',
'search_logs',
'list_log_files',
'get_log_file_contents',
]);
export const JOB_LOG_TOOL_NAMES_SET = new Set([
'get_latest_job_log_files',
'search_job_logs_by_name',
'get_job_log_entries',
'search_job_logs',
'get_job_execution_summary',
]);
// Helper functions
export function getLimit(providedLimit, toolType) {
return providedLimit ?? DEFAULT_LIMITS[toolType];
}
export function isValidLogLevel(level) {
return Object.values(LogLevel).includes(level);
}
export function deriveLogLevel(toolName, argsLevel) {
if (argsLevel && isValidLogLevel(argsLevel)) {
return argsLevel;
}
// Extract level from tool name for get_latest_* tools
const match = toolName.match(/get_latest_(\w+)/);
if (match && isValidLogLevel(match[1])) {
return match[1];
}
return LogLevel.ALL;
}
//# sourceMappingURL=log-tool-constants.js.map