1. Résumé screening & shortlisting (manual → minutes)
A recruiter opens every CV by hand, reads it against the JD, and copies notes into a sheet — hours per role, and the 200th CV gets less attention than the first.
Trigger: Webhook (new application) or Email (careers inbox)
How the workflow runs
- Trigger
Application lands. A Webhook (from your ATS/careers form) or an Email trigger on the careers inbox starts the flow per candidate.
- Knowledge
Score against the JD. A Knowledge node holds the job description + must-haves; the résumé is compared against it, not a keyword guess.
- Agent
Summarize + rate. An Agent node writes a 3-line summary, a fit score, and the gaps — consistently, for every candidate.
- Condition
Auto-route by fit. A Condition node splits strong / maybe / reject so recruiters only read the shortlist.
- Approval
Recruiter confirms shortlist. An Approval node keeps the human as the decision-maker — the agent ranks, a person decides.
- Tool (MCP)
Write back to the ATS. A Tool (MCP) node updates the candidate stage and notes in your ATS.
Channels & connectors
- Webhook
- Knowledge base
- Approval / HITL
- Tool (MCP → ATS)
Outcome
Every applicant is read and scored the same way within minutes; recruiters spend their time only on the shortlist and the human decision.
Why it helps
Removes the fatigue bias of manual screening and the copy-paste into sheets, while the hire/reject call stays with a person.
Build spec
1 agent — 1 screening agent per applicant; routing + ATS write-back are workflow nodes.
System prompt (paste-ready)
You are a recruiting screener. Given a résumé and the job's must-haves (from Knowledge), output strict JSON {summary (max 3 lines), fit_score 0-100, matched[], gaps[], recommendation: STRONG|MAYBE|REJECT}. Score only on job-relevant evidence in the résumé. Do NOT use name, gender, age, religion, caste, or photo as signals — ignore them entirely. If a must-have can't be confirmed, list it in gaps, don't assume it.MCP connectors
- ATS (Greenhouse/Lever/etc.) — via a Tool (MCP) node
- careers inbox — via Email trigger
Built-in tools
- knowledge_search (JD + must-haves)
- file parsing (résumé PDF/DOCX)
Guardrails
- Bias guardrail: protected attributes are explicitly excluded from scoring in the prompt
- The agent ranks; it never rejects — the Approval node (recruiter) makes every advance/reject decision
- Same rubric for every candidate — deterministic Knowledge-grounded criteria, not vibes
Output & delivery
Per-candidate JSON → Condition buckets STRONG/MAYBE/REJECT → recruiter reviews the shortlist at the Approval node → a Tool node writes the stage + notes back to the ATS via MCP.