wp_performance_optimize
Analyze WordPress sites to identify performance improvements, generate actionable recommendations for speed, reliability, and efficiency, and provide ROI estimates and predictions.
Instructions
Get optimization recommendations and insights
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| site | No | Specific site ID for multi-site setups (optional for single site) | |
| focus | No | Optimization focus area (speed, reliability, efficiency, scaling) | |
| priority | No | Implementation timeline (quick_wins, medium_term, long_term, all) | |
| includeROI | No | Include ROI estimates (default: true) | |
| includePredictions | No | Include performance predictions (default: true) |
Implementation Reference
- The handler function for wp_performance_optimize tool. Generates optimization recommendations from analytics, filters by priority and focus area, formats output, includes ROI estimates and performance predictions.
private async getOptimizationRecommendations( _client: WordPressClient, params: Record<string, unknown>, ): Promise<unknown> { return toolWrapper(async () => { const { site, focus = "speed", priority = "all", includeROI = true, includePredictions = true, } = params as { site?: string; focus?: string; priority?: string; includeROI?: boolean; includePredictions?: boolean; }; // Generate optimization plan const optimizationPlan = this.analytics.generateOptimizationPlan(); // Filter by priority let recommendations: Array<{ priority: string; impact: string; implementationEffort: string; [key: string]: unknown; }> = []; if (priority === "quick_wins" || priority === "all") { recommendations.push( ...optimizationPlan.quickWins.map((r) => ({ ...r, timeline: "quick_wins", })), ); } if (priority === "medium_term" || priority === "all") { recommendations.push( ...optimizationPlan.mediumTerm.map((r) => ({ ...r, timeline: "medium_term", })), ); } if (priority === "long_term" || priority === "all") { recommendations.push( ...optimizationPlan.longTerm.map((r) => ({ ...r, timeline: "long_term", })), ); } // Filter by focus area if (focus !== "speed") { const focusMap: Record<string, string[]> = { reliability: ["reliability"], efficiency: ["cost", "performance"], scaling: ["performance", "reliability"], }; const targetImpacts = focusMap[focus] || []; recommendations = recommendations.filter((r) => targetImpacts.includes(r.impact)); } // Get predictions if requested let predictions: Record<string, unknown> | null = null; if (includePredictions) { predictions = this.analytics.predictPerformance(60); // 1 hour prediction } return { success: true, data: { recommendations: recommendations.map((rec) => ({ ...rec, formattedPriority: formatPriority(rec.priority), formattedEffort: formatEffort(rec.implementationEffort), })), roi: includeROI ? optimizationPlan.estimatedROI : null, predictions: predictions || null, summary: { totalRecommendations: recommendations.length, quickWins: optimizationPlan.quickWins.length, mediumTerm: optimizationPlan.mediumTerm.length, longTerm: optimizationPlan.longTerm.length, estimatedImpact: calculateEstimatedImpact(recommendations), }, metadata: { timestamp: new Date().toISOString(), focus, priority, site: site || "all", }, }, }; }); - src/tools/performance/PerformanceTools.ts:219-255 (registration)Tool registration definition including name, description, parameters schema, and handler reference within the getTools() method.
{ name: "wp_performance_optimize", description: "Get optimization recommendations and insights", parameters: [ { name: "site", type: "string", description: "Specific site ID for multi-site setups (optional for single site)", required: false, }, { name: "focus", type: "string", description: "Optimization focus area (speed, reliability, efficiency, scaling)", required: false, }, { name: "priority", type: "string", description: "Implementation timeline (quick_wins, medium_term, long_term, all)", required: false, }, { name: "includeROI", type: "boolean", description: "Include ROI estimates (default: true)", required: false, }, { name: "includePredictions", type: "boolean", description: "Include performance predictions (default: true)", required: false, }, ], handler: this.getOptimizationRecommendations.bind(this), }, - Input schema definition for the wp_performance_optimize tool parameters.
parameters: [ { name: "site", type: "string", description: "Specific site ID for multi-site setups (optional for single site)", required: false, }, { name: "focus", type: "string", description: "Optimization focus area (speed, reliability, efficiency, scaling)", required: false, }, { name: "priority", type: "string", description: "Implementation timeline (quick_wins, medium_term, long_term, all)", required: false, }, { name: "includeROI", type: "boolean", description: "Include ROI estimates (default: true)", required: false, }, { name: "includePredictions", type: "boolean", description: "Include performance predictions (default: true)", required: false, }, ],