Brevo MCP Server

Complete Model Context Protocol (MCP) server for Brevo (formerly SendinBlue) with 55+ tools and 14 interactive apps.

Features

🛠️ 55+ Tools Across 10 Categories

  • Contacts (12 tools): List, get, create, update, delete, search, import, export, manage attributes, folders, and lists
  • Email Campaigns (9 tools): List, get, create, update, delete, send, schedule, reports, and link tracking
  • Transactional (4 tools): Send transactional emails/SMS, event tracking, aggregated reports
  • Lists (7 tools): Manage contact lists, add/remove contacts
  • Senders (6 tools): List, create, update, delete, validate sender domains
  • Templates (6 tools): List, create, update, delete templates, send test emails
  • Automations (5 tools): List workflows, activate/deactivate, get stats
  • SMS Campaigns (6 tools): List, create, update, send SMS campaigns, reports
  • CRM Deals (7 tools): Manage deals, pipelines, and stages
  • Webhooks (5 tools): List, create, update, delete webhooks for real-time events

📱 14 Interactive MCP Apps

  1. contact-dashboard - Overview with key metrics and recent activity
  2. contact-detail - Full profile view with attributes and timeline
  3. contact-grid - Searchable, filterable grid view
  4. campaign-dashboard - Campaign performance metrics
  5. campaign-builder - Visual campaign creation wizard
  6. automation-dashboard - Marketing automation workflows
  7. deal-pipeline - Visual CRM pipeline with drag-and-drop
  8. transactional-monitor - Real-time transactional event tracking
  9. email-template-gallery - Browse and manage templates
  10. sms-dashboard - SMS campaign management
  11. list-manager - Contact lists and folders organization
  12. report-dashboard - Comprehensive analytics and insights
  13. webhook-manager - Configure webhooks for integrations
  14. import-wizard - Step-by-step contact import

Installation

npm install
npm run build

Configuration

Set your Brevo API key as an environment variable:

export BREVO_API_KEY=your-api-key-here

Get your API key from: https://app.brevo.com/settings/keys/api

Usage

Running the Server

npm start

Or with inline API key:

BREVO_API_KEY=your-api-key-here npm start

MCP Client Configuration

Add to your MCP client configuration (e.g., Claude Desktop):

{
  "mcpServers": {
    "brevo": {
      "command": "node",
      "args": ["/path/to/brevo/dist/main.js"],
      "env": {
        "BREVO_API_KEY": "your-api-key-here"
      }
    }
  }
}

Tool Examples

Create a Contact

brevo_create_contact({
  email: "user@example.com",
  attributes: {
    FIRSTNAME: "John",
    LASTNAME: "Doe",
    COMPANY: "Acme Inc"
  },
  listIds: [123]
})

Send Transactional Email

brevo_send_transactional_email({
  to: [{ email: "user@example.com", name: "John Doe" }],
  sender: { email: "hello@company.com", name: "Company" },
  subject: "Welcome!",
  htmlContent: "<h1>Welcome to our service!</h1>",
  tags: ["welcome", "onboarding"]
})

Create Email Campaign

brevo_create_email_campaign({
  name: "Monthly Newsletter",
  subject: "Your Monthly Update",
  sender: { name: "Company", email: "newsletter@company.com" },
  htmlContent: "<html>...</html>",
  recipients: {
    listIds: [123],
    exclusionListIds: [456]
  },
  scheduledAt: "2024-02-01T10:00:00Z"
})

List Contacts

brevo_list_contacts({
  limit: 50,
  offset: 0,
  listIds: [123],
  sort: "desc"
})

API Reference

Contacts Tools

  • brevo_list_contacts - List all contacts with filters
  • brevo_get_contact - Get contact by email/ID
  • brevo_create_contact - Create new contact
  • brevo_update_contact - Update contact
  • brevo_delete_contact - Delete contact
  • brevo_search_contacts - Advanced contact search
  • brevo_import_contacts - Bulk import from CSV
  • brevo_export_contacts - Export contacts
  • brevo_list_contact_attributes - List all attributes
  • brevo_create_contact_attribute - Create custom attribute
  • brevo_list_contact_folders - List folders
  • brevo_list_contact_lists - List all lists

Campaign Tools

  • brevo_list_email_campaigns - List campaigns
  • brevo_get_email_campaign - Get campaign details
  • brevo_create_email_campaign - Create campaign
  • brevo_update_email_campaign - Update campaign
  • brevo_delete_email_campaign - Delete campaign
  • brevo_send_email_campaign - Send immediately
  • brevo_schedule_email_campaign - Schedule send
  • brevo_get_campaign_report - Get performance report
  • brevo_list_campaign_links - Get campaign links

