Your Ideal Customer Profile (ICP) is the primary filter that determines which leads receive high scores and continue through the pipeline. The ICP matching agent compares every discovered lead against your ICP definition and produces a structured score with detailed attributes. A well-written ICP directly improves the relevance of outreach emails, proposals, and next-step recommendations downstream.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/vrashmanyu605-eng/Agentic_Sales-Markerting/llms.txt
Use this file to discover all available pages before exploring further.
Setting your ICP in main.py
The ICP is set as a plain text string in theideal_customer_profile field of initial_state in main.py:
What makes a good ICP definition
The more specific your ICP, the more precisely the agent can evaluate each lead. Include as many of these attributes as apply to your business:- Company size — target segment by headcount or revenue tier (e.g., 200–2,000 employees, mid-market, or enterprise).
- Industry or vertical — manufacturing, logistics, fintech, healthcare, retail, or another specific sector. Narrow verticals score more accurately than broad ones.
- Technology maturity — whether the company is actively investing in AI, cloud infrastructure, or workflow automation. Companies already on this path convert faster.
- Business goals — digital transformation, operational efficiency, cost reduction, or revenue growth. Align this to the outcomes your services deliver.
- Budget signals — willingness to spend in a specific range (e.g., 50k per project). This helps the agent evaluate
revenue_potentialandbuying_probability. - Geographic region — include a region if your sales team operates in specific markets (e.g., North America, Western Europe). Leave this out if you serve globally.
What the ICP matching agent evaluates
The agent reads yourideal_customer_profile, the lead_research output from the previous agent, and live industry benchmark data from a web search. It returns a structured JSON object with these fields:
| Field | Description |
|---|---|
icp_match_score | Numeric score indicating how closely the lead matches your ICP |
matching_attributes | Attributes from the lead that align with your ICP definition |
missing_attributes | Attributes your ICP requires that the lead does not demonstrate |
revenue_potential | Estimated deal value based on company size and scope |
urgency_level | How urgently the lead likely needs your services |
buying_probability | Likelihood of the lead converting based on ICP fit |
best_service_fit | Which of your services is the strongest match for this lead |
icp_analysis field of state and is available to every subsequent agent in the pipeline.
Example ICP definitions
IT services for manufacturing companies:Target industry
Thetarget_industry field in initial_state works alongside ideal_customer_profile but serves a different purpose: it feeds directly into the web search query the ICP matching agent runs to fetch industry benchmarks.
target_industry to "manufacturing" causes the agent to fetch ICP benchmarks specific to manufacturing IT buyers, which grounds the scoring in real-world industry data rather than generic criteria. Set target_industry to the vertical your leads operate in — not the vertical your own company is in.