# Brevo MCP

> Brevo allows your AI agent to handle all transactional messaging, including emails, SMS, and WhatsApp. You can manage contacts, build templates, send campaigns across multiple channels, and pull detailed delivery statistics—all without leaving your chat interface.

## Overview
- **Category:** marketing-automation
- **Price:** Free
- **Tags:** transactional-email, sms-api, whatsapp-business, email-templates, messaging-automation

## Description

Need to coordinate communications? This MCP lets your AI client orchestrate every type of message you send out. Whether it's a single password reset email or a massive campaign broadcast, the agent handles the workflow using natural language. It manages everything from building branded templates to sending transactional SMS and WhatsApp messages. You can also track delivery rates and pull detailed analytics logs for both emails and texts. Because Vinkius hosts this MCP, you get access to all these features—contact management, template creation, campaign scheduling, and advanced reporting—all through one connection point with your preferred AI client.

## Tools

### create_contact_attribute
Adds a specific data field, like 'Job Title,' to the contact system.

### create_contact_folder
Organizes contacts by creating a new folder structure.

### create_contact_list
Creates a defined group or list to hold specific contacts.

### create_contact
Adds a new person's details to your contact list.

### create_email_campaign
Sets up an entire email marketing campaign for future sending.

### create_email_template
Drafts and saves a reusable structure for your emails, maintaining brand consistency.

### create_event
Records a single user action, such as visiting a specific page on your site.

### create_events_batch
Adds multiple recorded website or app events at once.

### create_sender
Registers a new email sending identity that you plan to use in campaigns.

### create_sms_campaign
Prepares and schedules a bulk text message campaign.

### create_webhook
Sets up an automated notification endpoint that triggers when events happen in Brevo.

### delete_contact
Removes a contact entirely from your system.

### delete_scheduled_email
Cancels an email that was scheduled to send at a later time.

### get_account_activity
Fetches logs showing recent activity across the entire Brevo platform for auditing.

### get_account
Retrieves your account usage details and remaining credits.

### get_contact
Retrieves all stored information about one specific contact.

### get_email_statistics_events
Pulls a raw, unaggregated list of every single email delivery event that occurred.

### get_email_statistics_reports
Gets summarized reports showing how many emails were sent over time for easy tracking.

### get_email_template
Shows the full details and content of a specific email template you created.

### get_sms_campaign
Retrieves all details about a prepared SMS text message campaign.

### get_sms_statistics_events
Pulls the raw log data for every single sent SMS text message.

### get_sms_statistics_reports
Gets summarized reports detailing overall performance and volume of SMS messaging.

### get_transactional_email
Shows the exact personalized content that was included in a specific sent email message.

### get_webhook
Retrieves configuration details for an existing automated notification endpoint.

### get_whatsapp_statistics_events
Pulls the raw log data for every single WhatsApp message sent or received.

### list_contact_attributes
Shows a list of all possible custom fields you can add to your contacts.

### list_contact_folders
Displays all the organizational folders currently set up for contacts.

### list_contact_lists
Shows every defined group or segment of contacts you have created.

### list_contacts
Retrieves a basic list of all contacts in your system.

### list_domains
Lists all the sending domains that are verified and approved for use.

### list_email_campaigns
Retrieves a list of all email campaigns you have created or set up.

### list_email_templates
Shows every saved, reusable design template for your outgoing emails.

### list_events
Fetches a list of all tracked user activity events recorded in your account.

### list_senders
Displays all approved and verified email addresses allowed to send messages.

### list_sms_campaigns
Shows every prepared or scheduled bulk SMS message campaign.

### list_transactional_emails
Gets a list of all previously sent, non-campaign emails for reference.

### list_webhooks
Displays every automated web notification endpoint you have set up.

### register_domain
Adds and verifies a new domain name so it can be used as a sender identity.

### send_email_campaign_now
Sends the entire email campaign immediately, bypassing any scheduled time.

### send_transactional_email
Dispatches a single, immediate email to one or more recipients.

### send_transactional_sms
Sends an instant text message communication via SMS.

### send_whatsapp_message
Transmits a direct, immediate message through the WhatsApp channel.

### update_contact
Modifies any piece of information for an existing contact record.

### update_email_campaign
Makes changes to a campaign that was already set up or drafted.

### update_email_template
Edits the text, branding, or layout of an existing email template.

## Prompt Examples

**Prompt:** 
```
Send a transactional email to contact@example.com with the subject 'Order Confirmed' and HTML content 'Your order #123 is on its way!'
```

**Response:** 
```
I've sent the transactional email. The message has been queued successfully and assigned a message ID for tracking.
```

**Prompt:** 
```
List all my current email templates in Brevo.
```

**Response:** 
```
I've retrieved your templates. You have 4 active templates, including 'Welcome Series', 'Password Reset', and 'Monthly Newsletter'. Would you like to see the details for any of them?
```

**Prompt:** 
```
Show me the statistics for my SMS activity from the last 30 days.
```

**Response:** 
```
Fetching SMS reports... In the last 30 days, you sent 150 messages with a 98% delivery rate and 0% hard bounces. Would you like to see the unaggregated event logs for more detail?
```

