Claude
Skills
Sign in
← Back

morning-brief

Included with Lifetime
$97 forever

Daily briefing with calendar, CRM priority dial list, deal momentum summary, and Gmail drafts for each lead.

Productivity

What this skill does


# Morning Brief Skill

<objective>
Generate Tim's daily briefing (Monday-Friday 7:30 AM) with calendar, HubSpot hot leads for dialing, deal momentum scores, recent Clari call summaries, and personalized Gmail drafts for each priority dial list contact. Integrate health metrics from callable-lead-count. Skip leads in Supabase cooldown. Output single-page HTML brief for quick review before 50+ daily dials.
</objective>

<quick_start>
**Trigger:** M-F 7:30 AM ET (after callable-lead-count at 7:25 AM)  
**Manual Trigger:** "Show morning brief" or "Today's dial list"  
**Dependencies:** Requires HubSpot (portal 21530819), Google Calendar, Clari, Supabase (disposition check)  
**Output:** Single-page HTML brief with calendar, dial list (20 ATL contacts), deal momentum, call summaries, draft emails
</quick_start>

<success_criteria>
- [ ] Pull Tim's calendar for today (meetings, breaks, focus blocks)
- [ ] Pull 15-20 hot leads from HubSpot (ATL-first sort, high engagement)
- [ ] Filter: skip leads in Supabase cooldown (disposition_cooldown_until > NOW)
- [ ] Enrich each lead: company, title, last touch, recent activity
- [ ] Fetch deal momentum scores for leads (from deal-momentum-analyzer or calculated)
- [ ] Check Clari for calls from last 7 days (summaries, key takeaways)
- [ ] Create Gmail draft for each lead (using prospect-refresh templates or custom)
- [ ] Output: HTML brief with calendar, dial list, deal pipeline, call highlights, drafts ready
- [ ] Report: dial target (15-20 ATL), meeting blocks, deal momentum trends
</success_criteria>

<workflow>

## Stage 1: Pull Tim's Calendar for Today

**MCP Tool:** `gcal_list_events`

```
calendarId: "primary"
timeMin: TODAY 00:00:00
timeMax: TODAY 23:59:59
timeZone: "America/New_York"
condenseEventDetails: true
```

**Extract and Display:**
- All meetings with times, attendees, duration
- Focus blocks or "Do Not Disturb" blocks
- Lunch/break time
- Available dial windows (gaps between meetings)

**Calendar Output:**
```
## Today's Calendar

09:00 - 09:30  | All Hands (Zoom)
09:30 - 10:30  | [AVAILABLE FOR DIALS] 60 min
10:30 - 11:15  | 1:1 with Manager
11:15 - 12:00  | [AVAILABLE FOR DIALS] 45 min
12:00 - 13:00  | LUNCH
13:00 - 14:30  | [AVAILABLE FOR DIALS] 90 min
14:30 - 15:00  | Clari Call Review
15:00 - 16:00  | [AVAILABLE FOR DIALS] 60 min
16:00 - 17:00  | Admin / Wrap-up
```

**Dial Window Summary:** Total 255 min = 4.25 hours available for dials (target 50 dials at ~5 min/dial)

---

## Stage 2: Pull Hot Leads from HubSpot

**MCP Tool:** `search_crm_objects` (HubSpot)

```
objectType: "contacts"
filterGroups: [{
  filters: [
    { propertyName: "phone", operator: "HAS_PROPERTY" },
    { propertyName: "hs_lead_status", operator: "IN", values: ["Qualified Lead", "Sales Qualified Lead"] },
    { propertyName: "hs_analytics_num_page_views", operator: "GTE", value: "3" }
  ]
}]
properties: [
  "firstname", "lastname", "email", "phone", "jobtitle", "company",
  "custom_atl_btl_tier", "custom_prospect_vertical", "hs_analytics_num_page_views",
  "hubspot_owner_id", "hs_lastmodifieddate", "createdate", "custom_last_touch",
  "lifecyclestage", "custom_deal_momentum_score"
]
sorts: [{
  propertyName: "custom_atl_btl_tier",
  direction: "ASCENDING"  # ATL first
}]
limit: 50
```

**Filter + Sort Logic:**
1. Phone must exist (callable)
2. Lead status in engaged tiers (Qualified Lead, Sales Qualified)
3. Engagement signal: >3 page views OR recent activity (<7 days)
4. Sort by: custom_atl_btl_tier (ATL > GRAY > BTL)
5. Within tier, sort by: hs_lastmodifieddate DESC (most recent first)

**Trim to top 25 candidates** (will further filter in Stage 3)

---

## Stage 3: Apply Supabase Cooldown Filter

**Check Supabase disposition table for cooldown status**

**Query:** disposition table where contact_id = hubspot_contact_id AND disposition_cooldown_until > NOW()

