README
🚀 Brevo MCP 服务器
📧 借助官方 SDK 实现 Claude 和 Smithery 与 Brevo API 的全面集成
这是一个功能全面的 MCP 服务器,它借助官方的 @getbrevo/brevo Node.js SDK,让 Claude 能够全面访问 Brevo 的营销自动化平台。该服务器拥有 8 个精心组织的工具,涵盖了 Brevo 的所有主要功能。
✨ 主要特性
- 🔧 官方 Brevo SDK:基于
@getbrevo/brevo构建,具备极高的兼容性。 - 📧 邮件操作:支持事务性邮件、模板管理、邮件跟踪和事件处理。
- 📱 短信与 WhatsApp:可发送短信、管理营销活动,还能集成 WhatsApp。
- 👥 联系人管理:涵盖联系人、联系人列表、联系人属性管理以及批量操作。
- 🎯 营销活动管理:支持邮件和短信营销活动的创建、调度和分析。
- 💬 对话管理:负责聊天和对话的管理。
- 🔗 Webhook:实现基于事件的自动化和通知功能。
- 🛒 电子商务:支持订单、产品和类别集成。
- 🏢 账户管理:可管理发件人、域名、文件夹和账户信息。
- 🚀 与 Smithery 兼容:可随时部署到 Smithery。
- 🛡️ 类型安全:全面支持 TypeScript。
🚀 快速开始
选项 1:使用 Smithery(推荐)
- 在 Smithery 中进行配置:
brevo-mcp:
apiKey: "your-brevo-api-key" # 必需
defaultSenderEmail: "your@domain.com" # 可选
defaultSenderName: "Your Name" # 可选
选项 2:本地安装
- 安装依赖:
npm install
npm run build
- 设置环境变量:
export BREVO_API_KEY="your-brevo-api-key"
export BREVO_DEFAULT_SENDER_EMAIL="your@domain.com"
export BREVO_DEFAULT_SENDER_NAME="Your Name"
- 启动服务:
npm start
💻 使用示例
基础用法
以下是一些不同工具的使用示例:
联系人管理(contacts)
{
"operation": "bulk_import",
"contacts": [
{
"email": "user1@example.com",
"attributes": {
"FIRSTNAME": "John",
"LASTNAME": "Doe"
}
}
]
}
事务性邮件(email)
{
"operation": "send",
"to": [{"email": "recipient@example.com", "name": "John Doe"}],
"subject": "Welcome to our service",
"htmlContent": "<h1>Welcome!</h1><p>Thank you for joining us.</p>",
"sender": {"email": "noreply@yourcompany.com", "name": "Your Company"}
}
营销活动(campaigns)
{
"operation": "create_email_campaign",
"campaignData": {
"name": "Newsletter Campaign",
"subject": "Monthly Newsletter",
"htmlContent": "<h1>Newsletter</h1>",
"recipients": {"listIds": [1, 2]}
}
}
短信操作(sms)
{
"operation": "send_batch",
"recipients": ["+1234567890", "+0987654321"],
"content": "Your order is ready for pickup!",
"sender": "YourBrand"
}
Webhook(webhooks)
{
"operation": "create_webhook",
"url": "https://your-app.com/brevo-webhook",
"events": ["delivered", "opened", "clicked"],
"description": "Email tracking webhook",
"type": "transactional"
}
电子商务(ecommerce)
{
"operation": "create_order",
"orderData": {
"id": "order-123",
"email": "customer@example.com",
"products": [
{
"id": "product-1",
"name": "Widget",
"price": 29.99,
"quantity": 2
}
],
"total": 59.98
}
}
高级用法
批量联系人导入
{
"operation": "bulk_import",
"contacts": [
{
"email": "user1@example.com",
"attributes": {
"FIRSTNAME": "John",
"LASTNAME": "Doe",
"COMPANY": "Acme Corp"
}
}
]
}
带跟踪功能的邮件营销活动
{
"operation": "create_email_campaign",
"campaignData": {
"name": "Product Launch",
"subject": "Introducing Our New Product",
"htmlContent": "<h1>New Product Launch</h1>",
"recipients": {"listIds": [1]},
"scheduler": {
"sendAt": "2024-01-01T10:00:00Z"
}
}
}
电子商务订单跟踪
{
"operation": "create_order",
"orderData": {
"id": "order-456",
"email": "customer@example.com",
"products": [
{"id": "prod-1", "name": "T-Shirt", "price": 25.00, "quantity": 1}
],
"total": 25.00,
"status": "pending"
}
}
📚 详细文档
📋 配置
环境变量
| 属性 | 详情 | 必需 |
|------|------|------|
| BREVO_API_KEY | 你的 Brevo API 密钥 | ✅ 是 |
| BREVO_DEFAULT_SENDER_EMAIL | 默认发件人邮箱 | ❌ 否 |
| BREVO_DEFAULT_SENDER_NAME | 默认发件人姓名 | ❌ 否 |
| DEBUG | 启用调试日志 | ❌ 否 |
Smithery 配置
version: 1
startCommand:
type: stdio
configSchema:
type: object
required: ['apiKey']
properties:
apiKey:
type: string
description: "用于身份验证的 Brevo API 密钥(必需)"
defaultSenderEmail:
type: string
description: "默认发件人邮箱地址"
defaultSenderName:
type: string
description: "默认发件人姓名"
debug:
type: boolean
description: "启用调试模式"
default: false
🔧 开发
# 安装依赖
npm install
# 构建项目
npm run build
# 启动服务器
npm start
# 测试服务器
npm test
# 使用 Smithery 运行
npm run smithery
🔧 技术细节
- API 密钥安全:通过环境变量安全处理 API 密钥。
- 通信安全:所有通信均通过官方 Brevo SDK 使用 HTTPS 协议。
- 输入验证:对所有工具参数进行输入验证。
- 错误处理:完善的错误处理机制可防止信息泄露。
📄 许可证
本项目采用 MIT 许可证。
🆘 支持
- 问题反馈:请在 GitHub 上提交问题。
- Brevo API 文档:https://developers.brevo.com/
- 官方 SDK:https://github.com/getbrevo/brevo-node
本项目使用官方 Brevo Node.js SDK 构建,确保了最高的可靠性和丰富的功能 ❤️
Scan to join WeChat group