How to Build a Pre-Call Candidate Brief in Claude
A recruiter's guide to building a pre-call candidate brief in Claude where every fact is checkable, pulled from a live people and company data layer through MCP.
Published
Jun 19, 2026
Written by
Chris Pisarski
Reviewed by
Abhilash Chowdhary
Read time
7
minutes

How to Build a Pre-Call Candidate Brief in Claude
You research every candidate before you call them, and the work eats your morning. A senior recruiter at a retained executive-search firm we worked with does it by hand for each high-stakes call, reading the person's profile, their posts, the articles they wrote, the conferences they spoke at, plus the financial press. He told us his brain cannot synthesize all of it, and he gets one shot at these people. So he tried to hand the job to an AI, and the AI handed back candidates who had died years ago, names marked TBD, and confident facts that turned out to be wrong.
This guide shows how to build a pre-call candidate brief in Claude where every line is a fact you can check. The difference is where the facts come from. When Claude reads from a live people and company data layer instead of guessing from web search, the brief stops inventing things you cannot catch. You can build the whole thing by chatting with Claude, no code required, and you can try it on a free Crustdata account with 100 credits to start.
What actually goes in a pre-call candidate brief
A good brief is the handful of facts that let you walk into the call and reach peer status in the first two minutes, which a raw profile dump never gives you. The recruiter we spoke with put it simply. He wants a quick blurb tied to the priorities of the search, so when he calls a candidate he can say "I know you built this" and the whole tenor of the conversation changes. Six things earn that.
Career arc and trajectory
Where the candidate has worked, in what order, and the pattern those moves form. A sitting CIO who has only ever run application teams reads differently from one who has owned the full stack, and the arc is where you see it.
The thing they personally shipped
The single line that earns peer status is a specific project they led, the kind of thing their title alone never tells you. If you can reference the platform they built and the role they actually played in it, you sound like a peer rather than a recruiter reading a script.
A performance tell
The recruiter checks the stock price across a candidate's tenure as a tell. If the share price fell by two thirds in the year someone ran the function, that is worth knowing before the call. For a private company the read is headcount growth, since a fast-growing team usually means the candidate is sitting on equity and is harder to move.
Shared connections worth name-dropping
You and the candidate have people in common, and one or two of those names are the right ones to mention while the rest are noise. The brief should show who you both know so you can pick.
Risk flags to probe
The places where the candidate may not fit, framed as questions you want to ask rather than reasons to pass. A comp band well above the role, a tenure that looks short, a gap the spec rules out.
Three talking points tied to this search
Three things that connect the candidate's record to what this specific client cares about, so the call moves toward a decision instead of stalling on generic flattery.
A finished one-page brief looks like this (a fictional example, with a source tag on every line so you can check it).
Candidate brief: CIO search, mid-market manufacturer
Name and title: Dana Okafor, CIO at Northwind Industrial (source: enriched profile) Career arc: VP IT at a $400M distributor, then SVP Technology at a PE-backed services platform, now CIO for three years (source: work history with dates) Shipped: Led the ERP and warehouse-management rollout across 40 sites (source: their own public posts, two of them, last 18 months) Performance tell: Northwind stock down 19% over their three-year tenure, sector down 11% over the same window (source: public market data via web search) Shared connections: You both worked with Sam Reyes at the prior platform, a strong name to drop (source: overlapping work history) Risk flags: Comp likely above the band for this role, so confirm appetite for a smaller platform (source: role seniority and posted ranges) Talking points: the multi-site ERP work maps to this client's distribution problem, the headquarters-move experience is worth asking about, and probe why they would step down in platform size
Every line points at where it came from, so nothing in the brief is something you have to take on faith.
Why an ungrounded brief gets you tricked
The usual advice is to paste a profile into Claude and ask for a brief. That works until the search gets hard, and then it fails on the part that matters most, which is the people. The recruiter we worked with watched Claude try to name the technology leaders at a list of mid-market companies and barely return a single correct name. As he described it, one person had died four years earlier, another had retired two years before, and a third had not held the title in eight years. His verdict was that the result was horrible.
The obvious miss is easy to catch, but the dangerous one is the plausible miss that fits what he already believes. He explained that he can catch an error when he already knows it is wrong, while a fabrication that fits his prior knowledge slips right through. If an AI tells him that a $500 million manufacturer in upstate New York is owned by a big bank, he has no reason to doubt it, because it sounds exactly like something that would be true. That is what makes him easy to trick, and it is why a brief built on guesses is dangerous before a call where he gets one shot.
How to ground Claude on a live people and company data layer
The fix is to change where the facts come from. Instead of letting Claude guess the people layer from web search and training data, you point it at a live, daily-updated record of real people and companies, so it reads the facts rather than inventing them. The model still does the reasoning and the writing. The data layer handles who exists, where they work, and what is true right now.
In practice that means a Claude Code agent with Crustdata's MCP server configured pulls each fact from that data layer as it builds the brief. MCP is the connection that lets Claude call Crustdata as a tool inside the conversation, and Crustdata indexes people and companies on an ongoing basis rather than scraping them at the moment you ask. That is the reason the people layer resolves to real names with real work history instead of returning TBD. Crustdata provides the structured, entity-resolved data, and Claude turns it into the brief. Setting up that connection takes a few minutes, and the Crustdata MCP connector walkthrough covers it step by step.
Raw web search gives Claude a pile of pages to parse on the spot, which is where the dead names and the TBDs come from. The data layer gives it a verified profile, a full work history with dates, the company record, and the candidate's public posts, all tied to the right person. Crustdata is the data layer for recruiting teams who need the people layer to be right before they pick up the phone.
Build the brief conversationally in Claude
Once the MCP server is connected, you build the brief by asking for it in plain language, with no code and no pasted profile. You name the candidate and the search, and Claude pulls the facts from the data layer and assembles the page. A prompt like this works as a starting point.
I have a call with [candidate name], currently [title] at [company], for a [role] search. Build me a pre-call brief. 1. Find this person and enrich their full profile and work history from Crustdata. 2. Pull their recent public posts and any recent press about them or their company. 3. For the company, get the headcount trend, and for public companies the stock performance over their tenure. 4. Find people I have worked with who overlap with this candidate. Write a one-page brief with: career arc, the specific project they led, a performance tell, shared connections worth name-dropping, two risk flags to probe, and three talking points tied to this search's priorities. Put the source next to every line
I have a call with [candidate name], currently [title] at [company], for a [role] search. Build me a pre-call brief. 1. Find this person and enrich their full profile and work history from Crustdata. 2. Pull their recent public posts and any recent press about them or their company. 3. For the company, get the headcount trend, and for public companies the stock performance over their tenure. 4. Find people I have worked with who overlap with this candidate. Write a one-page brief with: career arc, the specific project they led, a performance tell, shared connections worth name-dropping, two risk flags to probe, and three talking points tied to this search's priorities. Put the source next to every line
I have a call with [candidate name], currently [title] at [company], for a [role] search. Build me a pre-call brief. 1. Find this person and enrich their full profile and work history from Crustdata. 2. Pull their recent public posts and any recent press about them or their company. 3. For the company, get the headcount trend, and for public companies the stock performance over their tenure. 4. Find people I have worked with who overlap with this candidate. Write a one-page brief with: career arc, the specific project they led, a performance tell, shared connections worth name-dropping, two risk flags to probe, and three talking points tied to this search's priorities. Put the source next to every line
Claude calls Crustdata through MCP for each piece, then writes the page. You can also bake in the way you read candidates, which is where the brief starts to sound like you rather than a template. The recruiter we spoke with wants certain sponsor brands to count for more, certain schools to matter for certain clients, and cultural cues pulled from a profile. All of that goes in the prompt, and Claude applies it every time. As he put it, he does not want Claude to be his fetcher. He wants it to be an amplifier of him.
The payoff shows up on the call. He described opening with a candidate by noting he knew they had worked for a notoriously demanding boss for six years, so they clearly had something, and the tenor of the conversation changed on the spot. That line came from a fact in front of him. A brief you can trust is what lets you open with it.
Won't it hallucinate the wrong details?
This is the right question to ask, and it is the one the recruiter asked us. The honest answer is that the model can still phrase things wrong, so you do not hand it blind trust. You make it show its work, and you check the work the way you would check a junior researcher.
Start with the source tag on every line. If a fact has a source you can open, click it before you use the fact on the call. A claim with no source, a number that contradicts the work history, or a person the data layer could not resolve are the three tells that mean stop and verify it yourself. The point of grounding the brief on real data is that most lines now have a source to check, which is exactly what a pasted-profile brief never gave you.
For the first few searches, run the brief alongside the research you would have done anyway, and compare. You will quickly see which parts hold up, which is usually the factual people-and-company layer, and which parts still need your read, which is fit, culture, and what someone is really worth. Keep that judgment. Crustdata is the data layer for recruiting teams who get one shot at the call and need the facts to be right, and the judgment about the person stays yours. You can book a demo to see the brief built on a live search, or start free with 100 credits.
The direct-API path for your technical teammate
If someone on your team would rather script this than run it in chat, the same brief comes from three Crustdata calls. You find the candidate, enrich them, then pull recent press and posts. The data is identical to the MCP path, so the only question is how much you want to build yourself. You can find the full filter set in the People Discovery API docs.
import requests HEADERS = { "Authorization": "Bearer YOUR_API_KEY", "Content-Type": "application/json", "x-api-version": "2025-11-01", } # 1. Find the candidate search = requests.post( "https://api.crustdata.com/person/search", headers=HEADERS, json={"filters": [{"field": "name", "type": "in", "value": ["Dana Okafor"]}, {"field": "current_employers.name", "type": "in", "value": ["Northwind Industrial"]}]}, ) profile_url = search.json()[0]["social_handles"]["professional_network_identifier"]["profile_url"] # 2. Enrich the full profile and work history enriched = requests.post( "https://api.crustdata.com/person/enrich", headers=HEADERS, json={"professional_network_profile_urls": [profile_url]}, ) person = enriched.json()[0]["matches"][0]["person_data"] # 3. Pull recent press and posts about the candidate press = requests.post( "https://api.crustdata.com/web/search/live", headers=HEADERS, json={"query": f'{person["basic_profile"]["name"]} {person["basic_profile"]["current_title"]}'}, )
import requests HEADERS = { "Authorization": "Bearer YOUR_API_KEY", "Content-Type": "application/json", "x-api-version": "2025-11-01", } # 1. Find the candidate search = requests.post( "https://api.crustdata.com/person/search", headers=HEADERS, json={"filters": [{"field": "name", "type": "in", "value": ["Dana Okafor"]}, {"field": "current_employers.name", "type": "in", "value": ["Northwind Industrial"]}]}, ) profile_url = search.json()[0]["social_handles"]["professional_network_identifier"]["profile_url"] # 2. Enrich the full profile and work history enriched = requests.post( "https://api.crustdata.com/person/enrich", headers=HEADERS, json={"professional_network_profile_urls": [profile_url]}, ) person = enriched.json()[0]["matches"][0]["person_data"] # 3. Pull recent press and posts about the candidate press = requests.post( "https://api.crustdata.com/web/search/live", headers=HEADERS, json={"query": f'{person["basic_profile"]["name"]} {person["basic_profile"]["current_title"]}'}, )
import requests HEADERS = { "Authorization": "Bearer YOUR_API_KEY", "Content-Type": "application/json", "x-api-version": "2025-11-01", } # 1. Find the candidate search = requests.post( "https://api.crustdata.com/person/search", headers=HEADERS, json={"filters": [{"field": "name", "type": "in", "value": ["Dana Okafor"]}, {"field": "current_employers.name", "type": "in", "value": ["Northwind Industrial"]}]}, ) profile_url = search.json()[0]["social_handles"]["professional_network_identifier"]["profile_url"] # 2. Enrich the full profile and work history enriched = requests.post( "https://api.crustdata.com/person/enrich", headers=HEADERS, json={"professional_network_profile_urls": [profile_url]}, ) person = enriched.json()[0]["matches"][0]["person_data"] # 3. Pull recent press and posts about the candidate press = requests.post( "https://api.crustdata.com/web/search/live", headers=HEADERS, json={"query": f'{person["basic_profile"]["name"]} {person["basic_profile"]["current_title"]}'}, )
From there you pass person and the press results to Claude with the same brief instructions, and you get the page on a schedule instead of on request.
Build the brief you can trust
Instead of spending a morning reading and synthesizing, you open a page where the facts are already pulled and already checkable. The recruiter we worked with called the manual version several days of work. The grounded brief turns that into a few minutes plus your own read on fit.
So pick one upcoming call this week and build the brief two ways. Do your usual research by hand, then have Claude build the grounded version, and put them side by side. You will see fast where the data layer beats your manual pass, and where your judgment still has to lead. Do that for a handful of searches, and you will know exactly how far to trust it.
Crustdata is the data layer for recruiting teams who get one shot at the call. So come and see what a grounded brief looks like across your own pipeline. Book a demo, or start free with 100 credits at crustdata.com.
Frequently asked questions
How do I research a candidate before a call without spending hours? Have Claude build the brief for you from a live data layer instead of reading a dozen sources by hand. You name the candidate and the search, Claude pulls the profile, work history, recent posts, and company data through the Crustdata MCP connection, and it writes a one-page brief with a source on every line. The reading and synthesizing it does in minutes is the part that used to take your morning.
Won't Claude hallucinate the wrong candidate details? It can phrase things wrong, which is why you ground it on real data and make it cite each line. When the facts come from an entity-resolved people and company record rather than open web search, the dead names and made-up companies mostly disappear. You still click the source on anything that matters and keep your own read on fit and comp.
What should a pre-call candidate brief include? The career arc, the specific project the candidate personally led, a performance tell like stock price over their tenure or headcount growth, shared connections worth name-dropping, a couple of risk flags to probe, and three talking points tied to the search. Each line should carry its source so you can verify it before the call.
Do I need to write code to do this in Claude? No. With the Crustdata MCP server connected, you build the brief by chatting with Claude in plain language. The direct-API path exists for teams who want to run it on a schedule, but the conversational version needs no code.
How is this different from prepping for a sales call? A sales rep preps for a call about an account, scoring it against an ICP. A recruiter preps for a call about a person, building talking points and risk flags to win the candidate. If you want the account version, see our guide on automating pre-call account research with Claude.
Products
Popular Use Cases
Competitor Comparisons
Use Cases
95 Third Street, 2nd Floor, San Francisco,
California 94103, United States of America
© 2026 Crustdata Inc.
Products
Popular Use Cases
Competitor Comparisons
Use Cases
95 Third Street, 2nd Floor, San Francisco,
California 94103, United States of America
© 2025 CrustData Inc.
Products
Popular Use Cases
Competitor Comparisons
Use Cases
95 Third Street, 2nd Floor, San Francisco,
California 94103, United States of America
© 2026 Crustdata Inc.


