The 49-year-old salmon farm worker denied the charges. He said the claims were fabricated.
He was convicted following a jury trial in May.
The offences included sexual assault, four counts of indecent assault, and three
offences of lewd and indecent behaviour towards a child.
MacLachan was convicted of raping a young teenage girl.
He molested a girl under 16 years and a girl of primary school age.
He also acted indecently with a boy under 16 years and a much younger boy.
Four other charges were dropped.
MacLachan was placed on the sex offenders register.
The offences were reported to Police Scotland in September 2015.
Detective Inspector Donald Macdonald of Police Scotland said: "James MacLachlan subjected
his victims to horrendous abuse over a number of years.
“The strength and character of the witnesses bringing these utterly depraved acts
to the attention of Police Scotland is commendable and it is thanks to them that
he must now pay for his crimes.
"Any report of sexual abuse will be treated seriously and sensitively, no matter
when the incident happened."
Western Isles Chief Inspector Gordon MacLeod added: "We welcome the conviction and
sentencing of James MacLachlan today and reiterate that any report of abuse, no matter
when or where the incident happened, will be taken seriously and thoroughly investigated
"There is no place in our communities for this behaviour and we will continue to
do all we can to tackle sexual abuse."
A South Uist sex offender who preyed on boys and girls over a 16 year period has
been jailed for ten years.
James MacLachan was sentenced at Glasgow High Court on Friday.
The offences took place between the late eighties and 2005 when he groomed his victims.