Shopify + Brevo Integration
Shopify + Brevo
Connect Shopify’s commerce data to Brevo’s engagement platform through MCP. Sync customers, trigger post-purchase sequences, recover abandoned carts, and run loyalty campaigns, all orchestrated by AI agents in Claude.
MCP Servers Used
| Server | Package/URL | Purpose |
|---|---|---|
| Shopify Dev MCP | npx -y @shopify/dev-mcp@latest | Search Shopify API docs, introspect GraphQL schema, validate queries |
| Shopify Storefront MCP | App-specific setup | Product catalog, cart operations, customer data, order tracking |
| Brevo MCP | mcp.brevo.com/v1/brevo/mcp | Contacts, email campaigns, SMS, WhatsApp, event tracking |
Tip
Shopify Dev MCP is for development, it helps Claude understand Shopify’s APIs. Storefront MCP is for production data access. You’ll typically use both during development, then Storefront MCP + Brevo MCP for the live agent.
Setup
Step 1: Connect Both MCP Servers
Add to your Claude Desktop or Claude Code configuration:
{ "mcpServers": { "brevo": { "command": "npx", "args": [ "mcp-remote", "https://mcp.brevo.com/v1/brevo/mcp", "--header", "Authorization: Bearer ${BREVO_MCP_TOKEN}" ], "env": { "BREVO_MCP_TOKEN": "your-brevo-mcp-token" } }, "shopify-dev-mcp": { "command": "npx", "args": ["-y", "@shopify/dev-mcp@latest"] } }}Step 2: Verify Connection
Ask Claude:
> What Shopify APIs are available for reading customer data?> How many contacts do I have in Brevo?Claude should use Shopify Dev MCP for the first question and Brevo MCP for the second.
Use Case 1: Customer Sync Agent
Sync Shopify customers to Brevo contacts with full purchase history:
---name: shopify-customer-syncdescription: Sync Shopify customers to Brevo contacts with purchase dataversion: 1.0.0temperature: 0.1tools: - shopify-dev-mcp - brevo_contacts - brevo_attributes - brevo_liststriggers: - schedule: "0 */6 * * *" - event: customer_created - event: order_completed---
# Shopify Customer Sync Agent
Synchronize customer data from Shopify to Brevo contacts.
## Strategy
1. Query Shopify for customers updated since last sync2. For each customer, create or update Brevo contact with: - Email, name, phone - Total orders, total spend (as Brevo attributes) - Last order date - Tags and segments3. Add customers to appropriate Brevo lists based on behavior: - New customers → "Welcome Series" list - Repeat buyers → "Loyal Customers" list - High-value (>$500 LTV) → "VIP" list
## Field Mapping
| Shopify Field | Brevo Attribute ||--------------|-----------------|| email | EMAIL || first_name | FIRSTNAME || last_name | LASTNAME || phone | SMS || orders_count | ORDER_COUNT || total_spent | TOTAL_SPENT || last_order_date | LAST_ORDER || tags | SHOPIFY_TAGS || accepts_marketing | OPT_IN |
## Rules- ONLY sync customers who have accepted marketing- NEVER overwrite Brevo data if Shopify field is empty- ALWAYS validate phone numbers to E.164 format before sync- Track sync events for debugging: shopify_sync_success, shopify_sync_errorUse Case 2: Post-Purchase Campaign Agent
Trigger personalized post-purchase sequences based on order data:
---name: shopify-post-purchasedescription: Orchestrate post-purchase email sequences based on Shopify order dataversion: 1.0.0temperature: 0.3tools: - shopify-dev-mcp - brevo_contacts - brevo_email_campaign_management - brevo_templates - brevo_sms_campaignstriggers: - event: order_completed---
# Post-Purchase Agent
When a Shopify order is completed, design and trigger theappropriate follow-up sequence in Brevo.
## Sequence Logic
### First-Time Buyers1. Immediate: Order confirmation (transactional)2. Day 3: Welcome email with brand story3. Day 7: Product care tips / how-to guide4. Day 14: Review request5. Day 30: Cross-sell based on purchased category
### Repeat Buyers1. Immediate: Order confirmation2. Day 3: Loyalty points notification3. Day 14: "Restock" reminder if consumable product4. Day 21: Exclusive early access to new products
### VIP Orders (>$200)1. Immediate: Premium order confirmation2. Day 1: Personal thank-you from founder (email)3. Day 3: SMS with tracking + care tips4. Day 7: Invitation to VIP program
## Rules- ALWAYS check order status before sending, skip if cancelled/refunded- NEVER send marketing to customers who haven't opted in- Personalize with: product name, order number, customer first name- Use Brevo template variables for dynamic contentUse Case 3: Abandoned Cart Recovery
Bridge Shopify cart data with Brevo’s messaging:
---name: shopify-cart-recoverydescription: Recover Shopify abandoned carts via Brevo email and SMSversion: 2.0.0temperature: 0.2tools: - shopify-dev-mcp - brevo_contacts - brevo_email_campaign_management - brevo_templates - brevo_sms_campaignstriggers: - event: cart_abandoned conditions: - cart_value: "> 40" - time_since_activity: "> 1h"---
# Cart Recovery Agent
Monitor Shopify abandoned carts and execute recoverysequences through Brevo.
## Recovery Sequence
1. **+1 hour**: Reminder email with cart contents and images2. **+24 hours**: If no open → SMS with short link to cart3. **+48 hours**: If no recovery → Email with 10% discount code4. **+72 hours**: If cart > $150 and no recovery → WhatsApp with personal message
## Cart Data to Include- Product images and names (from Shopify)- Cart total with currency formatting- Direct checkout link- Discount code (generated dynamically for step 3)
## Rules- NEVER send to customers who already completed checkout- ALWAYS check cart status before each step- Maximum 4 touchpoints per abandoned cart- Respect opt-out preferences per channelExample: Natural Language Orchestration
With both MCP servers connected, you can orchestrate in real-time:
You: "Check my Shopify store for customers who ordered in the last 7 days but aren't in Brevo yet, and add them."
Claude: Checking Shopify for recent customers...[Uses shopify-dev-mcp to understand the Customers API][Queries Shopify for orders in last 7 days]
Found 43 customers from last 7 days.Checking against Brevo contacts...[Uses brevo_contacts to search for each email]
23 customers are not yet in Brevo. Adding them now...[Uses brevo_contacts to create 23 new contacts][Uses brevo_lists to add first-time buyers to "Welcome Series"][Uses brevo_lists to add repeat buyers to "Loyal Customers"]
Done:- 23 new contacts created in Brevo- 15 added to "Welcome Series" list (first-time buyers)- 8 added to "Loyal Customers" list (repeat buyers)- All contacts synced with order count and total spentNext Steps
- Brevo MCP Server, Full list of Brevo MCP modules
- Agent Specification, Customize agent behavior
- HubSpot + Brevo, CRM integration
- Stripe + Brevo, Payment event integration