How it works
Does the grunt work.
Hands you the decision.
No agent making calls in the dark — focused workflows that stop where judgment matters.
Anatomy of a module
Every job is one small, deterministic workflow with a human gate built in.
Trigger
Intake form
Bid uploaded
Parse
Read bid
PDF / Excel → lines
Evaluate
Compare
vs. takeoff
Rule
Flag over-billing
Carry uncertainty
Review
Human approves
The gate
Output
Email report
PDF to inbox
Illustrative workflow · one MemoryWell module
Input → output
What you send, what you get.
Project
Trade
Bid file
Takeoff source of truth
Illustrative input
BidAccurate — Lot 14: 1 line to review
to you · just now
Checked concrete-bid.pdf against your takeoff. Three lines match. One runs over — take a look before you sign.
BidAccurate-Lot14.pdf
Full report · accept / review / reject per line
Illustrative output
The private box
n8n orchestrates. Your data stays put.
Each builder runs their own instance. n8n routes and schedules; portable services do the math. Nothing is pooled, sold, or used to train someone else’s model.
Orchestrator
n8n workflows
route, schedule, human gate
calls over HTTP ↓
Deterministic Python services
BidAccurate
Materials map
Compare engine
Report render
n8n orchestrates — it isn’t the engine. The math lives in portable services, so the logic is yours, not locked in a tool.
Illustrative architecture
The rules it lives by
Evaluate, don’t measure
Reads authoritative files. Won’t guess a dimension off a scan.
Never fabricate a number
If the data isn’t there, it says so.
Carry uncertainty
When something’s unclear, it flags it for review.
Draft — never send alone
Every outbound action waits for a human.
These aren’t manners — they’re the liability shield. A tool that knows the limits of what AI should decide is one you can put near your money.