brevo-automation
Original:🇺🇸 English
Translated
Automate Brevo (Sendinblue) tasks via Rube MCP (Composio): manage email campaigns, create/edit templates, track senders, and monitor campaign performance. Always search tools first for current schemas.
4installs
Sourcedavepoon/buildwithclaude
Added on
NPX Install
npx skill4agent add davepoon/buildwithclaude brevo-automationTags
Translated version includes tags in frontmatterSKILL.md Content
View Translation Comparison →Brevo Automation via Rube MCP
Automate Brevo (formerly Sendinblue) email marketing operations through Composio's Brevo toolkit via Rube MCP.
Toolkit docs: composio.dev/toolkits/brevo
Prerequisites
- Rube MCP must be connected (RUBE_SEARCH_TOOLS available)
- Active Brevo connection via with toolkit
RUBE_MANAGE_CONNECTIONSbrevo - Always call first to get current tool schemas
RUBE_SEARCH_TOOLS
Setup
Get Rube MCP: Add as an MCP server in your client configuration. No API keys needed — just add the endpoint and it works.
https://rube.app/mcp- Verify Rube MCP is available by confirming responds
RUBE_SEARCH_TOOLS - Call with toolkit
RUBE_MANAGE_CONNECTIONSbrevo - If connection is not ACTIVE, follow the returned auth link to complete Brevo authentication
- Confirm connection status shows ACTIVE before running any workflows
Core Workflows
1. Manage Email Campaigns
When to use: User wants to list, review, or update email campaigns
Tool sequence:
- - List all campaigns with filters [Required]
BREVO_LIST_EMAIL_CAMPAIGNS - - Update campaign content or settings [Optional]
BREVO_UPDATE_EMAIL_CAMPAIGN
Key parameters for listing:
- : Campaign type ('classic' or 'trigger')
type - : Campaign status ('suspended', 'archive', 'sent', 'queued', 'draft', 'inProcess', 'inReview')
status - /
startDate: Date range filter (YYYY-MM-DDTHH:mm:ss.SSSZ format)endDate - : Stats type to include ('globalStats', 'linksStats', 'statsByDomain')
statistics - : Results per page (max 100, default 50)
limit - : Pagination offset
offset - : Sort order ('asc' or 'desc')
sort - : Set
excludeHtmlContentto reduce response sizetrue
Key parameters for update:
- : Numeric campaign ID (required)
campaign_id - : Campaign name
name - : Email subject line
subject - : HTML email body (mutually exclusive with
htmlContent)htmlUrl - : URL to HTML content
htmlUrl - : Sender object with
sender,name, oremailid - : Object with
recipientsandlistIdsexclusionListIds - : Scheduled send time (YYYY-MM-DDTHH:mm:ss.SSSZ)
scheduledAt
Pitfalls:
- and
startDateare mutually required; provide both or neitherendDate - Date filters only work when is not passed or set to 'sent'
status - and
htmlContentare mutually exclusivehtmlUrl - Campaign email must be a verified sender in Brevo
sender - A/B testing fields (,
subjectA,subjectB,splitRule) requirewinnerCriteriaabTesting: true - uses full ISO 8601 format with timezone
scheduledAt
2. Create and Manage Email Templates
When to use: User wants to create, edit, list, or delete email templates
Tool sequence:
- - List all templates [Required]
BREVO_GET_ALL_EMAIL_TEMPLATES - - Create a new template or update existing [Required]
BREVO_CREATE_OR_UPDATE_EMAIL_TEMPLATE - - Delete an inactive template [Optional]
BREVO_DELETE_EMAIL_TEMPLATE
Key parameters for listing:
- : Filter active (
templateStatus) or inactive (true) templatesfalse - : Results per page (max 1000, default 50)
limit - : Pagination offset
offset - : Sort order ('asc' or 'desc')
sort
Key parameters for create/update:
- : Include to update; omit to create new
templateId - : Template display name (required for creation)
templateName - : Email subject line (required for creation)
subject - : HTML template body (min 10 characters; use this or
htmlContent)htmlUrl - : Sender object with
senderandname, oremail(required for creation)id - : Reply-to email address
replyTo - : Activate or deactivate the template
isActive - : Category tag for the template
tag
Pitfalls:
- When is provided, the tool updates; when omitted, it creates
templateId - For creation, ,
templateName, andsubjectare requiredsender - must be at least 10 characters
htmlContent - Template personalization uses syntax
{{contact.ATTRIBUTE}} - Only inactive templates can be deleted
- and
htmlContentare mutually exclusivehtmlUrl
3. Manage Senders
When to use: User wants to view authorized sender identities
Tool sequence:
- - List all verified senders [Required]
BREVO_GET_ALL_SENDERS
Key parameters: (none required)
Pitfalls:
- Senders must be verified before they can be used in campaigns or templates
- Sender verification is done through the Brevo web interface, not via API
- Sender IDs can be used in fields for campaigns and templates
sender.id
4. Configure A/B Testing Campaigns
When to use: User wants to set up or modify A/B test settings on a campaign
Tool sequence:
- - Find the target campaign [Prerequisite]
BREVO_LIST_EMAIL_CAMPAIGNS - - Configure A/B test settings [Required]
BREVO_UPDATE_EMAIL_CAMPAIGN
Key parameters:
- : Campaign to configure
campaign_id - : Set to
abTestingto enable A/B testingtrue - : Subject line for variant A
subjectA - : Subject line for variant B
subjectB - : Percentage split for the test (1-99)
splitRule - : 'open' or 'click' for determining the winner
winnerCriteria - : Hours to wait before selecting winner (1-168)
winnerDelay
Pitfalls:
- A/B testing must be enabled () before setting variant fields
abTesting: true - is the percentage of contacts that receive variant A
splitRule - defines how long to test before sending the winner to remaining contacts
winnerDelay - Only works with 'classic' campaign type
Common Patterns
Campaign Lifecycle
1. Create campaign (status: draft)
2. Set recipients (listIds)
3. Configure content (htmlContent or htmlUrl)
4. Optionally schedule (scheduledAt)
5. Send or schedule via Brevo UI (API update can set scheduledAt)Pagination
- Use (page size) and
limit(starting index)offset - Default limit is 50; max varies by endpoint (100 for campaigns, 1000 for templates)
- Increment by
offseteach pagelimit - Check in response to determine total available
count
Template Personalization
- First name: {{contact.FIRSTNAME}}
- Last name: {{contact.LASTNAME}}
- Custom attribute: {{contact.CUSTOM_ATTRIBUTE}}
- Mirror link: {{mirror}}
- Unsubscribe link: {{unsubscribe}}Known Pitfalls
Date Formats:
- All dates use ISO 8601 with milliseconds: YYYY-MM-DDTHH:mm:ss.SSSZ
- Pass timezone in the date-time format for accurate results
- and
startDatemust be used togetherendDate
Sender Verification:
- All sender emails must be verified in Brevo before use
- Unverified senders cause campaign creation/update failures
- Use GET_ALL_SENDERS to check available verified senders
Rate Limits:
- Brevo API has rate limits per account plan
- Implement backoff on 429 responses
- Template operations have lower limits than read operations
Response Parsing:
- Response data may be nested under or
datadata.data - Parse defensively with fallback patterns
- Campaign and template IDs are numeric integers
Quick Reference
| Task | Tool Slug | Key Params |
|---|---|---|
| List campaigns | BREVO_LIST_EMAIL_CAMPAIGNS | type, status, limit, offset |
| Update campaign | BREVO_UPDATE_EMAIL_CAMPAIGN | campaign_id, subject, htmlContent |
| List templates | BREVO_GET_ALL_EMAIL_TEMPLATES | templateStatus, limit, offset |
| Create template | BREVO_CREATE_OR_UPDATE_EMAIL_TEMPLATE | templateName, subject, htmlContent, sender |
| Update template | BREVO_CREATE_OR_UPDATE_EMAIL_TEMPLATE | templateId, htmlContent |
| Delete template | BREVO_DELETE_EMAIL_TEMPLATE | templateId |
| List senders | BREVO_GET_ALL_SENDERS | (none) |
Powered by Composio