The bodies of three babies have been recovered and around 100 people are missing after a migrant boat sank off the coast of Libya this morning.

About 120 people were aboard the inflatable craft when it ran into trouble, according to survivors brought ashore in Al-Hmidiya, east of the capital Tripoli. 

Sixteen people were rescued, while the missing included two babies and three children under the age of 12. 

Survivors told AFP the boat sank a few hours after a pre-dawn departure from Garaboulli, east of Tripoli, following an explosion on board.

The motor then caught fire and the vessel began taking on water, they said.

The passengers included a number of Moroccan families and Yemenis.

Libya's coastguard said fishermen had spotted the vessel in difficulty and contacted the navy, which has been involved in the rescue of hundreds of migrants in recent days. 

On 18 June, five bodies were recovered and more than 100 people were saved after they were shipwrecked off the Libyan coast. 

Nearly 1,000 migrants were rescued on 24 June from multiple inflatable boats that had run into trouble during perilous bids to cross the Mediterranean to Europe.

The latest shipwreck came after European Union leaders reached a deal aimed at sharing the responsibility for hosting migrants more fairly across the EU.

The pact reached overnight includes a proposal to set up "disembarkation platforms" outside the EU as a way to reduce the number of people taking the perilous sea journey.