UNPKG

@spaik/mcp-server-roi

Version:

MCP server for AI ROI prediction and tracking with Monte Carlo simulations

151 lines 5.72 kB
// Industry benchmark data // In a production system, this would come from a database or external API const industryBenchmarks = { financial_services: { customer_service_automation: { average_roi: 250, average_payback_months: 14, adoption_rate: 0.75, success_rate: 0.85, confidence_factor: 1.1, typical_use_cases: ['Account inquiries', 'Transaction disputes', 'Loan applications'] }, fraud_detection: { average_roi: 400, average_payback_months: 10, adoption_rate: 0.90, success_rate: 0.92, confidence_factor: 1.2, typical_use_cases: ['Transaction monitoring', 'Account takeover', 'Application fraud'] }, document_processing: { average_roi: 180, average_payback_months: 16, adoption_rate: 0.65, success_rate: 0.78, confidence_factor: 0.95, typical_use_cases: ['KYC documents', 'Loan documents', 'Compliance reports'] } }, healthcare: { document_processing: { average_roi: 220, average_payback_months: 18, adoption_rate: 0.60, success_rate: 0.75, confidence_factor: 0.9, typical_use_cases: ['Medical records', 'Insurance claims', 'Prior authorizations'] }, predictive_maintenance: { average_roi: 180, average_payback_months: 20, adoption_rate: 0.45, success_rate: 0.70, confidence_factor: 0.85, typical_use_cases: ['Medical equipment', 'HVAC systems', 'Power systems'] }, data_analytics: { average_roi: 200, average_payback_months: 15, adoption_rate: 0.70, success_rate: 0.80, confidence_factor: 1.0, typical_use_cases: ['Patient outcomes', 'Resource utilization', 'Cost analysis'] } }, retail: { customer_service_automation: { average_roi: 200, average_payback_months: 12, adoption_rate: 0.80, success_rate: 0.88, confidence_factor: 1.05, typical_use_cases: ['Order status', 'Returns processing', 'Product inquiries'] }, inventory_optimization: { average_roi: 150, average_payback_months: 16, adoption_rate: 0.70, success_rate: 0.82, confidence_factor: 1.0, typical_use_cases: ['Demand forecasting', 'Stock replenishment', 'Warehouse optimization'] }, process_automation: { average_roi: 175, average_payback_months: 14, adoption_rate: 0.65, success_rate: 0.80, confidence_factor: 0.95, typical_use_cases: ['Order processing', 'Pricing updates', 'Vendor management'] } }, manufacturing: { predictive_maintenance: { average_roi: 300, average_payback_months: 12, adoption_rate: 0.75, success_rate: 0.85, confidence_factor: 1.15, typical_use_cases: ['Equipment monitoring', 'Quality control', 'Downtime prevention'] }, inventory_optimization: { average_roi: 200, average_payback_months: 14, adoption_rate: 0.70, success_rate: 0.83, confidence_factor: 1.05, typical_use_cases: ['Supply chain', 'Raw materials', 'Finished goods'] }, process_automation: { average_roi: 250, average_payback_months: 15, adoption_rate: 0.80, success_rate: 0.87, confidence_factor: 1.1, typical_use_cases: ['Production planning', 'Quality inspection', 'Logistics'] } } }; // Default benchmarks for unknown combinations const defaultBenchmark = { average_roi: 150, average_payback_months: 18, adoption_rate: 0.60, success_rate: 0.75, confidence_factor: 0.9, typical_use_cases: ['General process improvement'] }; export async function getBenchmarkData(industry, projectType) { // In a real implementation, this might fetch from a database or API // For now, return from static data const industryData = industryBenchmarks[industry]; if (!industryData) { return defaultBenchmark; } const benchmark = industryData[projectType]; return benchmark || defaultBenchmark; } export function getIndustryComparison(actualMetrics, industry, projectType) { const benchmark = industryBenchmarks[industry]?.[projectType] || defaultBenchmark; // Calculate percentiles (simplified - in reality would use distribution data) const roiRatio = actualMetrics.roi / benchmark.average_roi; const paybackRatio = benchmark.average_payback_months / actualMetrics.payback_months; const roiPercentile = Math.min(99, Math.max(1, 50 + (roiRatio - 1) * 50)); const paybackPercentile = Math.min(99, Math.max(1, 50 + (paybackRatio - 1) * 50)); let performance = 'average'; if (roiPercentile > 75 && paybackPercentile > 75) { performance = 'excellent'; } else if (roiPercentile > 60 || paybackPercentile > 60) { performance = 'above average'; } else if (roiPercentile < 40 && paybackPercentile < 40) { performance = 'below average'; } return { performance_vs_benchmark: performance, roi_percentile: Math.round(roiPercentile), payback_percentile: Math.round(paybackPercentile) }; } //# sourceMappingURL=industry-benchmarks.js.map