## Capabilities

### Manage Contacts and Attributes
The agent can list, retrieve details for, create, and update individual contacts or their associated data fields.

### Build and Store Templates
You can manage branded content by listing, creating, updating, and fetching detailed information about email templates.

### Execute Multi-Channel Sends
The agent sends transactional messages across multiple channels, including emails, SMS texts, and WhatsApp chats.

### Run Campaigns and Scheduled Jobs
You can initiate immediate campaigns or manage the queue by scheduling and deleting future email sends.

### Analyze Messaging Activity
The agent accesses detailed reports, pulling both aggregated statistics and unaggregated event logs for all messaging types.

## Use Cases

### Onboarding a New Client
A developer needs to send three specific messages: a welcome email, an SMS reminder, and a WhatsApp follow-up. They simply ask their agent to 'Send the full onboarding sequence' and the MCP calls `send_transactional_email`, `send_transactional_sms`, and `send_whatsapp_message` in order.

### Debugging Failed Campaigns
The marketing team notices low delivery rates. Instead of manually exporting logs, they ask the agent to 'Check the detailed email activity' (`get_email_statistics_events`), instantly pulling up the raw event data for investigation.

### Updating Brand Assets
A copywriter needs to update 15 templates and change a contact’s name field. They instruct their agent to 'Update all template placeholders' (using `update_email_template`) and then use `get_contact` to verify the changes on a sample record.

### Automating Customer Service Follow-ups
Support needs to confirm if a customer received an order confirmation. They ask the agent to 'Verify message ID XYZ' which triggers `get_transactional_email`, giving them instant proof of delivery.

## Benefits

- Stop managing templates in a separate dashboard. You can list all email templates and update existing ones—like using `list_email_templates` or `update_email_template`—all via natural conversation.
- Need to debug why an email failed? Instead of searching through logs, you use the agent to get unaggregated event logs (`get_email_statistics_events`) for immediate troubleshooting on any message ID.
- Sending messages used to require switching between channels. Now, you can send transactional emails (`send_transactional_email`), SMS texts (`send_transactional_sms`), and WhatsApp messages all in one go.
- Campaign management is simplified. You can create a whole campaign using `create_email_campaign` or even immediately fire it off with `send_email_campaign_now`, depending on your needs.
- Data visibility improves dramatically. Instead of just knowing 'a message was sent,' you use tools like `get_transactional_email` to see the exact personalized content that went out.

## How It Works

The bottom line is you talk to your agent naturally; it handles all the technical API calls needed to get the job done.

1. First, subscribe to this MCP on Vinkius and provide your Brevo API key (v3) credentials.
2. Next, ask your AI client to perform a task, like 'Send an order confirmation email to John Doe.'
3. The agent executes the workflow by calling the necessary tools, sending the message, and reporting back the status or statistics.

## Frequently Asked Questions

**How do I list all my email templates using list_email_templates?**
You ask your agent to 'list all email templates.' It retrieves every template name and ID, letting you see what content is available for campaigns.

**Can I check if a message was delivered by getting the transactional_email details?**
Yes. You use `get_transactional_email` with the specific message ID to retrieve the full, personalized content and its delivery status history.

**What is the difference between list_contacts and get_contact?**
`list_contacts` gives you a simple directory of every contact. `get_contact` drills down into one person's file to retrieve all their specific details, attributes, and history.

**How do I schedule an email without sending it immediately?**
You use tools like `create_email_campaign` to set up the campaign. If you need to cancel a future send, ask the agent to 'delete scheduled email' using `delete_scheduled_email`.

**How do I manage my sending identity using list_domains or register_domain?**
You must first verify your domains before sending emails. Use `list_domains` to check current status, and then use `register_domain` when you need to prove ownership of a new sender domain.

**If I need custom fields for my users, should I use create_contact_attribute?**
Yes, that's the right tool. Use `create_contact_attribute` when standard contact fields aren't enough. It lets you build out a unique data schema for your customer base.

**What is the difference between get_email_statistics_reports and get_email_statistics_events?**
The reports give you high-level, aggregated stats like total opens or clicks per day. If you need to debug a specific failure, check the `get_email_statistics_events` log for unaggregated activity details.

**How do I connect this MCP to my other systems using create_webhook?**
You use `create_webhook` when you need data pushed *out* of Brevo. This tool allows external systems, like CRMs or dashboards, to receive immediate notifications about events that happen here.

**Can I send a custom transactional email using a JSON payload?**
Yes! Use the `send_transactional_email` tool. You can provide a full JSON payload including sender details, recipients, subject line, and HTML content to trigger an immediate delivery.

**How do I check the performance of my email activity for a specific period?**
You can use the `get_email_statistics_reports` tool. It provides aggregated transactional email activity per day, allowing you to filter by date or other optional parameters.

**Is it possible to manage my email templates directly through the AI?**
Absolutely. You have access to a full suite of tools: `list_email_templates` to see what's available, `create_email_template` to build new ones, and `update_email_template` to modify existing designs.