crm-icp-analysis — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited crm-icp-analysis (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Build a data-driven Ideal Customer Profile by analyzing closed-won deals, associated contacts, and companies in your HubSpot CRM. Identifies patterns in industries, company sizes, job titles, deal sizes, sales cycles, and lead sources that predict revenue.
Requires: Cogny Agent subscription ($9/mo) — Sign up
/crm-icp-analysis — full ICP analysis across all dimensions /crm-icp-analysis companies — company firmographic analysis only /crm-icp-analysis contacts — buyer persona analysis only /crm-icp-analysis deals — deal pattern analysis only
Call mcp__cogny__hubspot__get_user_details to verify CRM access. Confirm read access to contacts, companies, and deals. If access is missing:
This skill requires HubSpot CRM access via Cogny's MCP server.
Sign up at https://cogny.com/agent and connect your HubSpot account.Before querying data, understand what fields exist:
hubspot__get_properties(objectType: "deals")
hubspot__get_properties(objectType: "companies")
hubspot__get_properties(objectType: "contacts")Identify key properties for analysis:
Note any custom properties that look ICP-relevant (e.g., custom industry fields, company tier, segment tags).
Search for closed-won deals to establish the revenue baseline:
hubspot__search_crm_objects(
objectType: "deals",
filterGroups: [{"filters": [{"propertyName": "dealstage", "operator": "EQ", "value": "closedwon"}]}],
properties: ["dealname", "amount", "closedate", "createdate", "pipeline", "dealtype", "hs_analytics_source"],
sorts: [{"propertyName": "closedate", "direction": "DESCENDING"}],
limit: 200
)Check the total count — paginate if needed to capture full dataset.
Calculate:
Also search closed-lost for comparison:
hubspot__search_crm_objects(
objectType: "deals",
filterGroups: [{"filters": [{"propertyName": "dealstage", "operator": "EQ", "value": "closedlost"}]}],
properties: ["dealname", "amount", "closedate", "createdate", "pipeline", "hs_analytics_source"],
limit: 200
)Compare closed-won vs closed-lost to identify discriminating patterns.
Fetch companies associated with closed-won deals. Use get_crm_objects with deal IDs to get associations, then batch-fetch the associated companies:
hubspot__get_crm_objects(
objectType: "companies",
objectIds: [<associated company IDs>],
properties: ["name", "industry", "numberofemployees", "annualrevenue", "city", "state", "country", "type", "domain"]
)Build firmographic profile:
Flag:
Fetch contacts associated with closed-won deals, then batch-fetch:
hubspot__get_crm_objects(
objectType: "contacts",
objectIds: [<associated contact IDs>],
properties: ["jobtitle", "hs_persona", "lifecyclestage", "hs_analytics_source", "email", "firstname", "lastname"]
)Build buyer persona profile:
Flag:
Combine insights across deals, companies, and contacts:
CRM ICP Analysis
Data basis: [N] closed-won deals, [N] companies, [N] contacts
Period: [earliest close date] to [latest close date]
Total revenue analyzed: $[X]
═══════════════════════════════════════════════════
IDEAL CUSTOMER PROFILE
═══════════════════════════════════════════════════
Company Firmographics:
Industry: [Top 1-3 industries] ([X]% of wins)
Employee Count: [Range] (sweet spot: [X-Y])
Annual Revenue: $[Range]
Geography: [Top regions]
Buyer Persona:
Primary Buyer: [Title cluster] ([X]% of deals)
Secondary Buyer: [Title cluster] ([X]% of deals)
Seniority: [Level] and above
Function: [Department]
Deal Characteristics:
Average Deal Size: $[X] (median: $[Y])
Sweet Spot Range: $[X] - $[Y]
Average Sales Cycle: [N] days
Best Lead Sources: [Source 1], [Source 2]
Win Rate Analysis:
Overall Win Rate: [X]%
Best Segment Rate: [X]% ([segment description])
Worst Segment Rate: [X]% ([segment description])
═══════════════════════════════════════════════════
ICP FIT SCORING MODEL
═══════════════════════════════════════════════════
Dimension | Weight | Criteria
───────────────────|────────|─────────────────────────
Industry | 25% | [Top industries] = match
Company Size | 20% | [Range] employees = match
Seniority | 20% | [Level]+ = match
Job Function | 15% | [Functions] = match
Deal Size Potential| 10% | $[X]+ = match
Lead Source | 10% | [Sources] = match
Scoring: 80-100 = Strong fit | 60-79 = Moderate fit | <60 = Weak fit
═══════════════════════════════════════════════════
ANTI-ICP (AVOID)
═══════════════════════════════════════════════════
- [Pattern 1 that predicts losses]
- [Pattern 2 that predicts losses]
- [Pattern 3 that predicts losses]
Top 3 Actions:
1. [Highest-impact recommendation]
2. [Second recommendation]
3. [Third recommendation]For EVERY actionable ICP insight, call mcp__cogny__create_finding:
{
"title": "ICP sweet spot: SaaS companies 200-1000 employees close at 2.3x average rate",
"body": "Analysis of 87 closed-won deals shows SaaS companies with 200-1000 employees have a 42% win rate vs 18% overall. Average deal size $45K, 34-day sales cycle. These companies represent only 23% of pipeline but 51% of revenue. Recommend: prioritize this segment in outbound and ad targeting.",
"action_type": "icp_refinement",
"expected_outcome": "Increase win rate by focusing pipeline on high-fit segments",
"estimated_impact_usd": 5000,
"priority": "high"
}Action types for ICP analysis:
icp_refinement — ICP definition updates, scoring model changestargeting_refinement — ad/outbound targeting changes based on ICPpipeline_optimization — sales process changes for specific segmentslead_source_optimization — invest more in high-ICP-fit lead sourcesdisqualification_rule — anti-ICP patterns to filter out early~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.