Back to insights

    Playbook

    Anatomy of a multi-agent architecture for judicial auction monitoring with Claude + AWS

    How Leiloa.ai processes 12 thousand judicial auction notices per month with an ensemble of agents that uses Claude for semantic extraction and AWS Lambda for orchestration.

    Equipe MVA 8 min readPublished on April 17, 2026· Last updated: April 19, 2026

    Leiloa.ai is MVA's product that monitors judicial auctions in real time. The problem is specific: courts publish notices in scattered official gazettes, in inconsistent PDF formats, with unstructured metadata. For the investor, that means opportunities missed by minutes. For us, it means a pipeline that must read, classify, validate and notify in under four hours.

    The agent topology

    Four specialized agents operate in sequence. Crawler: scrapes publications from integrated courts, normalizes content into raw JSON. Extractor: calls Claude with a 2,400-token system prompt that knows how to identify auction-specific entities (asset, appraisal value, terms, dates).

    Validator: cross-checks Extractor output with external bases (Brazilian Federal Revenue for debtor's CNPJ, geolocation for property address). Notifier: applies user personalization filters and sends email/push alerts.

    Infrastructure — why Lambda instead of containers

    Each agent is a Lambda function. EventBridge orchestrates via events. Why? Variable volume. On heavy publishing days (Mondays and the first business days of the month), volume triples. Lambda scales horizontally without overhead. On calm days, cost is negligible.

    Total infra cost for 12k notices/month in 2025 was USD 430. Claude inference was USD 1,100. The rest is Pinecone (auction vectorization for semantic search) and Typesense (full-text).

    The three things that matter most in evals

    Extraction accuracy: on a monthly sample of 100 manually reviewed notices, we measure field precision. Target: 95%+ on appraisal value, 90%+ on date. Currently running at 97% and 93%.

    Hallucination rate: how often the Extractor invents values not present in the notice. Target: under 0.5%. Controlled via low temperature (0.1) and double-check via regex validator before persistence.

    Latency: time between detected publication and notification sent. Internal SLA: 4h. Current p95: 2h 40min. Today's bottleneck is crawl frequency, not inference.

    Other posts

    View all