Two sessions, every prompt ready to paste into Claude.
Paste each prompt into Claude, one at a time. Let it finish before you paste the next one. Anything in [brackets] is yours to fill in.
What you need connected:
GA4 for your store or stores
Market inventory: the scraper database in Supabase
OhMyDash — your dashboard from the Dealer Dashboard Kit, running at http://localhost:3000 and open in a Chrome tab, with Claude in Chrome connected. The demo data that ships with the kit works for every prompt below.
Nothing here changes your website, your ad accounts, or your data. Every prompt only reads, and every email is a draft.
0
Connect GA4 to Claude
Two ways in. Start with the quick one; it takes a minute and needs nothing installed on your machine. Do the second one when you want Claude querying GA4 directly instead of reading the screen.
0aQuick start: let Claude drive your GA4 tab
Claude's Chrome extension works inside the browser you already use, so it inherits the access you already have. Nothing to install on your machine, no API keys, no Google Cloud project.
1. Add the Claude extension to Chrome, and sign in to Claude.
2. Sign in to the Chrome profile that has GA4 access. Whatever that Google account can see in GA4 is what Claude can see. Nothing more.
3. Open the GA4 report you want: the property, the date range, the report on screen.
4. In the Claude app, tell it to take control of that tab. Then paste any GA4 prompt from this page.
Prompt 0a
Take control of my GA4 tab. Tell me which property and date range is on screen, then list every report you can reach from here. Read only: don't change any setting, filter, or date range unless I ask.
Good to know: Claude is reading the screen, the same as a person would, so give it a moment on big reports and keep one property in front of it at a time. It's the fastest way to start, and it's enough for every prompt on this page.
0bThe deeper connection: let Claude walk you through it
This gives Claude its own read-only login to GA4, a Google "service account," which is the same way the dashboards you already pay for connect. It pulls months of data across every store without anyone clicking through reports. It costs nothing: Google's reporting API is free, and you only pay for your Claude usage.
You'll spend about 15 minutes, mostly clicking in two browser tabs. Paste this into Claude Code and it will do the terminal parts and tell you exactly what to click for the rest:
Prompt 0b
Walk me through connecting GA4 to you with a Google service account, so you can read GA4 directly. Go one step at a time. Wait for me to say "done" before the next step, and do every terminal step yourself instead of asking me to type commands.
1. Check my computer: tell me if I'm on Mac or Windows, make sure uv is installed (install it if not), then install Google's GA4 server with: uv tool install --python 3.12 analytics-mcp
2. In the browser: help me create a Google Cloud project (or pick one I already have), and give me the exact links to turn on the "Google Analytics Data API" and "Google Analytics Admin API" for that project. Ask me for the project ID when I'm done.
3. In the browser: walk me through creating a service account in that project called ga4-reader with no extra roles, then creating a JSON key for it and downloading it.
4. Move the key I downloaded into a private folder: ~/.config/gcloud-keys/ga4-reader.json on a Mac (lock it so only I can read it), or %USERPROFILE%\.config\gcloud-keys\ga4-reader.json on Windows. Never print what's inside the key. Just read the service account's email address out of it and show me that email.
5. In GA4: walk me through Admin, Account access management, then adding that email as a Viewer. If I have more than one GA4 account, tell me to repeat it for each one.
6. Test it: list every GA4 property the service account can see, with its property ID and website, and match each one to my stores.
7. Connect it to Claude Code with: claude mcp add analytics-mcp --scope user -e "GOOGLE_APPLICATION_CREDENTIALS=<key path>" -e "GOOGLE_PROJECT_ID=<project ID>" -- analytics-mcp Then tell me to restart Claude and type /mcp to confirm it's connected.
If any step fails, tell me what the error means in plain English and how to fix it before moving on.
Why this way, and not signing in with your own Google account: Google's standard command-line sign-in won't hand out GA4 access without extra setup, which is where most people get stuck. A service account skips that. It's also safer: it can only read, it only sees the GA4 accounts you add it to, and you can remove it in GA4 in one click. Treat the key file like a password, and don't email it or put it in a shared folder.
(If you ever outgrow it, GA4's BigQuery export is the paid next step, and you'd know when you need it.)
1
Do your two inventory lists agree?
Start here, because it takes 30 seconds and it usually finds something. Export what your inventory system says you have, and export what a marketplace, your website, or your feed provider says you have. Both are telling the truth about themselves. The gap between them is cars nobody can see.
Prompt
I'm giving you two inventory files. Compare them and show me every discrepancy.
1. Tell me what each file is and which system it came from, then how you matched rows: VIN first, stock number second. Say how many rows matched.
2. List every vehicle in file A that is missing from file B, and every vehicle in file B that is missing from file A. Show VIN, stock number, year, make, model, trim, and price.
3. For vehicles in both, list every field that disagrees: price, mileage, trim, color, photo count, status. Sort by price difference, largest first.
4. Then tell me the three most likely causes of what you found, and what each missing unit is costing me while it sits unseen.
Don't summarize until you've listed the actual vehicles. If a field is missing from one file, say so instead of guessing.
Two exports worth comparing: your inventory management system against a third-party marketplace, your feed file against what's live on your own website, or last week's export against today's.
2
Is your website sending the events you'll need?
The Automotive Standards Council (ASC) GA4 standard is on version 1.2. Plenty of stores still aren't on 1.0.
2aAudit every store
Prompt 2a
Read the ASC GA4 Standard v1.2 event list here: https://docs.google.com/spreadsheets/d/1Lrx7-qL3p17tMA7Dpox2q7yIAfmeIZ6W7NtkWBTU2j0/export?format=csv&gid=0
Then:
1. List every GA4 property I can access and which store each one belongs to.
2. For each property, pull event counts by event name for the last 90 days. Where the event_owner parameter is available, include it so we can see which vendor is sending each event.
3. Compare each store against the ASC 1.2 list. Mark every ASC event as Firing or Missing. If an event only makes sense for a tool the store may not have (parts forms, video calls, chat), mark it "No activity, confirm with vendor" instead of Missing.
4. Assign every missing event to the vendor responsible:
- Website provider: page views, item and list page views, CTA, menu, media, special offer, form engagement, click to call, and sales form submissions
- Service scheduler: service and service appointment submissions
- Call tracking provider: voice engagement and voice submission events
- Chat or texting provider: comm engagement and comm submission events
- Digital retailing tool: retail process events
5. Show me one table: store, vendor, missing events, and the store's GA4 property ID.
Don't guess. If you can't tell whether an event is firing, say so. Stop after the table and check with me before writing anything else.
2bDraft the vendor emails
Prompt 2b
For each store and vendor with missing events, draft an email to that vendor.
Each email should include:
- The store name and website
- The GA4 property ID
- Each missing event by its exact name, with a one-line description from the ASC spec
- A request to implement ASC GA4 Standard v1.2, including the event_owner parameter
- A request for a go-live date within 30 days
Keep each email under 150 words, friendly, and specific. Group them by vendor in one document so I can copy each one. Draft only. Do not send anything.
3
Are your ad platforms optimizing toward the right thing?
Prompt
Look at the key events marked on each of my GA4 properties. For each key event, tell me whether it's a real lead (a form, a call, a chat, or an appointment) or just engagement (a page view, a click, a scroll).
Then explain, in plain English, what Google Ads, Microsoft Ads, Meta, and TikTok would be optimizing toward if they bid on the conversions I have today. Rank the fixes by how much ad spend they affect.
4
Find the traffic hitting dead pages (404s)
4aFind every 404 and where it came from
Prompt 4a
Using GA4 for the last 90 days, find every page view that landed on a "page not found" page. GA4 doesn't record HTTP status codes, so find them by page title ("Page Not Found", "404", "Oops") and by the error_code parameter on asc_pageview if the site sends it. Tell me which method found what.
For each broken URL, show:
- Sessions and users
- Where the traffic came from: source / medium, campaign, and referring site
- What the URL was probably for: a sold vehicle's VDP, an old model page, an expired special, an old service page, or something else
Sort by sessions. Group the results by who caused the broken link:
- Our website (old internal links, deleted pages)
- Our ads (Google, Microsoft, Meta, or TikTok ads pointing at a dead URL)
- A third party (a listing site, the OEM site, a directory, an email or text campaign)
Stop after the table and check with me.
4bBuild the redirect list and the emails
Prompt 4b
For each broken URL, recommend the best live page to 301 redirect it to:
- A sold vehicle goes to the search results page for that same make, model, and condition
- An old model or specials page goes to the current one
- Anything else goes to the closest matching page, never just the homepage
Give me the redirect list as a two-column table (old URL, new URL) the website provider can load directly. Then draft emails:
- To our website provider, with the redirect list attached
- To whoever runs our ads, listing each ad or campaign still sending traffic to a dead URL
- To each third party linking to a dead page, with the correct URL
Draft only. Do not send anything.
5
Is your ad traffic landing in the right place?
Every campaign has a job. A vehicle listing ad (VLA) is selling one car, so it should land on that car's VDP. If it lands on a search results page instead, the car probably sold, the feed is stale, or the ad catalog is broken, and you're paying for a click that has to start shopping over.
5aFind campaigns landing on the wrong page type
Prompt 5a
Using GA4 for the last 30 days, pull sessions by source / medium, campaign, and landing page. Classify every landing page as one of: VDP (one vehicle), SRP (search results or inventory list), model page, specials, service or scheduler, finance or trade, homepage, 404, or other. Use the URL patterns on my site, and tell me the patterns you used.
Then compare each campaign's intent to where it actually landed:
- Vehicle listing ads (Google VLA, Microsoft, and Meta or TikTok inventory and catalog ads) should land on a VDP
- Model or trim search campaigns should land on a model page or a filtered SRP
- Service campaigns should land on a service page or the scheduler
- Brand campaigns can land on the homepage
List every campaign where more than [10]% of sessions landed on the wrong page type. Show sessions, engagement rate, and lead rate for the right landing vs the wrong one.
5bFind the cause and draft the fix
Prompt 5b
For each mismatch, tell me the most likely cause:
- A VLA or catalog ad landing on an SRP or a 404: the vehicle sold and the inventory feed or ad catalog didn't update, or the feed's link template is wrong
- Inventory ads landing on the homepage: the catalog's URL field is broken
- Search or service campaigns landing on the wrong page: the ad's final URL is wrong
Estimate what those wrong landings cost: sessions on the wrong page times the difference in lead rate. Then draft one email per responsible party: our website provider, our inventory feed provider, and whoever manages each ad account. Draft only.
6
Talk to your market (inventory scraper)
The scraper reads every competitor's public inventory once a day. It knows what's on their lot, what they're asking, when they cut the price, and when a car disappears (which usually means it sold).
Some prompts need history. Price cuts, days on lot, and how fast cars sell only show up after the scraper has run daily for at least two weeks. On day one, run 6f, 6a, 6b, and 6e.
Every inventory prompt starts with this line. Dealer websites spell the same trim differently ("Lariat" and "Lariat®", "SEL" and "SEL AWD", "Transit-350" and "Transit Commercial"), and without it, Claude reports gaps that aren't real.
6aWhat should I buy or order?
Prompt 6a
Before comparing anything, normalize names: ignore ® and ™, ignore case, treat drive type words in the trim (AWD, FWD, 4WD, 4x4) as part of drivetrain, not trim, and group model variants that are the same vehicle. Show me any names you merged.
Using the market inventory database, find the models and trims that competitors in my market stock in real volume and I have little or none of. Only include makes my store sells. Only count a trim if at least two different competitors carry it, so one dealer's opinion doesn't count as a trend.
If the scraper has at least two weeks of history, also check how fast each trim sells in my market: how many days units lasted on competitors' sites before disappearing. Rank by volume (and speed, if available), and give me a buy list for the used car manager and an order list for new.
6bWhere am I priced wrong, in both directions?
Prompt 6b
Before comparing anything, normalize names: ignore ® and ™, ignore case, treat drive type words in the trim (AWD, FWD, 4WD, 4x4) as part of drivetrain, not trim, and group model variants that are the same vehicle. Show me any names you merged.
Compare my pricing to competitors for every model and trim we both have, same condition and same model year. Don't compare raw prices: packages swing MSRP by $15,000 on the same trim. Compare discount off MSRP instead, and convert the difference to dollars per unit.
Leave out competitors that don't publish MSRP, or whose price always equals MSRP (they probably only show MSRP), and tell me which ones you left out.
Give me two lists:
1. Discounted less than the market. These are my first price conversations.
2. Discounted more than the market. I may be leaving money on the table.
For each, show store, stock numbers, my discount, the market discount, the number of competitor units compared, and dollars per unit. If the scraper has two weeks of history, add days on lot. Flag any gap over 15% as "check equipment before repricing."
6cWhen do my competitors blink? needs 2+ weeks of daily scrapes
Prompt 6c
Look at every competitor price cut in the price history. For each competitor, tell me:
- How many days a unit usually sits before the first cut
- How big the first cut usually is, in dollars and percent
- Which models they cut most
Then tell me, for this week, which of their units are coming up on their usual cut day, and whether I have the same trim. That's who is about to undercut me.
6dWho is stuck, and what does that mean for me? needs 90+ days of history
Prompt 6d
Find competitor units that have been on their lot more than 90 days. Group by dealer and model. For each group, tell me:
- If I have the same trim, whether I'm priced above or below them
- If I don't have it, whether it's a dealer trade opportunity
- Whether this is a model the whole market is stuck on, and I should slow down buying it
6eWhere should my ad money go this week?
Prompt 6e
Before comparing anything, normalize names: ignore ® and ™, ignore case, treat drive type words in the trim (AWD, FWD, 4WD, 4x4) as part of drivetrain, not trim, and group model variants that are the same vehicle. Show me any names you merged.
Using the market inventory database, find the trims where I have at least three units and my discount off MSRP is at or above the market's. If the scraper has two weeks of history, also require that the market sells them quickly. Those are the units my ads should push this week.
Then find trims where I discount well below the market or the market is flooded. Those are the ones to pause or lower bids on until the price changes. Give me both lists by store.
6fIs the scraper telling the truth?
Run this first if anything above looks strange.
Prompt 6f
Check the scraper runs for the last 7 days. List any dealer that errored, found zero vehicles, or dropped more than 30% in unit count from one day to the next.
Then check data quality by dealer: missing MSRP, missing price, price above MSRP, and fields holding the wrong thing (like a transmission in the drivetrain field). Tell me which dealers' data I shouldn't trust for pricing yet, and why.
7
Put two systems together (this is where agents win)
7aCars nobody is looking at
Prompt 7a
Compare my active inventory in the market database against GA4 item page views (asc_item_pageview, matched on VIN or stock number) for the last 14 days. List every unit on my lot with zero or almost zero views. For each, suggest why: missing photos, price above market, not syndicating, or low demand for that trim.
7bViews but no leads
Prompt 7b
Find my units with the most GA4 item page views in the last 14 days and no form, call, or chat leads tied to them. Compare each one's price to the market. Tell me which look like pricing problems and which look like merchandising problems.
7cWhat shoppers want vs what I stock
Prompt 7c
Rank the makes, models, and trims shoppers view most on my website over the last 30 days. Put that next to how many units I have and how many my competitors have. Where is demand high and my supply low?
7dAds still running on cars that are gone
Prompt 7d
Find VDP URLs that got paid traffic in GA4 in the last 14 days for vehicles that are no longer active in the market database for my store. Those are ads, feeds, or catalogs still spending money on cars I already sold. List them by campaign and ad platform.
8
Question the dashboard (OhMyDash in Chrome)
8aWhat does each number actually mean?
Prompt 8a
Read the OhMyDash dashboard open in my Chrome tab. List every metric on the page and exactly how it's calculated. Flag any metric whose name might not mean what a GM thinks it means, and ask me the five questions you need answered to interpret it correctly.
8bCheck the dashboard against the source
Prompt 8b
Take three numbers from the OhMyDash dashboard in my Chrome tab and pull the same numbers straight from the data underneath it — GA4 if the dashboard is on my live data, or the matching CSV in demo-data/ if it's on the demo set — for the same date range. Where they don't match, explain why.
8cHow could these numbers lie?
Prompt 8c
For each KPI on the OhMyDash dashboard, describe a realistic way the number could improve while the store gets less profitable. Then check the data for signs that's happening now.
9
Monday morning
Prompt
Write a one-page Monday note for my GM using GA4, the market database, and the OhMyDash dashboard: what changed last week, the three things that need attention, and who should own each one. Plain English, no charts, under 300 words.
Generate video, watch it, score it, fix it, and ship it, without leaving Claude.
What you need:
Claude Code in your terminal, or the Claude desktop app if you'd rather not use a terminal
A Higgsfield account — free to start, and the login below creates one
About ten minutes for setup, once
Works on Mac and Windows. Where the two differ, both are shown: Terminal on a Mac, PowerShell on Windows. Windows also needs Git for Windows installed first.
Nothing here posts anything publicly. Every clip lands on your machine for you to look at first.
1
Hook Higgsfield up to Claude
Do this before anything else. The CLI is better if you want batches, files on your machine, and the scoring loop. The connector is better if you don't want to touch a terminal. Either way, install the skills in 1b.
1aThe CLI, in your terminal
Terminal
npm i -g @higgsfield/cli higgsfield auth login
Same two commands on Mac and Windows. auth login opens your browser and signs you in on this machine. (On a Mac you can also use brew install higgsfield-ai/tap/higgsfield instead of npm.)
1bThe skills that teach Claude how to drive it
Three of these. The first executes, the second two write better prompts.
named camera moves, character consistency, and troubleshooting when a generation comes out wrong.
platform's limits built in. Download it here. In the Claude app, go to Settings → Capabilities → Skills → + and upload the file. For Claude Code, unzip it into ~/.claude/skills/ on a Mac, or %USERPROFILE%\.claude\skills\ on Windows (rename it to .zip first so Windows will extract it).
higgsfield-ai/skills — Higgsfield's own bundle: generate images, video, audio, Marketing
OSideMedia/higgsfield-ai-prompt-skill — the prompt-construction layer: model selection,
seedance-prompt-gen — writes complete Seedance 2.0 prompts with reference tags and the
Restart Claude after installing, and it picks all of them up.
1cNo terminal? Add it as a connector
In the Claude desktop app: Settings → Connectors → Add custom connector.
Connect, sign in when the browser opens, and set read and write to Always Allow. This works from Claude on desktop, web, and your phone. If you're working in a terminal, Higgsfield recommends the CLI over the connector.
1dGive Claude eyes
This is the part everyone skips, and it's the whole difference between output and slop. Inside Claude Code:
One Windows quirk worth knowing: if anything ever asks you to run a python3 command, use python instead. On Windows, python3 opens the Microsoft Store rather than running the script.
Transcripts need one more key. Frames work out of the box; reading what a clip says does not. Get a free key at console.groq.com/keys and put it in ~/.config/watch/.env as GROQ_API_KEY=.... Without it, a clip with no captions comes back frames-only — fine for silent b-roll, not enough to score a spoken line.
1eCheck it's working
Prompt 1e
Check my Higgsfield setup by actually calling it, not just looking for the program: pull my credit balance and list the video models available to me. If anything comes back with a session or authentication error, tell me the exact command to run to fix it. Don't generate anything yet.
A logged-out CLI still answers higgsfield auth token, so "is it installed" is not the same question as "does it work." If you see Session expired, run higgsfield auth login again.
2
Write a brief worth generating
Lazy prompts make slop. Six things, every time: subject, camera, lens and motion, light, place with one real detail, and what to leave out.
2aTurn a rough idea into a real brief
Prompt 2a
I want a [15]-second video of [describe it in one sentence, like "our new Outback on the service drive at sunrise"].
Write it as a shot-by-shot brief. For every shot include: the subject with year, color and body style; the camera move, named; lens and depth of field; the light source, time of day and direction; the location with one real detail; and what must NOT appear (no on-screen text, no people, no invented logos).
The real detail must be something with no writing on it — a canopy, a bay door, a tree line, wet pavement. Never a lane number, a sign, a plate or a banner: asking for painted or printed words is what puts garbled letters in the shot. Say what the ground and walls ARE ("plain unpainted concrete") instead of listing what you don't want on them.
Then ask me anything you need about our store, our inventory, or our brand before we generate.
2bSteal the structure of something that works
Prompt 2b
/watch [link to a dealer video that's working]
Break down the first three seconds, the shot list, the pacing, and the on-screen text. Then write a brief for the same structure using [a unit from our inventory] at [our store].
3
Generate it
Text alone gets you a car, not your car. Save the photos off the VDP first — front three-quarter, side, rear, rear three-quarter — and hand them over with the brief. That is the difference between a generic silver coupe and the unit sitting on your lot.
Prompt
Use the brief we just wrote, with these photos of the actual unit as reference images: [drag in 3-5 photos from the VDP]. Keep the paint, wheels, badge and trim exactly as they appear in them.
Generate the clip with Higgsfield, save it to ./renders/[stock number]-v1.mp4, and save the exact prompt you used in a text file next to it.
Price it before you spend: tell me the credit cost first, and if a cheaper model or a shorter draft would answer the same question, say so. Then tell me which model you picked and why.
4
The critique loop (this is the one that matters)
4aWatch it and score it
Prompt 4a
/watch ./renders/[stock number]-v1.mp4
Score every second against the brief on: subject consistency, hands and faces, text artifacts, lighting continuity, and whether the vehicle matches what I described (trim, badge, wheels, color). Be blunt. Then tell me the single shot to regenerate and exactly what to change in the prompt.
4bFix only what failed
Prompt 4b
Regenerate only that shot with the change you described, save it as v2, then watch v2 and score it against the same list. Show me the two scores side by side and tell me which one to ship.
4cMake the rules stick
Prompt 4c
Write our anti-slop rules into CLAUDE.md in this folder so every future brief follows them: real location or nothing; our actual inventory and colors; no on-screen text from the model, we add text in post; cut on motion; check the hands; and always watch it at full size before anyone else does.
5
Make it look like one brand, not a pile of clips
Prompt
Lock the look for everything we generate: [our brand colors, hex codes if you have them], the same lens language, and the same color treatment. Save it as a reusable style block in CLAUDE.md, and apply it to the brief we just wrote.
If we need the same person across several clips, tell me how to set that up with a character reference and what it costs.
6
One brief, every format
Prompt
From this same brief, produce a 15-second paid social cut, a 30-second OTT cut, a 6-second bumper, and a 9:16 vertical. Keep the same lens language and color treatment across all four.
Watch each one and score it before you hand it to me. Name the files by stock number and format.
7
Content for the departments nobody films
Marketing just noticed first. Pick the one that's actually short-staffed.
Prompt
Write a brief and generate a first clip for [pick one]:
- Service: 20 seconds on why a declined brake service matters, no talking head
- Parts: 15 seconds on wholesale counter capability
- Fleet: 30 seconds of an upfit walkthrough for a buyer who will never visit the lot
- Recruiting: a 30-second script for hiring a technician
- HR: 45 seconds of first-day orientation, process not people
- Sales: 15 seconds on a real stock number
Ask me for the details you need about our store first, then generate, watch, and score it.
If I pick recruiting, don't write anything yet. Interview me first about what actually makes our shop worth leaving another store for: the pay plan and whether it's flat rate or hourly, hours available per tech, the bay and lift setup, who supplies tools, whether the shop is heated and cooled, paid OEM training and certification, the schedule (four-day weeks, weekends, on-call), signing bonus or relocation, how long the current techs have been there, and the path from lube tech to master tech. Ask one question at a time, and use my answers as the script's hook. A technician can tell in three seconds whether the person who wrote the ad has been in a shop.
8
From inventory to a content queue
This is where the two sessions meet: your market data picks the cars, the engine makes the clips.
Prompt
Using my inventory, pick the [10] units that most need attention: aged, priced at or below market, or a trim I'm heavy on. For each one, write a 15-second brief using the real year, trim, and color, generate it, watch it, score it, and save it named by stock number.
Give me a table at the end: stock number, score, and whether you'd ship it or regenerate it.
9
Guardrails, because this is still a regulated business
Prompt
Review the clips and briefs in this folder against dealer rules and tell me anything that needs fixing:
- OEM brand guidelines apply to generated footage too
- Co-op won't reimburse what it can't verify, so check before budgeting against it
- Disclose AI where our state or OEM requires it
- Never generate a person who resembles a real employee without written permission
- Never advertise a vehicle we don't actually have in stock
Every repo here was checked on GitHub and sorted by what it replaces. Open any one of them in Claude Code and say: "Set this up for my dealership and run it. Ask me for anything you need."
Prices are US list prices for the tool each one replaces, checked September 13, 2026. A range runs from the billed-annually rate to month-to-month. "est." or "~" means the vendor does not publish pricing.
Before anything touching customer data: nothing with customer financial information goes into a self-hosted tool until it passes your FTC Safeguards review. Self-hosting means your team owns updates, backups, and security.
1
Biggest savings at 20 to 100+ stores
These replace tools billed per seat, per store, per screen, or per vehicle, so what you save grows with every store you add.
Stirling PDF — A PDF editor that runs in the browser from your own server: edit, merge, split, redact, OCR, sign, compress, and convert. 50+ tools, plus an API for batch jobs. Replaces: Adobe Acrobat Pro seats ($23.99/license/mo) · Self-host (Docker)
LibreChat — A private, company-wide ChatGPT-style app. Staff sign in with company accounts and use Claude, GPT, or Gemini through your own API keys, with agents, file uploads, and MCP tools. Replaces: ChatGPT Business or Enterprise seats ($20–$60/user/mo) · Self-host (Docker)
Metabase — Dashboards and point-and-click questions that non-analysts can use. The open-source edition charges nothing per viewer. Replaces: Power BI and Tableau viewer seats ($14–$75/user/mo) · Self-host (Docker)
RustDesk — Remote desktop support like TeamViewer, routed through a server you control. Replaces: TeamViewer, AnyDesk (~$51–$230/license/mo) · Self-host server
NocoDB — Turns a database into a spreadsheet-style app with grid, kanban, form, and calendar views. It can sit directly on the Postgres or Supabase data from this session. Replaces: Smartsheet, Airtable, Monday boards ($9–$45/user/mo) · Self-host (Docker)
Plane — Project management with boards, cycles, docs, and intake forms. The open-source alternative to Monday, Asana, and Jira. Replaces: Monday, Asana ($11–$25/user/mo) · Self-host (Docker)
Docmost — A company wiki with real-time editing, permissions, and page history. The Confluence and Notion alternative. Replaces: Confluence, Notion (~$6–$20/user/mo) · Self-host (Docker)
Paperless-ngx — Scan, OCR, tag, and search every document. Drop a scan in a folder and it gets filed and becomes searchable. Replaces: DocuWare, Laserfiche (~$30–$125/user/mo) · Self-host (Docker)
Formbricks — Surveys and feedback forms by link, email, or website, with results you own. The SurveyMonkey and Qualtrics alternative. Replaces: SurveyMonkey, Qualtrics ($30–$92/user/mo) · Self-host (Docker)
Uptime Kuma — Monitors websites, forms, APIs, and servers, and alerts by text, Teams, or email the minute something goes down. Replaces: UptimeRobot, Pingdom ($12–$39/mo) · Self-host (Docker)
Anthias — Digital signage on a Raspberry Pi. Schedule images, videos, and web pages to any TV. Replaces: ScreenCloud, Yodeck ($8–$30/screen/mo) · Install on a Raspberry Pi
Chatwoot — One inbox for website chat, email, Facebook, Instagram, WhatsApp, and texting through Twilio, with routing, canned replies, and reporting. Replaces: Part of Podium, Birdeye, or your chat vendor (~$299–$689/store/mo) · Self-host (Docker)
2
Worth running now
Strong projects with clear dealer uses, whatever your size.
OpenSEO — Keyword research, rank tracking, competitor insights, backlinks, site audits, and AI-search visibility. It exposes an MCP server, so Claude can query your SEO data directly. Replaces: Semrush, Ahrefs ($117–$139/mo) · Plug into Claude
Activepieces — Workflow automation with 200+ integrations, branches, loops, and AI steps. It also exposes flows as MCP tools for Claude. Replaces: Zapier, Make ($20–$104/mo) · Self-host (Docker)
changedetection.io — Watches any web page and alerts you when something on it changes, down to a single price, element, or line of text. Replaces: Visualping ($10–$140/mo) · Self-host (Docker)
PaddleOCR — Turns scanned PDFs and photos into structured text and tables, locally. Handles invoices, forms, and tables, in 100+ languages. Replaces: Nanonets, Docparser, ABBYY ($33–$159/mo) · Builder project
Meetily — Meeting recorder that transcribes and summarizes entirely on your machine. Nothing goes to a cloud service. Replaces: Otter.ai, Fireflies.ai ($8–$30/user/mo) · Install the app
Claude Ads — Paid-media audits, pacing, creative-fatigue checks, and reports across Google, Meta, YouTube, Microsoft, TikTok, and more. Read-only by default. Changes need explicit approval. Replaces: Optmyzr, Adalysis, agency audit hours (From $149–$209/mo) · Plug into Claude
Playwright — Browser automation from Microsoft. Claude can drive a real browser to click through sites, pull reports, and check pages. Replaces: RPA tools, Browserless, manual exports (From $25/mo) · Plug into Claude (MCP)
Scrapling — Web scraping framework that adapts when a page layout changes. Handles anything from one page to a full crawl. Replaces: Apify, ScraperAPI ($17–$199/mo) · Builder project
VoiceStudio — Local voice cloning, voice design, video dubbing, dictation, and transcription in hundreds of languages. Replaces: ElevenLabs ($18–$99/mo) · Install the app
HyperFrames — Claude writes HTML and CSS, and HyperFrames renders it to MP4, the same output every time. This is how you add real text and graphics to video without a model misspelling them. Replaces: Canva video templates, motion-design freelancers ($12–$21/user/mo) · Plug into Claude
Recordly — Screen recorder with automatic zooms, cursor smoothing, webcam bubble, and a timeline editor for polished walkthroughs. Replaces: Screen Studio, Loom ($9–$20/user/mo) · Install the app
OpenWhispr — Push a hotkey, talk, and the text is typed into whatever app you're in. Runs locally or with your own API key. Works on Windows, Mac, and Linux. Replaces: Wispr Flow ($12–$15/user/mo) · Install the app
3
Narrower fit
Good for one department, or overlapping something above.
Documenso — Open-source e-signature platform, the DocuSign alternative. Replaces: DocuSign, outside F&I ($30–$45/user/mo) · Self-host or hosted
Dub — Short links and QR codes with click and conversion attribution. Replaces: Bitly ($10–$35/mo) · Hosted is easier
Graphic Walker — Tableau-style drag-and-drop chart builder that runs in a browser. It's a component you embed, not a full BI server. Replaces: Tableau, Power BI seats for exploration ($14–$75/user/mo) · Builder project
PPT Master — Turns documents and data into native, editable PowerPoint with real charts, masters, and your own template. Replaces: Gamma, Beautiful.ai ($15–$50/user/mo) · Plug into Claude
Marketing Skills — A library of Claude skills for conversion optimization, copywriting, SEO, email, and analytics. Replaces: No SaaS line. Agency and freelancer hours. · Plug into Claude
NotFair Plugin — SEO, AI-search, and paid-media skills that query live GA4, Search Console, and ad accounts. Replaces: Agency SEO reporting · Plug into Claude
AI Shorts Generator — Turns a long video into vertical shorts with highlight detection, subtitles, and translation. Replaces: Opus Clip ($15–$29/mo) · Builder project
Comp AI CRM — An agent-first CRM where the AI researches accounts, logs what it finds, and books its own follow-ups. Replaces: HubSpot or Salesforce seats, not your retail dealer CRM ($90–$100/seat/mo) · Builder project
Kdenlive — Free, full-featured desktop video editor. Replaces: Adobe Premiere Pro ($23/mo) · Install the app
Cheat on Content — A Claude skill that makes you score and predict each post before publishing, then compare against real results three days later. Replaces: No SaaS line · Plug into Claude
Twenty — An open-source Salesforce-style CRM with custom objects, workflows, and an API. More mature than Comp AI CRM. Replaces: Salesforce or HubSpot seats, not your retail dealer CRM ($90–$100/seat/mo) · Self-host (Docker)
Traccar — GPS tracking server that works with 200+ tracker models. Replaces: Samsara, Verizon Connect per-vehicle plans (~$24–$45/vehicle/mo) · Self-host plus hardware
Snipe-IT — Tracks equipment and software licenses: who has what, where it is, and when it's due. Replaces: Asset tracking in spreadsheets or IT suites · Self-host (Docker)
Listmonk — Self-hosted email newsletters and campaigns for large lists, sending through a service like Amazon SES. Replaces: Mailchimp, Klaviyo (~$450–$720/mo) · Self-host
rembg — Removes photo backgrounds on your own machine. Replaces: remove.bg and per-image photo tools ($9–$89/mo) · Builder project
Zammad — A help desk with email, chat, phone logging, and a knowledge base. Replaces: Freshservice, Zendesk ($49–$99/agent/mo) · Self-host (Docker)
Vaultwarden — A lightweight server that works with the official Bitwarden password manager apps. Replaces: 1Password, Bitwarden paid plans ($4–$9/user/mo) · Self-host
4
For whoever builds the tools
These do not replace a software bill. They cut your AI bill or speed up building.
Context Mode — Keeps large tool output out of Claude's context window and remembers session state across compactions. Replaces: Lowers AI usage cost · Plug into Claude
Ponytail — A skill that pushes Claude toward the smallest working code, not the biggest. Replaces: Lowers AI usage cost · Plug into Claude
Switchyard — Routes each AI API call to the cheapest model that can still handle it. Replaces: Lowers AI API cost · Builder project
pdfcn — Ready-made React components for generating clean, branded PDFs. Replaces: No SaaS line · Builder project
5
Bonus: watch the Marketplace like it's a wholesale lot
Heads up: this runs against Facebook's Terms of Service. Use it at your own discretion. Claude may decline to run it, so you may have to use an alternative model or a local AI to run it.
facebook-marketplace-mcp — An MCP server that searches Facebook Marketplace from inside Claude, using your own signed-in Chrome session. Ask it what's listed near you by model, price, radius, and how long it's been up. Replaces: the tab you keep open all day · Builder project, Mac only
Set it up once:
Terminal
git clone https://github.com/jdcodes1/facebook-marketplace-mcp cd facebook-marketplace-mcp npm install && npm run build claude mcp add facebook-marketplace -- node "$PWD/dist/index.js"
Then ask:
Prompt
Search Facebook Marketplace within [50] miles of [our zip code] for [2018-2022 half-ton trucks] under [$45,000]. Show me the ones that have been listed longest, with the asking price, mileage, and how far away they are. Flag anything priced well under what that trim brings at auction.
Three things to know before you use it: it reads your own Facebook login from Chrome, it needs macOS and Node 20 or newer, and it has no license file, so treat it as a personal tool rather than something you roll out group-wide. Automated access is also against Meta's terms, so use your own judgment about the account you sign in with.
6
Bonus: Meta's own ads connector
Meta runs an official MCP server for ad accounts. No scraping, no API keys, no third-party tool in the middle: you sign in with the Meta account that already has access to your ad accounts, and Claude can read performance from inside a conversation.
Meta Ads MCP — Official Meta connector for Ads. Ask about spend, delivery, creative performance, and catalogs across your stores' accounts. Replaces: logging into Ads Manager to answer one question · Connector, no install
In Claude Code:
Terminal
claude mcp add --transport http meta-ads https://mcp.facebook.com/ads
Then run /mcp, pick meta-ads, and authenticate in the browser. In the Claude desktop app, add it instead under Settings → Connectors → Add custom connector with that same URL.
Once it's connected:
Prompt
For each of our Meta ad accounts, show me the last 30 days by campaign: spend, results, cost per result, and frequency. Flag any campaign where frequency is climbing while results fall, and any ad set still running with a catalog or landing page problem. Rank the fixes by wasted spend.
A good pairing with Session 1: Meta reports its own conversions, GA4 reports leads. Ask Claude to put both side by side and explain any gap before you trust either number.
7
Quick tips
Keep Claude working when you walk away.
/remote-control — Type /remote-control in Claude Code to pick up your sessions from your phone. Check progress, answer its questions, and send the next prompt from anywhere.
caffeinate — Built into macOS. Ask Claude to run caffeinate in Terminal for you, and your MacBook stays awake and keeps Claude running, even with the lid closed.
Keep the conversation going
Connect with me on LinkedIn
Tell me what you found when you ran these. I'm Dustin Schuler, Marketing Director at Bud Clary Auto Group.