Skip to content
Projects
AI inside1 min read

Linc Consulting Lead App

Lead management app that uses the Anthropic Claude SDK to qualify, score, and route incoming consulting leads.

Role
Full-stack engineer
Year
2025
Status
prototype
AILLMautomationfull-stack

// AI capabilities

  • Anthropic Claude SDK
  • Structured-output prompting for lead scoring
  • Bulk processing with rate-limit awareness
  • CSV ingestion and webhook intake

// Architecture flow

Overview

A Next.js + Drizzle + Postgres app that ingests leads from CSV uploads or webhooks, runs them through Claude for qualification (intent, fit, urgency), and routes high-quality leads into a consultant queue with audit logs and human override.

Problem

Linc Consulting was processing inbound leads manually. Consultants spent hours triaging instead of selling. Junk leads were getting the same attention as high-intent enterprise inquiries.

Approach

Make Claude a triage analyst, not a salesperson. Each lead gets a structured score across intent, fit, and urgency. Confidence-low leads or ones with conflicting signals go to a review queue; clearly-qualified leads route directly to a consultant.

Architecture

  • Frontend / backend: Next.js 14 App Router.
  • ORM and DB: Drizzle over PostgreSQL.
  • AI: @anthropic-ai/sdk v0.90 with Claude.
  • CSV ingestion: PapaParse with a server-side validator.
  • Webhooks: signed webhook endpoint with idempotency keys.

Tech stack

  • App: Next.js 14, TypeScript, Tailwind
  • AI: @anthropic-ai/sdk
  • Data: Drizzle ORM, PostgreSQL
  • Ingestion: PapaParse for CSV, webhooks for live intake

AI work

  • Production prompt for JSON-structured lead scoring with strict schema validation.
  • Bulk processing with rate-limit awareness and exponential-backoff retries.
  • Reviewer override: every score is editable, and overrides feed back into a future fine-tuning corpus.

Want to dig deeper?

Ask my AI agent anything about how this was built, what tradeoffs I made, or how it could fit your team.

Ask my AI →