自定义 API + Brevo 集成

自定义 API + Brevo

并非每个平台都有 MCP 服务器。对于 WooCommerce、BigCommerce、Magento、专有 CRM,或任何具有 REST API 的系统, 构建一个连接代理,将您的数据桥接到 Brevo。

两种方式

方式一:社区 MCP 服务器

查看是否存在适用于您平台的社区 MCP 服务器:

平台社区 MCP状态
WooCommercewoocommerce-mcp-server社区维护
BigCommerce查看 MCP 服务器目录不定
Magento查看 MCP 服务器目录不定
Salesforce多个选项可用活跃社区
Zendesk通过 Composio/Zapier 可用活跃

如果存在社区服务器,与官方服务器同样使用, 将其与 Brevo MCP 一起添加到 Claude 配置中。

方式二:带 HTTP 工具的代理

对于没有 MCP 服务器的平台,构建一个代理,使用 Claude 内置的 HTTP 功能直接调用 REST API,然后通过 MCP 写入 Brevo。

构建自定义连接代理

第一步:了解源 API

记录代理所需的关键端点:

# Example: WooCommerce REST API
source_api:
base_url: "https://your-store.com/wp-json/wc/v3"
auth: Basic (consumer_key:consumer_secret)
endpoints:
- GET /customers # List customers
- GET /customers/{id} # Get customer details
- GET /orders # List orders
- GET /orders/{id} # Get order details
- GET /products # List products
- GET /coupons # List coupons

第二步:定义代理

---
name: woocommerce-brevo-sync
description: Sync WooCommerce customers and orders to Brevo
version: 1.0.0
temperature: 0.1
tools:
- brevo_contacts
- brevo_attributes
- brevo_lists
- brevo_email_campaign_management
triggers:
- schedule: "0 */6 * * *"
- webhook: /agents/woocommerce/sync
method: POST
---
# WooCommerce → Brevo Sync Agent
Connect WooCommerce store data to Brevo for engagement campaigns.
## Source API
- **Base URL**: https://your-store.com/wp-json/wc/v3
- **Authentication**: Basic Auth with consumer key/secret
- **Key endpoints**: /customers, /orders, /products
## Sync Strategy
### Customer Sync
1. GET /customers?modified_after={last_sync_time}
2. For each customer:
- Map WooCommerce fields to Brevo attributes
- Create or update Brevo contact
- Add to appropriate list based on order history
### Order Event Sync
1. GET /orders?after={last_sync_time}&status=completed
2. For each order:
- Track "order_completed" event in Brevo
- Update contact attributes (order_count, total_spent)
- Trigger post-purchase campaign if applicable
## Field Mapping
| WooCommerce | Brevo Attribute |
|-------------|-----------------|
| email | EMAIL |
| first_name | FIRSTNAME |
| last_name | LASTNAME |
| billing.phone | SMS |
| orders_count | ORDER_COUNT |
| total_spent | TOTAL_SPENT |
| date_created | CUSTOMER_SINCE |
| role | CUSTOMER_TYPE |
## API Call Pattern
For each sync operation, the agent should:
1. Call WooCommerce REST API to fetch data
2. Transform the response to Brevo's expected format
3. Call Brevo MCP tools to create/update contacts
4. Log sync results for monitoring
## Rules
- Respect WooCommerce API rate limits (default: 25 req/10 seconds)
- ONLY sync customers with valid email addresses
- Implement incremental sync using modified_after parameter
- Store last sync timestamp for next run

第三步:配置 Brevo MCP

仅连接代理所需的 Brevo 模块:

{
"mcpServers": {
"brevo_contacts": {
"url": "https://mcp.brevo.com/v1/brevo_contacts/mcp",
"headers": { "Authorization": "Bearer your-brevo-token" }
},
"brevo_email": {
"url": "https://mcp.brevo.com/v1/brevo_email_campaign_management/mcp",
"headers": { "Authorization": "Bearer your-brevo-token" }
},
"brevo_lists": {
"url": "https://mcp.brevo.com/v1/brevo_lists/mcp",
"headers": { "Authorization": "Bearer your-brevo-token" }
}
}
}

第四步:运行代理

您:"将过去一周的所有 WooCommerce 客户同步到 Brevo,
并将新客户加入 Welcome Series 列表。"
Claude:我将把您的 WooCommerce 客户同步到 Brevo。
正在从 WooCommerce 获取过去 7 天内修改的客户...
[向 your-store.com/wp-json/wc/v3/customers?modified_after=... 发送 HTTP GET 请求]
找到 67 名客户。正在同步到 Brevo...
[使用 brevo_contacts 创建/更新联系人]
[使用 brevo_lists 将 23 名新客户加入"Welcome Series"]
同步完成:
- 67 名客户已处理
- 44 个现有联系人已更新
- 23 个新联系人已创建 → 加入 Welcome Series
- 0 个已跳过(所有客户均有有效邮箱)

模板:通用 REST API 连接器

对任何 REST API 使用此模板:

---
name: {platform}-brevo-connector
description: Sync {platform} data to Brevo for engagement
version: 1.0.0
temperature: 0.1
tools:
- brevo_contacts
- brevo_attributes
- brevo_lists
triggers:
- schedule: "0 */6 * * *"
---
# {Platform} → Brevo Connector
## Source API Configuration
- **Base URL**: {api_base_url}
- **Auth**: {auth_method} ({details})
- **Rate Limit**: {rate_limit}
## Data to Sync
### Contacts
- Source endpoint: {endpoint}
- Brevo mapping: {field_map}
- Sync frequency: Every 6 hours
- Incremental: Use modified_after / updated_since parameter
### Events
- Source endpoint: {endpoint}
- Brevo event name: {event_name}
- Trigger: When {condition}
## Sync Logic
1. Fetch changed records from source since last sync
2. Transform to Brevo format
3. Upsert contacts via brevo_contacts
4. Track events for campaign triggers
5. Log results and update sync cursor
## Error Handling
- Retry failed API calls 3 times with exponential backoff
- Skip individual records that fail validation
- Report errors in sync summary
- NEVER stop entire sync for single record failure

何时构建完整的 MCP 服务器

如果您发现自己反复连接同一个平台,请考虑构建专用的 MCP 服务器:

仅使用代理构建 MCP 服务器
一次性或不频繁的同步每日生产同步
原型化集成团队/组织共享
简单读取操作复杂多步骤操作
需要少于 5 个 API 端点需要完整 API 覆盖

要构建自定义 MCP 服务器,请参阅 MCP 规范Tajo 的 Integration Builder

后续步骤

AI 助手

你好!关于文档有任何问题都可以问我。

免费开始使用Brevo