Transactional Tools

  • brevo_send_transactional_email - Send transactional email
  • brevo_send_transactional_sms - Send SMS
  • brevo_list_transactional_events - List events
  • brevo_get_aggregated_report - Get statistics

Lists Tools

  • brevo_list_lists - List all contact lists
  • brevo_get_list - Get list details
  • brevo_create_list - Create new list
  • brevo_update_list - Update list
  • brevo_delete_list - Delete list
  • brevo_add_contacts_to_list - Add contacts
  • brevo_remove_contacts_from_list - Remove contacts

Templates Tools

  • brevo_list_templates - List templates
  • brevo_get_template - Get template
  • brevo_create_template - Create template
  • brevo_update_template - Update template
  • brevo_delete_template - Delete template
  • brevo_send_test_template - Send test email

Automation Tools

  • brevo_list_workflows - List workflows
  • brevo_get_workflow - Get workflow
  • brevo_activate_workflow - Activate workflow
  • brevo_deactivate_workflow - Deactivate workflow
  • brevo_get_workflow_stats - Get statistics

SMS Tools

  • brevo_list_sms_campaigns - List SMS campaigns
  • brevo_get_sms_campaign - Get campaign
  • brevo_create_sms_campaign - Create campaign
  • brevo_update_sms_campaign - Update campaign
  • brevo_send_sms_campaign - Send SMS campaign
  • brevo_get_sms_campaign_report - Get report

CRM Deals Tools

  • brevo_list_deals - List deals
  • brevo_get_deal - Get deal
  • brevo_create_deal - Create deal
  • brevo_update_deal - Update deal
  • brevo_delete_deal - Delete deal
  • brevo_list_pipelines - List pipelines
  • brevo_list_deal_stages - List stages

Webhook Tools

  • brevo_list_webhooks - List webhooks
  • brevo_get_webhook - Get webhook
  • brevo_create_webhook - Create webhook
  • brevo_update_webhook - Update webhook
  • brevo_delete_webhook - Delete webhook

MCP Apps

All apps are accessible via MCP resources at brevo://app/{app-name}

Contact Apps

  • contact-dashboard - Metrics and overview
  • contact-detail - Full contact profile
  • contact-grid - Searchable contact table

Campaign Apps

  • campaign-dashboard - Campaign analytics
  • campaign-builder - Visual campaign creator

Other Apps

  • automation-dashboard - Workflow management
  • transactional-monitor - Real-time event tracking
  • email-template-gallery - Template browser
  • sms-dashboard - SMS management
  • deal-pipeline - CRM pipeline view
  • list-manager - List organization
  • report-dashboard - Analytics hub
  • webhook-manager - Webhook configuration
  • import-wizard - Contact import tool

Architecture

brevo/
├── src/
│   ├── types/
│   │   ├── index.ts           # TypeScript interfaces
│   │   └── api-client.ts      # Brevo API client
│   ├── tools/
│   │   ├── contacts-tools.ts   # 12 contact tools
│   │   ├── campaigns-tools.ts  # 9 campaign tools
│   │   ├── transactional-tools.ts # 4 transactional tools
│   │   ├── lists-tools.ts      # 7 list tools
│   │   ├── senders-tools.ts    # 6 sender tools
│   │   ├── templates-tools.ts  # 6 template tools
│   │   ├── automations-tools.ts # 5 automation tools
│   │   ├── sms-tools.ts        # 6 SMS tools
│   │   ├── deals-tools.ts      # 7 CRM tools
│   │   └── webhooks-tools.ts   # 5 webhook tools
│   ├── apps/
│   │   ├── contact-dashboard.ts
│   │   ├── contact-detail.ts
│   │   ├── contact-grid.ts
│   │   ├── campaign-dashboard.ts
│   │   ├── campaign-builder.ts
│   │   ├── automation-dashboard.ts
│   │   ├── deal-pipeline.ts
│   │   ├── transactional-monitor.ts
│   │   ├── template-gallery.ts
│   │   ├── sms-dashboard.ts
│   │   ├── list-manager.ts
│   │   ├── report-dashboard.ts
│   │   ├── webhook-manager.ts
│   │   └── import-wizard.ts
│   ├── server.ts              # MCP server implementation
│   └── main.ts                # Entry point
├── package.json
├── tsconfig.json
└── README.md

Development

# Install dependencies
npm install

# Build
npm run build

# Development mode (watch)
npm run dev

# Clean build artifacts
npm run clean

API Documentation

Brevo API v3 Documentation: https://developers.brevo.com/reference

License

MIT

Support

For issues and feature requests, please file an issue in the repository.