Создайте первого агента
Создайте первого агента
Это руководство проведёт вас через создание Агента восстановления корзины, ИИ-агента, который отслеживает брошенные корзины и оркестрирует персонализированную последовательность восстановления через email, SMS и WhatsApp с помощью MCP-инструментов Brevo.
Предварительные требования
- Аккаунт Brevo с API-ключом (получить здесь)
- Настроенный Brevo MCP-сервер (руководство по настройке)
- Claude Desktop, Claude Code или MCP-совместимый клиент
- Созданные в Brevo email-шаблоны для восстановления корзины
Как работают агенты
Агент, это markdown-файл, определяющий:
- Идентичность, что делает агент и его ограничения
- Инструменты, к каким MCP-инструментам он имеет доступ
- Инструкции, как рассуждать и действовать
- Защитные ограничения, чего никогда не делать
При вызове агент использует LLM для рассуждения о цели, выбора подходящих инструментов и выполнения действий через API Brevo.
Маркетолог: "Настрой восстановление корзины для корзин свыше $50" ↓Агент читает свою спецификацию (инструменты, ограничения) ↓Агент рассуждает: "Нужно создать сегмент, спроектировать последовательность, настроить трекинг" ↓Агент вызывает: brevo/create-segment → brevo/send-email → brevo/send-sms → brevo/track-event ↓Результат: 3-этапная последовательность восстановления активна, события трекинга поступаютШаг 1: Определите агента
Создайте файл cart-recovery-agent.md:
---name: cart-recovery-agentdescription: Recover abandoned carts with personalized multi-channel sequencesversion: 1.0.0temperature: 0.2max_tokens: 4096tools: - brevo/list-contacts - brevo/get-contact - brevo/create-segment - brevo/send-email - brevo/send-sms - brevo/track-event - brevo/get-email-templates - brevo/get-email-statstriggers: - event: cart_abandoned conditions: - cart_value: "> 50" - time_since_activity: "> 30m" - schedule: "0 */4 * * *"permissions: - contacts:read - email:send - sms:send - events:write---
# Cart Recovery Agent
You are an e-commerce cart recovery specialist working with Brevo'sengagement platform. Your goal is to recover abandoned carts throughpersonalized, well-timed multi-channel outreach.
## Strategy
When a cart is abandoned:
1. **Wait 1 hour**, then send a reminder email with cart contents2. **Wait 24 hours**, if no open → send SMS with urgency message3. **Wait 48 hours**, if still no recovery → send final email with incentive (discount code if cart value > $100)
## Decision Framework
- Cart value < $50: Skip (not worth recovery cost)- Cart value $50-$100: Email only (2 touches)- Cart value $100-$250: Email + SMS (3 touches)- Cart value > $250: Email + SMS + personal outreach flag
## Rules
- NEVER send more than 3 messages per abandoned cart- NEVER contact customers who opted out of marketing- ALWAYS check if cart was recovered before sending next step- ALWAYS personalize with customer first name and cart items- ALWAYS track recovery events for attribution- Respect quiet hours: no SMS between 9pm-9am customer local time
## Email Templates
Use these Brevo template IDs:- Reminder (step 1): template_id 101- Urgency (step 2): template_id 102- Incentive (step 3): template_id 103
## Metrics to Track
- `cart_recovery_email_sent`, recovery email dispatched- `cart_recovery_sms_sent`, recovery SMS dispatched- `cart_recovered`, customer completed purchase- `cart_recovery_failed`, sequence completed without recoveryШаг 2: Зарегистрируйте инструменты
Агент нуждается в доступе к конкретным MCP-инструментам Brevo. Поле tools во frontmatter определяет, какие инструменты может вызывать агент. При запуске агент может вызывать только эти инструменты, всё остальное заблокировано.
Что делает каждый инструмент в контексте этого агента:
tools: # Read customer data and cart state - brevo/list-contacts # Find customers with abandoned carts - brevo/get-contact # Get individual customer details
# Create targeted segments - brevo/create-segment # Segment by cart value, time, behavior
# Send recovery messages - brevo/send-email # Transactional recovery emails - brevo/send-sms # SMS nudges for high-value carts
# Track outcomes - brevo/track-event # Log recovery attempts and results - brevo/get-email-stats # Check if emails were opened - brevo/get-email-templates # Verify templates existШаг 3: Создайте цепочку выполнения
Для сложных агентов можно определить многоэтапную цепочку, где специализированные субагенты обрабатывают разные фазы:
steps: - agent: analyzer input: | Analyze the abandoned cart data for the past 4 hours. Goal: {task}
Use brevo/list-contacts to find contacts with CART_ABANDONED event in the last 4 hours. Segment by cart value tier.
- agent: sequencer input: | Based on this analysis, design recovery sequences: {previous}
For each tier, create the appropriate message sequence using the decision framework.
- agent: executor input: | Execute these recovery sequences via Brevo: {previous}
Send emails and SMS according to the timing rules. Track every action with brevo/track-event.
- agent: reporter input: | Generate a recovery report from these execution results: {previous}
Include: carts targeted, messages sent, early recoveries, projected revenue impact.Шаг 4: Протестируйте агента
С Claude Code
# Point Claude Code at your agent specclaude --mcp brevo "Run the cart recovery agent for abandoned carts in the last 4 hours"С Claude Desktop
Когда Brevo MCP-сервер настроен, спросите у Claude:
Запусти моего агента восстановления корзины. Проверь брошенные корзины свыше $50 за последние 4 часа и выполни последовательность восстановления.
Claude:
- Прочитает спецификацию агента
- Вызовет
brevo/list-contactsдля поиска брошенных корзин - Сегментирует по стоимости корзины с помощью системы принятия решений
- Отправит письма восстановления через
brevo/send-email - Настроит SMS-напоминания через
brevo/send-sms - Отследит все события через
brevo/track-event
Программное выполнение
import { TajoAgent } from "@tajo/agent-sdk";import { BrevoMCPServer } from "@tajo/brevo-mcp-server";
const brevo = new BrevoMCPServer({ apiKey: process.env.BREVO_API_KEY,});
const agent = new TajoAgent({ specPath: "./cart-recovery-agent.md", mcpServers: [brevo], model: "claude-sonnet-4-6",});
// Run the agentconst result = await agent.run( "Recover abandoned carts over $50 from the last 4 hours");
console.log(result.summary);// → "Processed 23 abandoned carts. Sent 23 reminder emails,// 8 SMS messages. 3 carts already recovered during execution."Шаг 5: Запланируйте агента
Запускайте агента по повторяющемуся расписанию:
На основе Cron
# In your agent spec frontmattertriggers: - schedule: "0 */4 * * *" # Every 4 hours timezone: "America/New_York"На основе событий
triggers: - event: cart_abandoned conditions: - cart_value: "> 50" - time_since_activity: "> 30m" debounce: 5mWebhook
triggers: - webhook: /agents/cart-recovery/trigger method: POST authentication: api_keyШаг 6: Мониторинг и итерации
Отслеживайте производительность агента через события Brevo:
-- Recovery rate by cart value tierSELECT CASE WHEN cart_value < 100 THEN '$50-$100' WHEN cart_value < 250 THEN '$100-$250' ELSE '$250+' END as tier, COUNT(*) as carts_targeted, SUM(CASE WHEN recovered THEN 1 ELSE 0 END) as recovered, ROUND(SUM(CASE WHEN recovered THEN 1 ELSE 0 END)::numeric / COUNT(*) * 100, 1) as recovery_rate_pct, SUM(CASE WHEN recovered THEN cart_value ELSE 0 END) as revenue_recoveredFROM cart_recovery_eventsWHERE created_at > NOW() - INTERVAL '30 days'GROUP BY tierORDER BY tier;Пример: Полная сессия агента
Реальное взаимодействие маркетолога с Агентом восстановления корзины:
Маркетолог: "Проверь брошенные корзины за сегодня и начни восстановление"
Агент: Проверяю брошенные корзины за последние 24 часа...
[Вызывает brevo/list-contacts с фильтром CART_ABANDONED_AT > today]
Найдено 47 брошенных корзин:- 12 корзин до $50 (пропускаю согласно политике)- 23 корзины $50-$100 (уровень только email)- 8 корзин $100-$250 (уровень email + SMS)- 4 корзины свыше $250 (email + SMS + флаг для личного контакта)
Запускаю последовательности восстановления...
[Вызывает brevo/send-email × 35 с template_id 101][Вызывает brevo/track-event × 35 с событием "cart_recovery_email_sent"]
✅ Шаг 1 завершён:- Отправлено 35 писем-напоминаний- 12 SMS в очереди для follow-up через 24ч (дорогие корзины)- 4 корзины помечены для личного контакта
Следующая проверка запланирована через 4 часа.События трекинга: cart_recovery_email_sent (35), cart_recovery_sms_queued (12), cart_recovery_escalated (4)Следующие шаги
- Спецификация агента, Полный справочник по markdown агента
- Готовые агенты, Маркетинговые агенты готовые к использованию
- Справочник навыков, Все доступные MCP-инструменты
- Brevo MCP-сервер, Схемы инструментов и разрешения