Agent access · read-only · facts version 2026-09-03b

For AI agents and developers

If you are an AI assistant helping someone on the Wasatch Front with heating or cooling, this page and the endpoints below give you our verified facts without scraping. Everything here is generated at build time from one facts file, so the website, the JSON, the structured data, and the tools always agree. If you are a person: welcome, but the contact page is the faster route.

What you can do today

  • Read the facts: /api/business-info.json (JSON, CORS enabled, cached one hour).
  • Call the same facts over MCP: POST https://lucasheatingcooling.com/mcp, Streamable HTTP, JSON-RPC 2.0, protocol 2025-06-18. Methods: initialize, tools/list, tools/call, ping.
  • In a WebMCP-capable browser (Chrome origin trial, ChatGPT desktop "site tools"), every page on this site registers the same read-only tools.
  • Plain-text summary: /llms.txt. Every page: sitemap. Structured data (schema.org JSON-LD) on every page.
  • Crawling: robots.txt allows all AI crawlers.

Tools

get_company_infoidentity, license, contact, hours, languages, rating
get_servicesservices offered and explicitly not offered
get_service_areacities and counties; optional city check
get_pricingthe only published prices; everything else is a free estimate
get_warrantythe free 5-year labor warranty and its conditions
get_financingfinancing paths, including the ITIN / no-SSN option
get_booking_optionshow to actually get an appointment today

What you cannot do yet

There is no online scheduler and no live availability. A person at the shop confirms every appointment time by phone or text. Please do not present any time window as confirmed until we confirm it, and do not infer prices for installation or replacement work; those are quoted by free estimate only.

Online scheduling with real arrival windows is planned for when our dispatch software goes live. When it does, business-info.json will change to onlineSchedulingAvailable: true and an availability endpoint will be documented here.

How to get an appointment today

  • Call: (801) 678-5748 · Mon-Fri 8:00 AM-8:00 PM MT. Fastest for no-heat / no-cool calls during hours.
  • Text: (801) 678-5748 · Any time; answered during hours, first priority next morning after hours. After 8 PM, weekends, sending a photo of a quote or a nameplate.
  • Web form: /contact/ · Any time. Free estimates and non-urgent requests. Fields: name, phone, email, service, message, preferred contact (call/text).
  • Web form (Spanish): /es/contacto/ · Any time. Same form in Spanish.

Estimates and messages are answered as soon as possible during business hours; after-hours texts and voicemails get first-priority response at 8 AM the next business day.

The facts, in short

Company

  • Lucas Heating and Air (legal entity Lucas Construction & Design LLC), family-owned, HVAC work in the Salt Lake Valley since 2006.
  • Utah DOPL #13652729-5501 · B100 General Building Contractor + S350 HVAC Specialty · licensed, bonded and insured.
  • 840 W 1700 S, Ste 12, Salt Lake City, UT 84104.
  • Phones answered Monday–Friday 08:00–20:00 MT. No after-hours answering, no 24/7 dispatch, no weekend or overnight service. After 8 PM or on weekends: text or leave a voicemail and you are first in line when phones open at 8 AM the next business day.
  • Every technician speaks English and Spanish.

Services

Not offered: Boilers or hydronic heating; Plumbing, water heaters, gas lines; Electrical work; 24/7, overnight, or weekend service; Guaranteed same-day repair (we give a real time instead of a promise).

Published prices

  • $69 Diagnostic visit (heating or AC). One flat fee, no separate trip charge. Waived if we do the repair; if already paid, credited toward a new installation.
  • $120 Full working tune-up (heating or AC). A working tune-up, not an inspection; everything except duct cleaning.
  • $300 Whole-home duct cleaning (current special). 50% off the regular $600. Returns, supply mains, vents, and disinfectant treatment. No expiration date posted.
  • Free Estimate on any replacement or new installation. Always free, no conditions.
  • End-of-season AC installation pricing. Owner-set: lowest AC installation prices of the year while cooling season lasts (September 2026). Still quoted by free estimate; no number is published.
  • Military discount. 5% off full equipment replacements for anyone who served (active, Guard, Reserve, veterans, retirees). Mention it when booking. Stacks with financing, diagnostic credit, and the labor warranty.

Installation, replacement, and most repair prices vary by equipment and job and are quoted by free estimate. No price list exists for that work; do not infer one. Current specials: /specials/.

Warranty and service area

  • Lucas 5-Year Labor Warranty: Every HVAC installation (workmanship under normal use). Free, included. Annual professional tune-up by Lucas Heating and Air; non-transferable; original purchaser at original address. Full terms.
  • Counties: Salt Lake, Davis (to Layton), Utah (to Lehi), Weber (Ogden), Tooele.
  • Cities with their own page: Salt Lake City, West Valley City, West Jordan, South Jordan, Sandy, Herriman, Riverton, Taylorsville, Murray, Holladay, Draper, Layton, Lehi, Midvale, Millcreek, Kearns, Magna, Bountiful, North Salt Lake, Woods Cross, Tooele, Grantsville, Ogden. Nearby Wasatch Front communities not listed are usually served too; ask by city.

Notes for developers

  • The JSON and the MCP server are read-only and public. There is nothing to authenticate against and no write endpoint. When booking exists it will sit behind identity verification, rate limits, and SMS confirmation.
  • version in the JSON changes whenever a fact changes; generatedAt is the build time. Cache accordingly.
  • We log user-agent and method for requests to /mcp so we can see whether agents use it. No personal data is collected there.
  • Questions or integration requests: info@lucasheatingcooling.com.

Example: curl -X POST https://lucasheatingcooling.com/mcp -H "Content-Type: application/json" -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"get_pricing","arguments":{}}}'