Give the starter a couple of firm strikes with a dead blow hammer or rubber mallet. If the starter now works order a replacement before if dies completely. Lot a heat in the area from the exhaust that can degrade a starter over time. I suspect this is what the dealer did to get you off the lot.
If it doesn't work after a couple of tries measure the volts at the battery post and then on the terminals checking for a difference. If you get a difference clean the terminals. Also check the heavy terminal on the starter and the engine block ground cable. You want the same volts as at the battery terminals.
If everything checks out then there's a problem with the start circuit that is a little more difficult to troubleshoot via a forum thread.