Automated meeting-to-CRM pipeline with AI-powered follow-up notes.
Agent Transponder automatically processes your video call recordings, extracts actionable CRM notes using AI, uploads them to HubSpot, and emails you a professional follow-up summary β all without lifting a finger.
ββββββββββββββββ ββββββββββββββββββββ βββββββββββββββ βββββββββββββββ
β Fathom ββββββΆβ Fathom CRM ββββββΆβ HubSpot ββββββΆβ Email β
β (Meeting) β β Agent (AI) β β (CRM Note) β β (Summary) β
ββββββββββββββββ ββββββββββββββββββββ βββββββββββββββ βββββββββββββββ
Webhook Claude/Groq LLM REST API Resend API
- You finish a meeting recorded by Fathom
- Fathom sends a webhook with transcript, summary, and action items
- AI extracts company name, attendees, CRM-ready notes, and next steps
- HubSpot receives a formatted note attached to the correct company
- You receive an email with the follow-up summary and a link to the CRM record
- Zero manual data entry β meetings automatically sync to your CRM
- AI-powered extraction β Claude (claude-sonnet-4-20250514) identifies key information
- Smart company matching β finds the right HubSpot company by domain or name
- Professional email summaries β formatted follow-up notes delivered to your inbox
- Audit trail β all processed meetings logged in PostgreSQL
| Component | Technology | Purpose |
|---|---|---|
| Backend | FastAPI (Python 3.11+) | Webhook handling, API routing |
| Database | PostgreSQL (Neon) | User accounts, credentials, meeting logs |
| AI | Claude API / Groq API (Llama 3.1 70B) | Transcript processing, note extraction |
| CRM | HubSpot API | Company search, note creation |
| Resend | Follow-up email delivery | |
| Hosting | Railway / Render | Web service deployment |
- Python 3.11+
- PostgreSQL database (Neon free tier works)
- API keys for: Fathom, HubSpot, Claude / Groq, Resend
git clone https://github.com/Shiv716/Agent-Transponder.git
cd agent-transponder
python -m venv venv
source venv/bin/activate # Windows: venv\Scripts\activate
pip install -r requirements.txtcp .env .env
# Edit .env with your API keyspython -m app.core.database --inituvicorn app.main:app --reload --port 8000Point your Fathom webhook to:
https://your-domain.com/webhook/fathom
| Variable | Description | Required |
|---|---|---|
DATABASE_URL |
PostgreSQL connection string | β |
LLM_API_KEY |
LLM API key for LLM processing | β |
HUBSPOT_ACCESS_TOKEN |
HubSpot private app access token | β |
RESEND_API_KEY |
Resend API key for emails | β |
FATHOM_WEBHOOK_SECRET |
Fathom webhook signing secret | β |
USER_EMAIL |
Email address for follow-up delivery | β |
APP_ENV |
development or production |
β |
| Method | Endpoint | Description |
|---|---|---|
POST |
/webhook/fathom |
Receives Fathom meeting webhooks |
GET |
/health |
Health check for monitoring |
GET |
/meetings |
List processed meetings |
GET |
/meetings/{id} |
Get specific meeting details |
agent-transponder/
βββ app/
β βββ main.py # FastAPI application entry
β βββ core/
β β βββ config.py # Environment configuration
β β βββ database.py # Database connection & models
β βββ models/
β β βββ schemas.py # Pydantic models
β βββ routers/
β β βββ webhook.py # Fathom webhook handler
β β βββ meetings.py # Meeting history endpoints
β βββ services/
β βββ ai_processor.py # LLM integration
β βββ hubspot.py # HubSpot API client
β βββ email.py # Resend email service
βββ tests/
β βββ test_webhook.py # Webhook handler tests
βββ docs/
β βββ SETUP.md # Detailed setup guide
β βββ ARCHITECTURE.md # System design documentation
βββ .env.example # Environment template
βββ requirements.txt # Python dependencies
βββ render.yaml # Render deployment config
βββ CONTRIBUTING.md
βββ README.md
- Create a new Web Service on Render
- Connect your GitHub repository
- Set environment variables in Render dashboard
- Deploy
The included render.yaml handles build and start commands automatically.
The LLM receives the meeting transcript and extracts:
{
"company_name": "Acme Corp",
"company_domain": "acme.com",
"attendees": ["John Smith", "Jane Doe"],
"crm_note": "Discussed Q3 implementation timeline. Client confirmed budget approval. Next steps: send SOW by Friday.",
"action_items": [
"Send SOW document",
"Schedule technical deep-dive",
"Confirm stakeholder list"
],
"meeting_sentiment": "positive",
"deal_stage_signal": "negotiation"
}This structured data drives the HubSpot update and email content.
Contributions welcome! Please read CONTRIBUTING.md for guidelines.
- Issues: GitHub Issues
- Documentation: docs/
Built with β and AI.