Lebanese security forces fired tear gas and water canons at protesters near the US Embassy in Lebanon on Sunday during a demonstration against President Donald Trump's decision to recognise Jerusalem as the capital of Israel.

Protesters, some of them waving Palestinian flags, set fires in the street and threw projectiles towards security forces that had barricaded the main road to the US Embassy in the Awkar area north of Beirut.

Security personnel used force to disperse most of the protesters and detained some, witnesses said.

Addressing the protesters, the head of the Lebanese Communist Party Hanna Gharib declared the United States "the enemy of Palestine" and the US Embassy "a symbol of imperialist aggression" that must be closed.

Protesters burned US and Israeli flags.

"We came to say to the US Embassy that it is an embassy of aggression and that Jerusalem is Arab and will stay Arab," said Ahmad Mustafa, an official in the leftist Democratic Front for the Liberation of Palestine, who was among the demonstrators.

Trump's recognition of Jerusalem has infuriated the Arab world and upset Western allies, who say it is a blow to peace efforts and risks causing further unrest in the Middle East.

Late on Saturday Arab foreign ministers meeting in Cairo urged the United States to abandon its decision and said the move would spur violence throughout the region.

Israel says that all of Jerusalem is its capital. Palestinians want East Jerusalem as the capital of a future independent state.

Most countries consider East Jerusalem, which Israel annexed after capturing it in a 1967 war, to be occupied territory and say the status of the city should be left to be decided at future Israeli-Palestinian talks.

The government of Lebanon, which hosts about 450,000 Palestinian refugees, has condemned Trump's decision. Lebanese President Michel Aoun last week called the move a threat to regional stability.

The powerful Iran-backed Lebanese Shi'ite group Hezbollah on Thursday said it backed calls for a new Palestinian uprising against Israel in response to the US decision.

Hezbollah leader Sayyed Hassan Nasrallah also called for a protest against the decision in the Hezbollah-controlled southern suburbs of Beirut on Monday.