UNPKG

@simonecoelhosfo/optimizely-mcp-server

Version:

Optimizely MCP Server for AI assistants with integrated CLI tools

277 lines 11.2 kB
/** * Complete Personalization Campaign Example * Sourced from Orchestration Bible v2.0 */ export const personalizationCampaignComplete = { id: 'tpl_vip_personalization_campaign', name: 'VIP Customer Personalization Campaign', description: 'Complete personalization campaign with desktop & mobile VIP experiences', version: '1.0.0', type: 'user', platform: 'web', author: 'orchestration.bible@optimizely.com', template_format_version: 2, parameters: { project_id: { type: 'string', required: true, description: 'Web Experimentation project ID' }, campaign_name: { type: 'string', required: true, description: 'Base name for the campaign', default: 'VIP Customer Experience' }, vip_cookie_name: { type: 'string', required: false, default: 'vip_customer', description: 'Cookie that identifies VIP customers' }, homepage_url: { type: 'string', required: false, default: 'https://www.example.com', description: 'Homepage URL for targeting' } }, steps: [ // Step 1: Create the campaign container { id: 'create_campaign', type: 'template', name: 'Create VIP Personalization Campaign', template: { entity_type: 'campaign', mode: 'template', operation: 'create', template_data: { project_id: '${project_id}', name: '${campaign_name}', type: 'personalization', holdback: 500, status: 'active' } } }, // Step 2: Create VIP page targeting { id: 'create_vip_page', type: 'template', name: 'Create VIP Landing Page', template: { entity_type: 'page', mode: 'template', operation: 'create', template_data: { project_id: '${project_id}', name: '${campaign_name} Landing Page', key: 'vip_landing_page', edit_url: '${homepage_url}', conditions: [ { match_type: 'substring', value: '${homepage_url}' } ], activation_type: 'immediate' } } }, // Step 3: Create VIP customer audience (desktop) { id: 'create_vip_audience', type: 'template', name: 'Create VIP Desktop Audience', template: { entity_type: 'audience', mode: 'template', operation: 'create', template_data: { project_id: '${project_id}', name: '${campaign_name} Desktop VIPs', key: 'vip_desktop_audience', conditions: { and: [ { type: 'cookie', name: '${vip_cookie_name}', match_type: 'exact', value: 'true' }, { type: 'device', value: 'desktop' } ] } } } }, // Step 4: Create mobile VIP audience { id: 'create_mobile_audience', type: 'template', name: 'Create VIP Mobile Audience', template: { entity_type: 'audience', mode: 'template', operation: 'create', template_data: { project_id: '${project_id}', name: '${campaign_name} Mobile VIPs', key: 'vip_mobile_audience', conditions: { and: [ { type: 'cookie', name: '${vip_cookie_name}', match_type: 'exact', value: 'true' }, { type: 'device', value: 'mobile' } ] } } } }, // Step 5: Create conversion event { id: 'create_conversion_event', type: 'template', name: 'Create Add to Cart Event', template: { entity_type: 'event', mode: 'template', operation: 'create', template_data: { project_id: '${project_id}', name: '${campaign_name} Add to Cart', key: 'vip_add_to_cart', event_type: 'custom', category: 'add_to_cart' } } }, // Step 6: Create VIP desktop experience { id: 'create_vip_desktop_experiment', type: 'template', name: 'Create VIP Desktop Experience', template: { entity_type: 'experiment', mode: 'template', operation: 'create', template_data: { project_id: '${project_id}', name: '${campaign_name} VIP Desktop', campaign_id: '${create_campaign.entity_id}', page_ids: ['${create_vip_page.entity_id}'], audience: { ref: { id: '${create_vip_audience.entity_id}' } }, metrics: [ { event_id: '${create_conversion_event.entity_id}', scope: 'visitor', winning_direction: 'increasing' } ], variations: [ { name: 'VIP Desktop Experience', weight: 10000, actions: [ { page_id: '${create_vip_page.entity_id}', changes: [ { type: 'custom_code', value: "// VIP Desktop Experience\\ndocument.querySelector('.header').style.background = 'linear-gradient(90deg, #FFD700, #FFA500)';\\ndocument.querySelector('.hero h1').innerText = 'Welcome Back, VIP Customer!';\\n// Add VIP badge\\nconst vipBadge = document.createElement('div');\\nvipBadge.className = 'vip-badge';\\nvipBadge.innerHTML = '<span>⭐ VIP Member</span>';\\nvipBadge.style.cssText = 'position: fixed; top: 20px; right: 20px; background: gold; padding: 10px 20px; border-radius: 20px; font-weight: bold; z-index: 9999;';\\ndocument.body.appendChild(vipBadge);" } ] } ] } ], status: 'active' } }, depends_on: ['create_campaign', 'create_vip_page', 'create_vip_audience', 'create_conversion_event'] }, // Step 7: Create VIP mobile experience { id: 'create_vip_mobile_experiment', type: 'template', name: 'Create VIP Mobile Experience', template: { entity_type: 'experiment', mode: 'template', operation: 'create', template_data: { project_id: '${project_id}', name: '${campaign_name} VIP Mobile', campaign_id: '${create_campaign.entity_id}', page_ids: ['${create_vip_page.entity_id}'], audience: { ref: { id: '${create_mobile_audience.entity_id}' } }, metrics: [ { event_id: '${create_conversion_event.entity_id}', scope: 'visitor', winning_direction: 'increasing' } ], variations: [ { name: 'VIP Mobile Experience', weight: 10000, actions: [ { page_id: '${create_vip_page.entity_id}', changes: [ { type: 'custom_code', value: "// VIP Mobile Experience\\ndocument.querySelector('.mobile-nav').style.display = 'block';\\ndocument.querySelector('.hero').style.fontSize = '1.2em';\\n// Add mobile VIP banner\\nconst vipBanner = document.createElement('div');\\nvipBanner.className = 'vip-mobile-banner';\\nvipBanner.innerHTML = '<span>⭐ VIP Member Benefits Active</span>';\\nvipBanner.style.cssText = 'background: linear-gradient(90deg, #FFD700, #FFA500); padding: 10px; text-align: center; font-weight: bold;';\\ndocument.body.insertBefore(vipBanner, document.body.firstChild);" } ] } ] } ], status: 'active' } }, depends_on: ['create_campaign', 'create_vip_page', 'create_mobile_audience', 'create_conversion_event'] } ], outputs: { campaign_id: { value: '${create_campaign.entity_id}', description: 'Created campaign ID' }, desktop_experiment_id: { value: '${create_vip_desktop_experiment.entity_id}', description: 'Desktop VIP experiment ID' }, mobile_experiment_id: { value: '${create_vip_mobile_experiment.entity_id}', description: 'Mobile VIP experiment ID' } }, config: { max_execution_time: 300000, parallel_execution: false, rollback_on_failure: true } }; //# sourceMappingURL=PersonalizationCampaignExample.js.map