Could be sprag, kickback device, starter, solenoid or start switch. Even a low battery can cause the solenoid to chatter. You could troubleshoot this by using jumper leads off a car battery directly to the starter, (remember it's positive earth) if it works ok, look at the electrical system, if you still get the bad noise, look at the starter first because if you have to go into the primary, that's a much bigger job.