커스텀 API + Brevo 연동
커스텀 API + Brevo
모든 플랫폼에 MCP 서버가 있는 것은 아닙니다. WooCommerce, BigCommerce, Magento, 자체 개발 CRM 등 REST API를 제공하는 시스템이라면, 해당 데이터를 Brevo로 잇는 커넥터 에이전트를 만드십시오.
두 가지 접근 방식
접근 방식 1: 커뮤니티 MCP 서버
사용 중인 플랫폼에 커뮤니티 MCP 서버가 있는지 확인하십시오.
| 플랫폼 | 커뮤니티 MCP | 상태 |
|---|---|---|
| WooCommerce | woocommerce-mcp-server | 커뮤니티에서 유지 관리 |
| BigCommerce | MCP 서버 디렉터리 확인 | 상황에 따라 다름 |
| Magento | MCP 서버 디렉터리 확인 | 상황에 따라 다름 |
| Salesforce | 여러 선택지 제공 | 활발한 커뮤니티 |
| Zendesk | Composio/Zapier를 통해 제공 | 활발함 |
커뮤니티 서버가 있다면 공식 서버와 동일한 방식으로 사용하면 됩니다. Brevo MCP와 함께 Claude 설정에 추가하십시오.
접근 방식 2: HTTP 도구를 사용하는 에이전트
MCP 서버가 없는 플랫폼이라면, Claude에 내장된 HTTP 기능으로 REST API를 직접 호출한 뒤 MCP를 통해 Brevo에 기록하는 에이전트를 만드십시오.
커스텀 커넥터 에이전트 만들기
1단계: 소스 API 파악하기
에이전트에 필요한 주요 엔드포인트를 문서화합니다.
# Example: WooCommerce REST APIsource_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 coupons2단계: 에이전트 정의하기
---name: woocommerce-brevo-syncdescription: Sync WooCommerce customers and orders to Brevoversion: 1.0.0temperature: 0.1tools: - brevo_contacts - brevo_attributes - brevo_lists - brevo_email_campaign_managementtriggers: - 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 Sync1. 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 Sync1. GET /orders?after={last_sync_time}&status=completed2. 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 data2. Transform the response to Brevo's expected format3. Call Brevo MCP tools to create/update contacts4. 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 run3단계: 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" } } }}4단계: 에이전트 실행하기
You: "Sync all WooCommerce customers from the last week to Brevo and add new customers to the Welcome Series list."
Claude: I'll sync your WooCommerce customers to Brevo.
Fetching customers modified in the last 7 days from WooCommerce...[Makes HTTP GET to your-store.com/wp-json/wc/v3/customers?modified_after=...]
Found 67 customers. Syncing to Brevo...[Uses brevo_contacts to create/update contacts][Uses brevo_lists to add 23 new customers to "Welcome Series"]
Sync complete:- 67 customers processed- 44 existing contacts updated- 23 new contacts created → added to Welcome Series- 0 skipped (all had valid emails)템플릿: 범용 REST API 커넥터
모든 REST API에 다음 템플릿을 사용할 수 있습니다.
---name: {platform}-brevo-connectordescription: Sync {platform} data to Brevo for engagementversion: 1.0.0temperature: 0.1tools: - brevo_contacts - brevo_attributes - brevo_liststriggers: - 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 Logic1. Fetch changed records from source since last sync2. Transform to Brevo format3. Upsert contacts via brevo_contacts4. Track events for campaign triggers5. 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 서버를 만들어야 하는 경우 |
|---|---|
| 일회성이거나 드물게 실행하는 동기화 | 매일 운영되는 프로덕션 동기화 |
| 연동을 프로토타이핑하는 단계 | 팀이나 조직 전체가 함께 사용 |
| 단순한 읽기 작업 | 복잡한 다단계 작업 |
| 필요한 API 엔드포인트가 5개 미만 | 전체 API 커버리지가 필요 |
커스텀 MCP 서버를 만들려면 MCP 사양을 참고하고, OpenAPI 사양으로부터 서버를 생성하는 방법은 Tajo Integration Builder를 확인하십시오.
다음 단계
- 통합 레이어 개요, 사용 가능한 모든 연동
- Shopify + Brevo, 공식 MCP 사례
- 에이전트 사양, 에이전트 마크다운 형식
- Brevo MCP 서버, 사용 가능한 Brevo 모듈