**Cooldown Rules (per disposition policy):**
- Voicemail left: 24-hour cooldown
- Call declined/busy: 2-hour cooldown (can retry)
- Call connected but wrong person: 24-hour cooldown
- Call connected and scheduled: 7-day cooldown (follow-up call)
- Lead opted out: 30-day cooldown or permanent "Do Not Call"

**Filter Logic:**
```
FOR each contact IN hot_leads_list:
  IF contact_id in supabase disposition AND cooldown_until > NOW():
    SKIP contact
    LOG: "In cooldown until {cooldown_until}"
  ELSE:
    KEEP contact (ready to dial)
```

**Output:** Filtered dial list (typically 15-20 after cooldown filter)

---

## Stage 4: Enrich Leads with Deal + Activity Data

**For each remaining lead, enrich:**

**Step A: Check deal association via HubSpot**

**MCP Tool:** `search_crm_objects` (HubSpot deals)

```
filterGroups: [{
  associatedWith: [{
    objectType: "contacts",
    operator: "EQUAL",
    objectIdValues: [contact_id]
  }]
}]
properties: ["dealname", "dealstage", "amount", "closedate", "custom_deal_momentum_score"]
limit: 5
```

**Output per contact:**
- Associated deals (max 3)
- Deal stage (Negotiation, Qualification, etc.)
- Deal size
- Deal momentum score (if calculated by deal-momentum-analyzer)

**Step B: Check Clari calls (last 7 days)**

**MCP Tool:** `clari_search_calls`

```
attendeeEmail: contact.email
daysBack: 7
limit: 5
```

**Extract:**
- Call date/time
- Duration
- Summary of key topics
- Action items (from AI notes)

**Step C: Get last touch info**

- Pull custom_last_touch field from HubSpot (set by prior activities)
- Alternative: query hs_lastmodifieddate
- Display: "Last touched 3 days ago" or "Last call 2026-03-15"

---

## Stage 5: Calculate Deal Momentum Scores

**MCP Tool:** Epiphan CRM `ask_agent` OR pull from HubSpot custom field

**For each lead's associated deals, calculate momentum:**

**Momentum Scoring Factors:**
1. **Stage Progression:** +3 if moved in last 7 days
2. **Contact Breadth:** +2 if ATL contact involved, +1 per GRAY contact
3. **Activity Cadence:** +2 if >2 activities last 7 days, +1 if 1 activity
4. **Recency:** +2 if activity <2 days ago, +1 if <5 days
5. **Deal Size:** +1 if >$100K

**Momentum Tiers:**
- 10+ = πŸ”₯ Hot (near close, high activity, ATL engaged)
- 7-9 = βœ“ Warm (progressing, some ATL involvement)
- 4-6 = ⚬ Cool (early stage, low activity)
- <4 = ❄️ Cold (stalled)

**Output example:**
```
Jane Smith @ Acme Corp
  Deal: "Acme AV Suite" ($250K, Negotiation stage)
  Momentum: πŸ”₯ 10/10 (ATL + VP Sales, moved stage 3 days ago)
  Last touch: 2026-03-17 (call with VP)
```

---

## Stage 6: Check Recent Clari Calls

**MCP Tool:** `clari_search_calls`

```
repEmail: "[email protected]"
daysBack: 7
status: "POST_PROCESSING_DONE"
limit: 10
```

**Extract call summaries:**

**MCP Tool:** `clari_get_call_summary` (for each call)

```
callId: call_uuid
# Returns: summary, action_items, key_takeaways, attendees
```

**Display format:**
```
## Recent Calls (Last 7 Days)

### 2026-03-18 β€” State University (45 min)
Attendee: Dr. Janet Lee, Director of Academic Technology
Summary: Discussed hybrid learning infrastructure. Interest in lecture capture.
Takeaway: Promised demo of Epiphan Pearl Nano + Canvas integration
Action Items: [Send demo link by 2026-03-20]

### 2026-03-15 β€” County Courts (30 min)
Attendee: Tom Miller, Court Administrator
Summary: Current process: manual video setup + USB drives. Pain point: compliance archival.
Takeaway: High interest in automation. Will present to judge committee.
Action Items: [Follow-up after judge meeting, 2026-03-25]
```

**Trends:**
- Top pain points mentioned
- Products/features mentioned most
- Follow-up actions due
- Deals progressed

---

## Stage 7: Create Gmail Drafts for Priority Leads

**For each lead in final dial list (15-20), create Gmail draft:**

**MCP Tool:** `gmail_create_draft`

**Draft Template Strategy:**

**Template A β€” High Momentum Deal (Momentum 8+):**
```
To: [email protected]
Subject: RE: Acme AV Suite Demo β€” Next Steps

Hi Jane,

Following up on our call with your VP of IT on 3/17β€”thanks again for the positive feedback on the Pearl Nano demo.

Quick qu

Related in Productivity