Intégration HubSpot + Brevo
HubSpot + Brevo
Connectez les données CRM de HubSpot à la plateforme d’engagement de Brevo. Utilisez HubSpot comme source de vérité pour les données de contacts et de deals, et Brevo pour l’exécution des campagnes multicanal, email, SMS, WhatsApp.
Serveurs MCP utilisés
| Serveur | URL | Auth | Objectif |
|---|---|---|---|
| HubSpot MCP | mcp.hubspot.com | OAuth/PKCE | Données CRM : contacts, entreprises, deals, tickets, produits, commandes (lecture seule) |
| Brevo MCP | mcp.brevo.com/v1/brevo/mcp | Token | Contacts, email, SMS, WhatsApp, campagnes, suivi des événements |
Caution
Le serveur MCP de HubSpot est actuellement en lecture seule (BÊTA). Vous pouvez lire les données CRM depuis HubSpot et les utiliser pour piloter des actions dans Brevo, mais vous ne pouvez pas écrire dans HubSpot via MCP. Pour une synchronisation bidirectionnelle, utilisez l’API REST de HubSpot en parallèle de la connexion MCP.
Configuration
Étape 1 : Créer une application d’authentification MCP HubSpot
- Dans HubSpot, allez dans Développement > Applications d’authentification MCP
- Cliquez sur Créer une application d’authentification MCP
- Définissez votre URL de redirection (pour les tests Claude Desktop :
http://localhost:6274/oauth/callback/debug) - Notez votre Client ID et Client Secret
Étape 2 : Connecter les deux serveurs MCP
Pour les outils qui prennent en charge OAuth (Cursor, VS Code) :
{ "mcpServers": { "hubspot": { "url": "https://mcp.hubspot.com/", "headers": { "Authorization": "Bearer your-hubspot-oauth-token" } }, "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" } } }}Tip
HubSpot MCP nécessite OAuth avec PKCE. Des outils comme Cursor gèrent cela nativement. Pour Claude Desktop/Code, vous devrez peut-être obtenir un token séparément et le passer comme Bearer token.
Étape 3 : Vérifier
> Show me my HubSpot deals in the Negotiation stage> How many contacts do I have in Brevo?Cas d’usage 1 : Agent de synchronisation des contacts CRM
Synchronisez les contacts HubSpot vers Brevo avec enrichissement des données de deal :
---name: hubspot-contact-syncdescription: Sync HubSpot CRM contacts to Brevo with deal data enrichmentversion: 1.0.0temperature: 0.1tools: - hubspot - brevo_contacts - brevo_attributes - brevo_lists - brevo_segmentstriggers: - schedule: "0 */4 * * *"---
# HubSpot Contact Sync
Read contacts and associated deal data from HubSpot,sync to Brevo with enriched attributes for segmentation.
## Strategy
1. Query HubSpot for contacts modified since last sync2. For each contact, fetch associated deals and company3. Create/update Brevo contact with enriched data: - CRM lifecycle stage → Brevo attribute - Deal amount → Brevo attribute - Deal stage → Brevo segment4. Auto-segment in Brevo: - "SQL" contacts → Sales Qualified list - "Opportunity" contacts → Active Pipeline list - "Customer" contacts → Customer list
## Field Mapping
| HubSpot Property | Brevo Attribute ||-----------------|-----------------|| email | EMAIL || firstname | FIRSTNAME || lastname | LASTNAME || phone | SMS || lifecyclestage | LIFECYCLE_STAGE || hs_lead_status | LEAD_STATUS || company (associated) | COMPANY || deal amount (sum) | DEAL_VALUE || deal stage (latest) | DEAL_STAGE |
## Rules- NEVER sync contacts without email addresses- ALWAYS preserve existing Brevo data if HubSpot field is empty- Track sync with events: hubspot_sync_success, hubspot_sync_error- Log contact count per lifecycle stage for reportingCas d’usage 2 : Agent de campagne par étape de deal
Déclenchez des campagnes Brevo basées sur les changements d’étape des deals HubSpot :
---name: hubspot-deal-campaignsdescription: Trigger targeted Brevo campaigns when HubSpot deals change stagesversion: 1.0.0temperature: 0.3tools: - hubspot - brevo_contacts - brevo_email_campaign_management - brevo_templates - brevo_segmentstriggers: - schedule: "0 9 * * *"---
# Deal-Stage Campaign Agent
Monitor HubSpot deal stages and trigger appropriateengagement campaigns in Brevo.
## Stage-to-Campaign Mapping
| HubSpot Deal Stage | Brevo Action ||-------------------|--------------|| Appointment Scheduled | Send meeting prep email with company info || Qualified to Buy | Add to "Nurture" drip sequence || Presentation Scheduled | Send case study relevant to their industry || Decision Maker Bought-In | Send ROI calculator + pricing guide || Contract Sent | Send "What to expect" onboarding preview || Closed Won | Trigger welcome sequence + onboarding || Closed Lost | Add to "Win-back" sequence (30-day delay) |
## Rules- ONLY send to contacts associated with the deal- Check if contact has opted in to marketing before sending- One campaign trigger per deal stage change (no duplicates)- Log all campaign triggers for deal attributionExemple : Requête en langage naturel
You: "Find all HubSpot deals that closed this month and make sure those contacts are getting our onboarding email sequence in Brevo."
Claude: Querying HubSpot for deals closed this month...[Uses hubspot MCP to search deals with closeddate in current month]
Found 12 deals closed this month, involving 18 contacts.Checking Brevo for these contacts...[Uses brevo_contacts to look up each email]
Results:- 14 contacts already in Brevo and receiving onboarding sequence- 4 contacts not yet in Brevo
Creating 4 new Brevo contacts and adding to onboarding list...[Uses brevo_contacts to create contacts][Uses brevo_lists to add to "Onboarding" list]
Done. All 18 contacts from this month's closed deals are nowin Brevo's onboarding sequence.Prochaines étapes
- Shopify + Brevo, Intégration e-commerce
- Stripe + Brevo, Intégration des événements de paiement
- Spécification d’agent, Personnalisez le comportement de l’agent