Two protesters and a policeman were killed in the eastern Yemeni city of Marib after clashes broke out at a rally to demand jobs for tribesmen.
Dozens of residents of Marib had gathered outside the local government offices to demand better jobs and better representation for Yemen's tribes in the state and military.
Police opened fire after the demonstrators refused to disperse, killing two and wounding three others, a security source said.
A policeman was killed and four others wounded when an armed protester returned fire, the source said.
Yemen, which faces a cholera outbreak and the threat of famine, is gripped by a war between the government and a rebel alliance that has torn the country apart.
The World Health Organisation estimates more than 8,600 people have been killed and 58,600 injured since March 2015 when a Saudi-led Arab coalition intervened in the war.
The rebels control the capital Sanaa and Yemen's northern highlands, while the city of Marib is held by the Saudi-backed government.
Tribes have joined the fighting on both sides in Yemen, which has a traditionally tribal society and where gun ownership is widespread.