Brazilian police fired tear gas to break up two groups of protests that merged into one, in the capital Brasilia on Tuesday evening.

Hundreds of indigenous demonstrators had gathered at the Congress building and scaled the roof, to voice their concerns at land rights and legislation that threatens to shrink the size of some indigenous reserves.

They later joined other anti-World Cup protesters who gathered in Brasilia's government square and began marching towards the city's stadium that will host tournament matches. Riot police fired tear gas into the crowds, which retaliated by throwing gas canisters and stones.

Some demonstrators were armed with bows and arrows, firing arrows at police.

Protesters also blocked roads around the government plaza - the location of the congress, presidential palace and Supreme Court.

Brazil has seen regular protests in the weeks leading up to next month's World Cup. Many Brazilians are angry at the $11 billion (8.01 billion euros) that the government has spent to host the tournament, saying the money is desperately needed elsewhere to fix public services.

"Before organizing the World Cup, Brazil should have thought more about health, education and housing," said Neguinho Truka, a leader of the Truka people in the northern state of Pernambuco.

The recent protests have been smaller than those seen last year during the 2013 Confederations Cup.

jr/av (AP, AFP)