การสร้างเอเจนต์ตัวแรก
การสร้างเอเจนต์ตัวแรก
คู่มือนี้จะพาคุณผ่านการสร้าง Cart Recovery Agent, เอเจนต์ AI ที่ตรวจสอบตะกร้าที่ถูกทิ้งและจัดการลำดับการกู้คืนที่ปรับแต่งเองผ่านอีเมล SMS และ WhatsApp โดยใช้เครื่องมือ Brevo MCP
ข้อกำหนดเบื้องต้น
- บัญชี Brevo พร้อม API key (รับที่นี่)
- Brevo MCP Server ที่กำหนดค่าแล้ว (คู่มือการตั้งค่า)
- Claude Desktop, Claude Code หรือ MCP-compatible client ใดก็ตาม
- เทมเพลตอีเมลที่สร้างใน Brevo สำหรับการกู้คืนตะกร้า
เอเจนต์ทำงานอย่างไร
เอเจนต์คือไฟล์ markdown ที่กำหนด:
- Identity, สิ่งที่เอเจนต์ทำและข้อจำกัดของมัน
- Tools, เครื่องมือ MCP ที่สามารถใช้ได้
- Instructions, วิธีการให้เหตุผลและดำเนินการ
- Guardrails, สิ่งที่ไม่ควรทำเด็ดขาด
เมื่อถูกเรียกใช้ เอเจนต์จะใช้ LLM ในการให้เหตุผลเกี่ยวกับเป้าหมาย เลือกเครื่องมือที่เหมาะสม และดำเนินการกับ Brevo API
นักการตลาด: "ตั้งค่าการกู้คืนตะกร้าสำหรับตะกร้าที่เกิน $50" ↓เอเจนต์อ่าน spec ของตัวเอง (เครื่องมือ, ข้อจำกัด) ↓เอเจนต์ให้เหตุผล: "ฉันต้องสร้าง segment ออกแบบลำดับ ตั้งค่าการติดตาม" ↓เอเจนต์เรียก: brevo/create-segment → brevo/send-email → brevo/send-sms → brevo/track-event ↓ผลลัพธ์: ลำดับการกู้คืน 3 ขั้นตอนทำงานแล้ว events การติดตามกำลังไหลขั้นตอนที่ 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: ลงทะเบียนเครื่องมือ
เอเจนต์ต้องการสิทธิ์เข้าถึงเครื่องมือ Brevo MCP เฉพาะ ฟิลด์ tools ใน frontmatter กำหนดว่าเอเจนต์สามารถเรียกเครื่องมือใดได้ เมื่อเอเจนต์ทำงาน สามารถเรียกเฉพาะเครื่องมือเหล่านี้เท่านั้น, ทุกอย่างอื่นถูกบล็อก
นี่คือสิ่งที่เครื่องมือแต่ละตัวทำในบริบทของเอเจนต์นี้:
tools: # อ่านข้อมูลลูกค้าและสถานะตะกร้า - brevo/list-contacts # ค้นหาลูกค้าที่มีตะกร้าที่ถูกทิ้ง - brevo/get-contact # รับรายละเอียดลูกค้ารายบุคคล
# สร้าง targeted segments - brevo/create-segment # แบ่งกลุ่มตามมูลค่าตะกร้า เวลา พฤติกรรม
# ส่งข้อความกู้คืน - brevo/send-email # อีเมลธุรกรรมสำหรับการกู้คืน - brevo/send-sms # การแจ้งเตือน SMS สำหรับตะกร้ามูลค่าสูง
# ติดตามผลลัพธ์ - brevo/track-event # บันทึกความพยายามกู้คืนและผลลัพธ์ - brevo/get-email-stats # ตรวจสอบว่าอีเมลถูกเปิดหรือไม่ - brevo/get-email-templates # ยืนยันว่าเทมเพลตมีอยู่ขั้นตอนที่ 3: สร้าง Execution Chain
สำหรับเอเจนต์ที่ซับซ้อน คุณสามารถกำหนด execution chain หลายขั้นตอนที่ sub-agents เฉพาะทางจัดการในแต่ละระยะ:
steps: - agent: analyzer input: | Analyze the abandoned cart data for the past 4 hours. Goal: {task}
- agent: sequencer input: | Based on this analysis, design recovery sequences: {previous}
- agent: executor input: | Execute these recovery sequences via Brevo: {previous}
- agent: reporter input: | Generate a recovery report from these execution results: {previous}ขั้นตอนที่ 4: ทดสอบเอเจนต์
กับ Claude Code
claude --mcp brevo "Run the cart recovery agent for abandoned carts in the last 4 hours"กับ Claude Desktop
เมื่อ Brevo MCP server ถูกกำหนดค่าแล้ว ถาม Claude:
รัน cart recovery agent ของฉัน ตรวจสอบตะกร้าที่ถูกทิ้งที่มากกว่า $50 ใน 4 ชั่วโมงที่ผ่านมาและดำเนินการลำดับการกู้คืน
การดำเนินการแบบโปรแกรม
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",});
const result = await agent.run( "Recover abandoned carts over $50 from the last 4 hours");
console.log(result.summary);ขั้นตอนที่ 5: กำหนดเวลาเอเจนต์
triggers: - schedule: "0 */4 * * *" # ทุก 4 ชั่วโมง timezone: "America/New_York"ขั้นตอนถัดไป
- รูปแบบข้อมูลจำเพาะเอเจนต์, อ้างอิงครบถ้วนสำหรับ markdown agent
- เอเจนต์ที่สร้างไว้ล่วงหน้า, เอเจนต์การตลาดพร้อมใช้งาน
- อ้างอิง Skills, เครื่องมือ MCP ที่มีทั้งหมด
- Brevo MCP Server, Tool schemas และสิทธิ์