An 11-tool AI ops platform that runs the entire client acquisition pipeline for a local marketing agency.
Finding, pitching, and onboarding small business clients is slow. Researching a prospect takes 30+ minutes. Writing a proposal after a discovery call takes an hour. Building a custom website takes days. Generating a monthly performance report takes an afternoon.
This internal dashboard automates all of it — from the first look at a prospect to the monthly client report — using Claude AI, live data integrations, and a polished browser-based UI that runs on Cloudflare's edge.
Lead Scoring — Upload a CSV of local businesses. Claude scores each 0–100 on how urgently they need digital marketing help, based on web presence, social activity, and competitive gaps. Output: ranked Hot / Warm / Cold list with contact details and a one-line reason for each score.
Prospect Intelligence — Enter a business name and city. Returns a full digital audit: website quality grade (A–F), social media presence by platform, gap analysis, competitive positioning, and 5–7 tailored discovery questions to ask on the first call.
Website Generator — Enter a business name, city, and industry. Claude researches the prospect and generates a complete multi-page website (Home, Services, About, Contact) as a downloadable ZIP. Used to build live demo sites before the sales call.
Walk-In Dashboard — Route planning for in-person cold prospecting. Pulls target businesses in a zip code, plots them on a Google Map, and generates an optimized driving route.
Call Intelligence — Automatically joins Google Meet calls via Recall.ai. After the call, extracts structured data from the transcript: pain points, objections, budget signals, next steps. Also accepts pasted transcripts or Recall.ai JSON exports.
Proposal Generator — Takes discovery call data (from Call Intelligence or entered manually) and generates a fully customized Grand Slam Offer: tailored services, ROI projections, guarantee terms, investment breakdown, and a week-by-week onboarding timeline.
Client Report Generator — Select a client and a month. Pulls live data from GoHighLevel (pipeline, deals, lead sources) and Google Analytics 4 (sessions, bounce rate, top pages), synthesizes it with Claude, and renders a branded performance report with AI-generated takeaways.
Content Studio — AI content ideation across 5 brand pillars (Growth Mindset, AI & Automation, Relatable Skits, Behind the Build, Local Spotlight). Generates platform-specific hooks, captions, and CTAs. Built-in content calendar with weekly and monthly batch views.
Email Engine — Manages outbound email campaigns for the agency's own lead generation.
Vlog Publisher — Batch-schedules and publishes agency video content.
Caller Dashboard — Call routing and status tracking for the agency's outbound prospecting team.
The dashboard is a password-protected single-page app hosted on Cloudflare Pages. Each tool's backend is a Cloudflare Worker that handles the heavy lifting — Claude API calls, data fetching, PDF generation — and returns structured JSON or HTML to the frontend.
Browser (tools.html — password-protected)
│
▼
Cloudflare Pages (static hosting + edge functions)
│
├── /api/prospect → Prospect Intelligence Worker
├── /api/lead-score → Lead Scoring Worker
├── /api/website-gen → Website Generator Worker
├── /api/proposal → Proposal Generator Worker
├── /api/report → Client Report Worker (GHL + GA4)
├── /api/content → Content Studio Worker
└── ... (additional tool workers)
Workers connect to:
├── Anthropic Claude API (claude-sonnet-4-6)
├── GoHighLevel REST API (CRM data)
├── Google Analytics 4 Data API
├── Recall.ai (call recording and transcript)
├── Cloudflare D1 (content storage)
└── Google Places / Search APIs
Data flow for a typical tool (e.g., Proposal Generator):
- User fills out discovery call details in a slide-in panel
- Frontend POSTs structured JSON to the Worker
- Worker builds a system prompt from the business context
- Claude generates the full proposal as structured JSON
- Worker parses and returns it; frontend renders the branded result
- User can export to PDF, trigger contract generation, or start over
| Layer | Technology |
|---|---|
| Frontend | HTML / CSS / Vanilla JS (single-file, no build step) |
| Backend | Cloudflare Workers (one per tool) |
| AI | Anthropic Claude claude-sonnet-4-6 |
| CRM integration | GoHighLevel REST API |
| Analytics | Google Analytics 4 Data API |
| Call recording | Recall.ai (notetaker bot + transcript API) |
| Database | Cloudflare D1 (content studio data) |
| Hosting | Cloudflare Pages |
Single HTML file, no build step — the entire frontend is tools.html. Faster to iterate than a framework-based app. No npm, no Webpack, no deploy pipeline — just push and it works.
Each tool is a standalone panel — tools slide in as overlays without navigating away. The user can run Prospect Intelligence, jump to Proposal Generator, and load the call data from Tool 02 without ever leaving the page.
Impact-first output — every tool result leads with the answer, not the data. Lead Scoring doesn't show a spreadsheet; it shows "Hot / Warm / Cold" with a one-line reason. Proposal Generator leads with the ROI projection and package recommendation, not a list of deliverables.
| Task | Before | After |
|---|---|---|
| Prospect research | 30–45 min manual | ~20 seconds |
| Proposal writing | 60–90 min | ~30 seconds |
| Monthly client report | Half a day | ~45 seconds |
| Lead scoring a CSV | Days (or never) | Minutes |
| Demo website creation | Days | Minutes |
The backend Workers are deployed to Cloudflare and are not fully represented in this repository. This repo contains the frontend dashboard (tools.html), the database schema and migrations, and the frontend supporting files. Worker source files are maintained separately due to API key and client data isolation requirements.
The functions/ directory contains Cloudflare Pages Functions (the serverless edge functions that power each tool). The workers/ directory contains standalone Worker deployments for tools that require longer execution times or dedicated KV/D1 bindings.
Built for More Than Momentum, a digital marketing agency. The dashboard is the internal ops layer — it's what the team uses every day to find prospects, close deals, and serve clients. It's not public-facing.