In the pre-AI world, most high-stakes meetings started cold. Not because sales teams were lazy, but because they were busy. Organizations attempted to solve meeting preparation with discipline: reminding people to check the CRM, scan LinkedIn, or review previous touchpoints. But the reality is simple: discipline doesn't scale. AI systems do.
At True Horizon, we approach pre-meeting prep as an operational intelligence problem. When your execution is time-bound, such as a call starting in 60 minutes, intelligence must be delivered, not discovered. You shouldn't have to go looking for context. It should arrive in your inbox, structured and actionable, before the meeting begins.
This article breaks down how we architected a pre-meeting intelligence layer that automatically detects upcoming calls, matches attendees to CRM memory, enriches new contacts, and delivers a structured brief directly to your inbox.
The Problem: Context Shouldn't Be Discovered
Before automation, the typical pre-meeting workflow looked like this: open your calendar, identify who's attending, search the CRM for their record, check LinkedIn for recent activity, review past conversations, try to remember the last touchpoint.
This process is manual, inconsistent, and time-consuming. Even worse, it often doesn't happen at all. The result? Meetings start without context, and opportunities are lost.
The core issue isn't effort. It's architecture. When intelligence has to be discovered, it becomes optional. When it's delivered, it becomes operational.
The Solution: A Pre-Meeting Intelligence Layer
We built a system that connects three core platforms: Calendar (knows who you're meeting with and when), CRM (stores deal pipeline, contact history, and touchpoints), and Enrichment API (provides LinkedIn profiles, web search results, and contact data for net-new contacts).
These systems exist in silos. Nothing connects them automatically. Until now.
How the System Works
The workflow runs every five minutes and follows this logic:
Step 1: Trigger Layer
The system scans your calendar for upcoming external meetings within a custom time frame, typically 60 minutes. It filters out internal meetings and returns event details: title, attendees, organizer, and time.
Step 2: Extract Attendees
The system cleans the attendee list by removing CC'd emails, internal addresses, and your own email. What remains is a clean list of external contacts.
Step 3: CRM Lookup
The system queries your CRM (Salesforce, HubSpot, or Google Sheets) using the attendee's email address. It retrieves contact name and title, company and lifecycle stage, last touchpoint and deal status, LinkedIn profile link, and notes from previous interactions.
Step 4: Enrichment for New Contacts
If the contact is not found in the CRM, the system triggers an API call to a third-party enrichment service like Apollo. This service conducts a web search and pulls professional background, recent company news, LinkedIn activity, and suggested talking points. This ensures that even net-new contacts arrive with actionable intelligence.
Step 5: Data Normalization
Whether the contact is known or new, the system normalizes the data into a consistent format. This is critical: consistent input creates consistent output.
Step 6: AI Brief Generation
An AI agent receives the normalized data and generates a structured brief using a predefined template. The AI doesn't think or guess. It formats the information into exact sections: meeting link, attendee name and LinkedIn profile (clickable), last touchpoint (qualitative and quantitative), deal status and next steps, top three priorities for the meeting, and suggested talking points.
The brief is sent via email one hour before the call.
Step 7: Logging and Error Handling
Every execution is logged. If an error occurs, such as a missing email or failed API call, the system triggers an error notification and logs the issue for review. Reliability matters more than cleverness. If the brief arrives after the meeting, the system has failed.
What the Pre-Meeting Brief Looks Like
Here's what users receive in their inbox:
For Existing Contacts: Link to the meeting, clickable LinkedIn profile, last touchpoint details pulled from CRM, deal status and lifecycle stage, next step discussion points, and top three priorities: areas of agreement, friction, and next steps.
For New Contacts: Research pulled from web search and enrichment API, professional background and recent activity, suggested talking points based on their role and company, and top three priorities: relationship building, discovery questions, and strategic alignment.
The entire process takes about 30 seconds to execute and saves minutes, even hours, of manual research.
Key Design Principles
Building a reliable pre-meeting intelligence system requires adherence to several core principles:
1. Identity Matching Is the Real Bottleneck
Matching an email address to a CRM record is harder than it sounds. Get this right first. Use clean data, handle edge cases, and build fallback logic for partial matches.
2. Normalize Data Before It Hits AI
AI performs best with consistent input. Whether the data comes from your CRM or an enrichment API, normalize it into the same structure before passing it to the AI agent.
3. Net-New Contacts Aren't Empty. They're an Enrichment Opportunity
Don't treat unknown contacts as gaps. Treat them as opportunities to gather intelligence via APIs, web scraping, or third-party services.
4. Reliability Over Cleverness
It doesn't matter how smart the system is if the brief shows up after the meeting. Prioritize error handling, retries, and notifications. Log every execution.
5. Build for Scale, Not Discipline
Discipline-based workflows fail under pressure. Automation-based workflows scale infinitely.
Technology Stack Overview
The system we built uses Calendar API (Google Calendar, Outlook) for event detection, CRM (Salesforce, HubSpot) for contact and deal data, Enrichment API (Apollo, Clearbit) for net-new contact research, AI Agent (GPT-based) for brief generation, Email Delivery (Gmail API, SendGrid) for inbox delivery, and Database (PostgreSQL, Airtable) for logging and conversation history.
Native integrations are used where possible. Custom API calls handle enrichment and advanced logic.
Key Takeaways
Pre-meeting intelligence is not a luxury. It's an operational advantage. Here's what matters:
Automate detection: Your system should know when meetings are happening without manual input.
Match and enrich: Known contacts pull from CRM; unknown contacts trigger enrichment.
Normalize and template: Consistent data structure ensures consistent AI output.
Deliver on time: Reliability is non-negotiable. Briefs must arrive before the call.
Log everything: Build a shared history that improves intelligence over time.
This approach transforms meeting prep from a manual task into an automated intelligence layer. Every external call starts with context. Every conversation starts with a strong foot forward.
Discipline Doesn't Scale. Systems Do.
By architecting a pre-meeting intelligence layer, you eliminate the need for manual research, reduce cognitive load, and ensure every meeting starts with structured context. The result is faster execution, stronger conversations, and better outcomes.
If you want to build this for your team, where every external call starts with a structured brief automatically, this is the foundation. Different stacks, different systems, same principle: make the work happen before anyone has to think about it.

Written by
Zain Bali
Fractional CMO
Good "stories" don't cut it anymore, Great stories move people to action. True Horizon is here to help you tell yours. And build systems that empower your brand and create innovative, A.I.-forward products. Let's build something smarter.










