Izgradnja prvega agenta

Izgradnja prvega agenta

Ta vodič vas bo popeljal skozi izgradnjo Agenta za obnovitev košarice, AI agenta, ki spremlja zapuščene košarice in orkestrira personalizirano obnovitveno sekvenco prek emaila, SMS in WhatsApp z uporabo Brevo MCP orodij.

Predpogoji

  • Brevo račun z API ključem (pridobite ga tukaj)
  • Konfiguriran Brevo MCP Server (vodič za nastavitev)
  • Claude Desktop, Claude Code ali kateri koli MCP-kompatibilen odjemalec
  • Email predloge ustvarjene v Brevo za obnovitev košarice

Kako delujejo agenti

Agent je markdown datoteka, ki definira:

  1. Identiteto, kaj agent dela in njegove omejitve
  2. Orodja, katera MCP orodja lahko uporablja
  3. Navodila, kako naj razmišlja in deluje
  4. Omejitve, kaj nikoli ne sme narediti

Ko je priklican, agent uporablja LLM za razmišljanje o cilju, izbiro ustreznih orodij in izvajanje dejanj proti Brevo API.

Tržnik: "Nastavi obnovitev košarice za košarice nad $50"
Agent prebere svojo specifikacijo (orodja, omejitve)
Agent razmišlja: "Moram ustvariti segment, oblikovati sekvenco, nastaviti sledenje"
Agent kliče: brevo/create-segment → brevo/send-email → brevo/send-sms → brevo/track-event
Rezultat: 3-koračna obnovitvena sekvenca aktivna, sledilni dogodki tečejo

Korak 1: Definirajte agenta

Ustvarite datoteko z imenom cart-recovery-agent.md:

---
name: cart-recovery-agent
description: Recover abandoned carts with personalized multi-channel sequences
version: 1.0.0
temperature: 0.2
max_tokens: 4096
tools:
- 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-stats
triggers:
- 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's
engagement platform. Your goal is to recover abandoned carts through
personalized, well-timed multi-channel outreach.
## Strategy
When a cart is abandoned:
1. **Wait 1 hour**, then send a reminder email with cart contents
2. **Wait 24 hours**, if no open → send SMS with urgency message
3. **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

Korak 2: Registrirajte orodja

Agent potrebuje dostop do določenih Brevo MCP orodij. Polje tools v frontmatter definira, katera orodja lahko agent prikliče. Ko agent teče, lahko kliče samo ta orodja, vse ostalo je blokirano.

Tu je, kar vsako orodje dela v kontekstu tega agenta:

tools:
# Branje podatkov stranke in stanja košarice
- brevo/list-contacts # Najdi stranke z zapuščenimi košaricami
- brevo/get-contact # Pridobi podrobnosti posamezne stranke
# Ustvarjanje ciljnih segmentov
- brevo/create-segment # Segmentiranje po vrednosti košarice, času, vedenju
# Pošiljanje obnovitvenih sporočil
- brevo/send-email # Transakcijski emaili za obnovitev
- brevo/send-sms # SMS obvestila za visoko vredne košarice
# Sledenje rezultatov
- brevo/track-event # Beleženje poskusov obnovitve in rezultatov
- brevo/get-email-stats # Preverjanje, ali so bili emaili odprti
- brevo/get-email-templates # Preverjanje obstoja predlog

Korak 3: Ustvarite verigo izvajanja

Za kompleksne agente lahko definirate večstopenjsko verigo izvajanja, kjer specializirani pod-agenti obdelujejo različne faze:

chain.yaml
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.

Korak 4: Testirajte agenta

S Claude Code

Terminal window
# Usmerite Claude Code na vašo specifikacijo agenta
claude --mcp brevo "Run the cart recovery agent for abandoned carts in the last 4 hours"

S Claude Desktop

Ko je konfiguriran Brevo MCP server, vprašajte Claude:

Zaženi mojega agenta za obnovitev košarice. Preveri zapuščene košarice nad $50 v zadnjih 4 urah in izvedi obnovitveno sekvenco.

Claude:

  1. Prebere specifikacijo agenta
  2. Prikliče brevo/list-contacts za iskanje zapuščenih košaric
  3. Segmentira po vrednosti košarice z odločitvenim okvirom
  4. Pošlje obnovitvene emaile prek brevo/send-email
  5. Doda v čakalno vrsto SMS sledenje prek brevo/send-sms
  6. Sledi vsem dogodkom prek brevo/track-event

Programsko izvajanje

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",
});
// Zaženi agenta
const 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."

Korak 5: Načrtujte agenta

Zaganjajte agenta po ponavljajočem se urniku:

Na osnovi crona

# V frontmatter specifikacije agenta
triggers:
- schedule: "0 */4 * * *" # Vsake 4 ure
timezone: "America/New_York"

Na osnovi dogodkov

triggers:
- event: cart_abandoned
conditions:
- cart_value: "> 50"
- time_since_activity: "> 30m"
debounce: 5m

Webhook

triggers:
- webhook: /agents/cart-recovery/trigger
method: POST
authentication: api_key

Korak 6: Spremljajte in izboljšujte

Sledite uspešnosti agenta prek Brevo dogodkov:

-- Stopnja obnovitve po ravni vrednosti košarice
SELECT
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_recovered
FROM cart_recovery_events
WHERE created_at > NOW() - INTERVAL '30 days'
GROUP BY tier
ORDER BY tier;

Primer: Celotna seja agenta

Tu je dejanska interakcija med tržnikom in Agentom za obnovitev košarice:

Tržnik: "Preveri zapuščene košarice od danes in zaženi obnovitev"
Agent: Preverjam zapuščene košarice za zadnjih 24 ur...
[Kliče brevo/list-contacts s filtrom CART_ABANDONED_AT > today]
Najdenih 47 zapuščenih košaric:
- 12 košaric pod $50 (preskoči po pravilih)
- 23 košaric $50-$100 (samo email raven)
- 8 košaric $100-$250 (email + SMS raven)
- 4 košarice nad $250 (email + SMS + označi za osebni stik)
Zaganjam obnovitvene sekvence...
[Kliče brevo/send-email × 35 s template_id 101]
[Kliče brevo/track-event × 35 z dogodkom "cart_recovery_email_sent"]
Korak 1 zaključen:
- 35 opomniških emailov poslanih
- 12 SMS v čakalni vrsti za sledenje po 24 urah (visoko vredne košarice)
- 4 košarice označene za osebni stik
Naslednje preverjanje načrtovano čez 4 ure.
Sledilni dogodki obnovitve: cart_recovery_email_sent (35),
cart_recovery_sms_queued (12), cart_recovery_escalated (4)

Naslednji koraki

Subscribe to updates

developer-docs

Drop your email or phone number — we'll send you what matters next.

AI pomočnik

Živjo! Vprašajte me o dokumentaciji.

Začnite brezplačno z Brevo