UNPKG

sfcc-dev-mcp

Version:

MCP server for Salesforce B2C Commerce Cloud development assistance including logs, debugging, and development tools

76 lines 3.42 kB
import { LogToolValidators } from '../../utils/log-tool-utils.js'; import { ValidationHelpers, CommonValidations } from './validation-helpers.js'; import { getLimit } from '../../utils/log-tool-constants.js'; import { JobLogValidators, JobLogFormatters } from '../../utils/job-log-utils.js'; /** * Configuration for job log tools * Maps each tool to its validation, execution, and messaging logic */ export const JOB_LOG_TOOL_CONFIG = { get_latest_job_log_files: { defaults: (args) => ({ limit: getLimit(args.limit, 'jobFiles'), }), validate: (args, toolName) => LogToolValidators.validateLimit(args.limit, toolName), exec: async (args, client) => client.getLatestJobLogFiles(args.limit), logMessage: (args) => JobLogFormatters.formatJobLogMessage('Fetching latest job log files', { limit: args.limit, }), }, search_job_logs_by_name: { defaults: (args) => ({ limit: getLimit(args.limit, 'jobFiles'), }), validate: (args, toolName) => { ValidationHelpers.validateArguments(args, CommonValidations.requiredString('jobName'), toolName); LogToolValidators.validateLimit(args.limit, toolName); }, exec: async (args, client) => client.searchJobLogsByName(args.jobName, args.limit), logMessage: (args) => JobLogFormatters.formatJobLogMessage('Searching job logs by name', { jobName: args.jobName, limit: args.limit, }), }, get_job_log_entries: { defaults: (args) => ({ level: args.level ?? 'all', limit: getLimit(args.limit, 'jobEntries'), }), validate: (args, toolName) => { JobLogValidators.validateJobLogLevel(args.level, toolName); LogToolValidators.validateLimit(args.limit, toolName); }, exec: async (args, client) => client.getJobLogEntries(args.level, args.limit, args.jobName), logMessage: (args) => JobLogFormatters.formatJobLogMessage('Fetching job log entries', { level: args.level, limit: args.limit, jobName: args.jobName, }), }, search_job_logs: { defaults: (args) => ({ level: args.level ?? 'all', limit: getLimit(args.limit, 'jobSearch'), }), validate: (args, toolName) => { ValidationHelpers.validateArguments(args, CommonValidations.requiredString('pattern'), toolName); JobLogValidators.validateJobLogLevel(args.level, toolName); LogToolValidators.validateLimit(args.limit, toolName); }, exec: async (args, client) => client.searchJobLogs(args.pattern, args.level, args.limit, args.jobName), logMessage: (args) => JobLogFormatters.formatJobLogMessage('Searching job logs', { pattern: args.pattern, level: args.level, limit: args.limit, jobName: args.jobName, }), }, get_job_execution_summary: { validate: (args, toolName) => { ValidationHelpers.validateArguments(args, CommonValidations.requiredString('jobName'), toolName); }, exec: async (args, client) => client.getJobExecutionSummary(args.jobName), logMessage: (args) => `Getting job execution summary for: ${args.jobName}`, }, }; //# sourceMappingURL=job-log-tool-config.js.map