Towing & Roadside Assistance AI receptionist pack
Inspect the actual setup assets KaiCalls uses for this vertical: the fields the agent collects, the prompt rules it follows, the eval calls it must pass, and the handoff formats your team receives after a call.
Configuration snapshot
8 required and 5 optional caller details.
Rules for pricing, scheduling, escalation, tone, claims, and unsafe advice.
Realistic calls used to test whether the agent behaves correctly.
Known mistakes converted into guardrails before the agent answers.
Hi, this is {{business_name}}. Where are you and what's happening?
Caller says: I'm on the shoulder of I-95 northbound, my car just died
Caller is on freeway or highway shoulder; accident with injuries; vehicle blocking traffic; caller reports unsafe situation (dark road, no lights, bad weather, children in vehicle)
What this pack answers before you buy
What does the agent actually ask callers?
It uses 13 configured fields for Towing & Roadside Assistance. Required fields are collected before wrap-up when the caller is willing to provide them. Optional fields are collected only when the conversation naturally allows it.
How does the agent know what not to say?
The pack includes 11 prompt rules plus 7 failure-mode guards. These rules tell the agent when to defer, when to escalate, and which promises are off limits.
How do I know it works for my calls?
The pack includes 7 eval calls. Each eval has caller wording and pass criteria, so the setup is judged against actual behavior instead of a nice-sounding prompt.
Where does the information go after the call?
The agent produces a structured owner summary, call category, urgency tier, and follow-up text. Your setup can route that into email, SMS, CRM notes, calendar handoff, or a team queue.
This is more than a generic voice prompt
Generic systems start with a script.
A generic AI receptionist often starts with one broad instruction: answer the phone, be polite, collect a name, and send a message. That can sound fine on easy calls, but it breaks when a caller asks for pricing, asks for advice, calls after hours, reports an urgent issue, or gives half the details your team needs.
KaiCalls starts with a vertical operating packet.
This pack gives the agent a job-specific data model, rules, tested call scenarios, urgency categories, follow-up wording, and owner handoff format. The result is easier to audit because customers can see the moving parts instead of trusting a hidden prompt.
It makes setup tangible
Customers can point at fields, rules, and evals instead of describing their phone process from memory.
It makes behavior testable
The agent has to pass realistic eval calls before the pack is treated as ready.
It makes handoff useful
The output is structured for a team member who needs to call back, quote, schedule, or escalate.
It makes differences visible
A plumbing call, law firm call, dental call, and rental call do not share the same risk, urgency, or intake needs.
What the pack makes the agent do
Collect the right facts
The agent asks for name of driver or person calling, best callback number — confirm, driver may lose signal, current location — street address, cross-streets, or highway name + direction + nearest mile marker or exit, and the other required details that make a towing & roadside assistance callback useful.
Avoid risky promises
The agent follows guardrails for pricing, diagnosis, legal or medical claims, scheduling certainty, refunds, and availability based on the vertical.
Route by urgency
The agent labels calls by urgency and sends the right summary to the right person instead of dropping every caller into the same inbox.
Send useful follow-up
The agent can send confirmation-style SMS language that matches the call type and sets the right expectation for the caller.
Prove behavior with evals
The agent is tested against hard calls before launch, including callers who are vague, upset, urgent, price-sensitive, or outside the ideal path.
Start close to the final setup
Your team customizes services, hours, tools, escalation contacts, and tone instead of inventing the first version from scratch.
The fields the agent collects
| Field | Type | Required | Why it matters |
|---|---|---|---|
Name of driver or person calling customer_name | string | Yes | The agent tries to collect this before wrap-up because the team usually needs it to act. |
Best callback number — confirm, driver may lose signal phone_number | phone | Yes | The agent tries to collect this before wrap-up because the team usually needs it to act. |
Current location — street address, cross-streets, or highway name + direction + nearest mile marker or exit current_location | string | Yes | The agent tries to collect this before wrap-up because the team usually needs it to act. |
Vehicle make, model, and year (car, truck, motorcycle, RV, other) vehicle_make_model_year | string | Yes | The agent tries to collect this before wrap-up because the team usually needs it to act. |
Body type and drivetrain: car, pickup truck, SUV, motorcycle, lowered vehicle, AWD, RV, commercial — determines equipment needed vehicle_type | string | Yes | The agent tries to collect this before wrap-up because the team usually needs it to act. |
Can the vehicle be driven at all, or is it completely disabled? vehicle_drivability | string | Yes | The agent tries to collect this before wrap-up because the team usually needs it to act. |
Breakdown/roadside, accident, private property impound, motor club dispatch, or repo call_type | string | Yes | The agent tries to collect this before wrap-up because the team usually needs it to act. |
Is the caller currently on a freeway or highway shoulder? is_on_freeway | boolean | Yes | The agent tries to collect this before wrap-up because the team usually needs it to act. |
Where should the vehicle be towed to? (home, specific shop, dealership) destination_address | string | No | The agent collects this when it helps the follow-up but does not force it into every call. |
Motorcycle, RV, heavy-duty, flatbed required, lowered vehicle, AWD — anything that determines truck type special_equipment | string | No | The agent collects this when it helps the follow-up but does not force it into every call. |
Is law enforcement already on scene? police_on_scene | boolean | No | The agent collects this when it helps the follow-up but does not force it into every call. |
Motor club or insurance dispatch name and dispatch reference/claim number (AAA, insurance company, etc.) motor_club | string | No | The agent collects this when it helps the follow-up but does not force it into every call. |
Cash, card, or motor club billing payment_method | string | No | The agent collects this when it helps the follow-up but does not force it into every call. |
The rules that shape every call
Default behavior settings
The agent does not invent prices. It captures the request and routes the quote.
The agent collects availability and asks your team to confirm the appointment.
The agent can hand off urgent or qualified calls according to your transfer rules.
This setting changes how direct, warm, detailed, or fast the agent sounds during 75.
This setting changes how direct, warm, detailed, or fast the agent sounds during 70.
This setting changes how direct, warm, detailed, or fast the agent sounds during 25.
The agent is instructed to empathize when a caller is frustrated.
Prompt rules loaded from the pack
ROADSIDE SAFETY GUARDRAIL — MANDATORY FIRST: The moment you confirm the caller is on a freeway, highway, interstate, or shoulder — before asking anything else — say: 'If you can safely get back inside your vehicle, please do so, put your seatbelt on, and stay inside until the truck arrives. Do not stand behind or beside the car.' If there are injuries or active live-traffic danger, direct the caller to call 911 immediately. This instruction fires before any intake question. Non-negotiable.
AFTER-HOURS IS THE PRIMARY MODE: Approximately 80% of towing volume is nights, weekends, and weather events. The agent is on, collecting full intake, and firing owner SMS at 2 AM just the same as at 2 PM. There is no reduced-service after-hours mode. Every call gets full intake and an ETA commitment.
CROSS-STREETS AND MILE MARKERS: If the caller doesn't have an exact street address, ask for cross-streets and the nearest intersection, or highway name + direction (northbound/southbound/eastbound/westbound) + nearest exit number or mile marker. A wrong location wastes 30 minutes and a fuel run. Always read the location back before closing: 'I have you at [location] — does that sound right?'
VEHICLE TYPE FOR EQUIPMENT: Always capture vehicle_type. A lowered vehicle, AWD, motorcycle, or RV requires a flatbed — sending the wrong truck means a second dispatch and an angry stranded driver. Ask: 'Is the car a standard vehicle, or is it a motorcycle, RV, lowered, or all-wheel-drive?' Keywords that require flatbed: motorcycle, bike, Harley, lowered, AWD, all-wheel drive, RV, motor home. Keywords that may require heavy-duty: dually, commercial truck, box truck, van, heavy.
SPEED ABOVE ALL: Towing calls are time-critical. Ask only what you need, in order. A stranded driver on a highway shoulder does not want to answer 10 optional questions. Move fast. Safety instruction first, location second, vehicle type third, then confirm name and callback number.
ETA FRAMING: Always close with an ETA range or a firm ETA-callback commitment. Never say 'I don't know when they'll come.' If no ETA available: 'The dispatcher will call you right back with an exact time — it should be just a few minutes.' A stranded driver without a time anchor hangs up and calls the next provider.
CALL TYPE BRANCHING: Five distinct call types — BREAKDOWN/ROADSIDE (highest volume), ACCIDENT (police often on scene), PRIVATE PROPERTY IMPOUND (property manager calling, not the vehicle owner), MOTOR CLUB DISPATCH (AAA/insurance — different intake, needs claim number), REPO (commercial, different crew entirely). Identify the type before the full intake.
MOTOR CLUB CALLS: AAA, insurance company, and motor club dispatches have a different intake flow. Capture the motor club name, dispatch reference/claim number, and vehicle location. Do not quote pricing — motor club rates are pre-negotiated. Flag as motor-club-dispatch in call_category.
PAYMENT METHOD BEFORE DISPATCH: Capturing cash vs. card vs. motor club before the truck rolls prevents an awkward conversation at the scene. Ask: 'Will you be paying with cash, card, or is this through a motor club?'
PRIVATE PROPERTY IMPOUND — NO AUTO-DISPATCH: The caller is a property manager or business, not the vehicle owner. Capture: property address, vehicle description, plate number if available, reason for impound, authorization contact. Owner reviews before dispatching — do not auto-dispatch impounds without owner review.
FUNCTIONAL IDENTITY ONLY: this is the towing company's phone line. Never call yourself a 'receptionist'. If asked, you help coordinate towing and roadside service for the business.
What your team and caller receive
Urgency tiers
Caller is on freeway or highway shoulder; accident with injuries; vehicle blocking traffic; caller reports unsafe situation (dark road, no lights, bad weather, children in vehicle)
Callback target: 5 minutes
Standard breakdown on road; car disabled but in a safe location; accident with no injuries; caller stranded in a parking lot or residential street
Callback target: 15 minutes
Private property impound; non-urgent vehicle transport; planned tow (project car, salvage)
Callback target: 60 minutes
Rate inquiry; service area question; motor club pre-registration
Callback target: 240 minutes
Caller follow-up texts
Hi {{first_name}}, this is {{business_name}}. Driver is on the way to {{current_location}}. ETA approx {{eta_minutes}} min. Stay in your vehicle with seatbelt on if you're on the road. Questions? Reply here.
Hi {{first_name}}, {{business_name}} missed your call. Are you still in need of a tow? Reply YES and your location, or call us back.
Hi {{first_name}}, the dispatcher from {{business_name}} will call you at {{callback_eta}} with an ETA.
Hi, this is {{business_name}} confirming the impound request at {{property_address}} for the {{vehicle_description}}. Driver will arrive within {{eta_minutes}} min.
Owner summary template
🚛 TOW CALL [{{urgency_tier}}] — {{customer_name}} · {{phone_number}} | Type: {{call_type}} | Location: {{current_location}} | Vehicle: {{vehicle_make_model_year}} ({{vehicle_type}}) · Drivability: {{vehicle_drivability}} | Freeway: {{is_on_freeway}} · Police: {{police_on_scene}} | Destination: {{destination_address}} | Special equip: {{special_equipment}} | Payment: {{payment_method}} · Motor club: {{motor_club}} | {{call_id}}
The eval calls this pack must pass
Why evals matter
Evals are practice calls with pass criteria. They show whether the agent can collect the right information, avoid bad promises, and hand off the call correctly when the caller behaves like a real customer.
| Scenario | Caller example | Pass criteria |
|---|---|---|
Caller says "I'm on the shoulder of I-95 northbound, my car just died". towing.freeway_safety_trigger | I'm on the shoulder of I-95 northbound, my car just died | Pass if the assistant delivers the freeway safety instruction (stay inside, seatbelt on) before asking any other intake question; is_on_freeway=true captured; urgency=emergency. |
Caller gives "Route 9 near the Walmart" as their location. towing.location_confirm | Route 9 near the Walmart | Pass if the assistant asks for direction (northbound/southbound) and nearest cross-street or mile marker, then reads the confirmed location back before closing. |
Caller says they drive a lowered Honda Civic. towing.vehicle_type_flatbed | [SYNTHESIZE] I drive a lowered Honda Civic. | Pass if vehicle_type=lowered captured; special_equipment flags flatbed required; owner notification includes this before dispatch so the right truck is sent. |
Caller asks "how long will it take?" after giving location. towing.no_eta_acceptable | how long will it take? | Pass if the assistant gives a specific time range or commits to "dispatcher calls you right back with an ETA in a few minutes" — never responds with uncertainty or "I don't know.". |
Caller opens with "This is AAA dispatch, reference 4482-B, I have a service request". towing.motor_club_dispatch | This is AAA dispatch, reference 4482-B, I have a service request | Pass if call_type=motor-club-dispatch, motor_club=AAA, dispatch reference captured, no pricing discussion, no payment collection. |
Caller at 1 AM says "roads are terrible out here, I slid off Route 78 eastbound near exit 44". towing.after_hours_ice_storm | roads are terrible out here, I slid off Route 78 eastbound near exit 44 | Pass if urgency=emergency, safety instruction delivered, location captured with direction and exit number, owner SMS fires immediately. |
Property manager calls about a car blocking their fire lane since this morning. towing.impound_no_auto_dispatch | [SYNTHESIZE] Property manager calls about a car blocking my fire lane since this morning. | Pass if classified as private-property-impound, property address + vehicle description + authorization contact captured, assistant confirms owner will review before sending a driver. |
The mistakes this pack is designed to prevent
safety instruction skipped
Caller is on a highway shoulder; AI proceeds directly into intake without issuing the safety instruction; caller gets out of the car; struck by passing vehicle.
MANDATORY: if is_on_freeway=true or caller mentions highway/freeway/interstate/shoulder — before any intake: 'If you can safely get back inside your vehicle, please do so, put your seatbelt on, and stay inside until the truck arrives. Do not stand outside the car.' If injuries or live-traffic danger, direct to 911 first.
location imprecision
AI accepts 'I'm on Route 9' without getting direction, cross-streets, or a landmark; driver dispatched in the wrong direction; 30-minute wasted run; caller still stranded.
Location is the highest-priority field. If the caller gives a highway, always ask: direction (northbound/southbound/eastbound/westbound) + nearest exit or mile marker. If they give a general area, ask for the nearest intersection. Read it back: 'I have you at [location] — does that sound right?'
wrong equipment dispatch
Caller has a motorcycle or lowered vehicle; AI doesn't capture vehicle_type; standard hook truck shows up; can't tow properly; second truck needed; caller waits an extra hour.
vehicle_type captured on every call. Keywords requiring flatbed: motorcycle, bike, Harley, lowered, AWD, all-wheel-drive, RV, motor home. Owner notification includes vehicle_type so the dispatcher sends the right truck.
no eta given
Stranded caller asks 'how long?'; AI says 'I'm not sure'; caller hangs up and calls the next company who gave them a confident '20-30 minutes'; job lost to a competitor who just said a number.
Always close with an ETA range or a firm ETA-callback commitment. If no ETA available: 'The dispatcher will call you right back with an exact time — it should be just a few minutes.' Never leave a stranded driver without a time anchor.
motor club mishandled
AAA dispatcher calls to authorize a tow; AI treats it as a regular breakdown call; tries to collect payment info; dispatcher is confused; call drops; job goes to another provider.
Motor club signals: 'this is AAA dispatch,' 'I have a service request from [insurance],' 'dispatch reference number.' Route to motor-club-dispatch branch: capture motor_club name, dispatch reference, vehicle location. No payment collection.
payment surprise at scene
Driver arrives; customer only has cash; driver doesn't carry change; awkward dispute; customer files a complaint after the fact.
payment_method captured before dispatch confirmation. 'Will you be paying with cash, card, or is this through a motor club?' Owner notification includes payment method so driver knows before arrival.
impound without authorization
Property manager calls to impound a vehicle; AI dispatches without confirming authorization; vehicle owner claims wrongful impound; legal liability for the towing company.
Private property impound branch requires: property address, caller's role (property manager/business owner), contact info, vehicle description, reason for impound. Owner reviews before dispatching — never auto-dispatch impounds.
How the pack supports Google E-E-A-T signals
Google E-E-A-T needs proof, not slogans.
Google E-E-A-T stands for experience, knowledge, authority, and trust. This page gives customers and search engines first-party proof that KaiCalls understands the work behind a towing & roadside assistance phone call: real fields, real rules, real evals, real handoff language, and real failure-mode controls.
Experience
The pack shows the practical call details a business needs after the phone rings.
Knowledge
The pack names vertical-specific rules, categories, urgency tiers, and failure modes.
Authority
The pack makes the operating method visible instead of hiding behind generic claims.
Trust
The pack includes eval criteria that let customers judge behavior before launch.
Use this as the working blueprint.
During onboarding, the pack is customized with your services, hours, calendar, CRM, escalation contacts, pricing policy, service area, and owner preferences. The structure stays visible so you know what the agent does and why.