The rally was organised by hardline Islamic group the Islamic Defenders Front (FPI) but was attended by members of other Muslim communities under heavy security.
The protest started at noon, after Friday's mass prayer, and continued until late afternoon despite heavy rains, according to an AFP photographer.
Demonstrators brought posters showing their solidarity with the Uighurs, with placards reading: "China should remove discrimination", "Government of China is zionist", and "Save Muslim Uighurs".
Protestors also gathered on Friday in front of the Chinese consulate in the second biggest Indonesian city Surabaya, according to local media.
China has faced international condemnation for rounding up an estimated one million Uighurs and other mostly Muslim ethnic minorities in internment camps in the northwestern region of Xinjiang.
Beijing initially denied the existence of the Xinjiang camps, but now says they are "vocational training centres" necessary to combat terrorism.
Few Muslim countries have openly criticised China, as Beijing is a key political and economic partner for a number of them, especially in Southeast Asia.
The Indonesian president's chief of staff Moeldoko - who goes by one name - said this week that the government will not intervene in the way China was ruling its country.
But increasingly high profile figures are speaking out.
Arsenal midfielder Mesut Ozil, a German of Turkish origin, and New Zealand rugby superstar Sonny Bill criticised China's actions and the Muslim community's silence. Ozil has since come under a barrage of attacks from Beijing.
Follow us on Twitter and Instagram to stay connected