I would check your cables, from battery to solenoid, then solenoid to starter. I would also check your ground cable, it's connection, and condition of the cable at the connectors. All connections need to be clean, and tight. Same at your battery.
If all of this looks good, try jumping across your solenoid and see how starter turns. If she turns the way she should, then you either have a solenoid that is going out (contacts dirty and or damaged), or you don't have enough current going to the coil on the solenoid to pull it in properly. That would lead you to checking those circuits.
I try not to talk about electrical things, but sometimes I break my own rules. Hopefully someone more knowledgeable will contibute shortly.
2002 Sprint St, RaceTech Springs and GVE, Reworked Shock, Raised Rearsets!
Zero Gravity DB Windscreen, CF Tankpad, 18T Front Sprocket, Fuel Pressure Regulator Mod
Quick Turn Throttle Mod, Michelin PR3, CF TOR, Corbin Seat, Luggage Rack