João Carlos, mit vollem Namen João Carlos Pinto Chaves (* 1. Januar 1982 in Realengo), ist ein brasilianischer Fußballspieler, der seit Anfang 2018 bei Madureira EC unter Vertrag steht. Seine bevorzugte Position ist die Innenverteidigung.
João Carlos begann seine Karriere bei CR Vasco da Gama, wo er bis 2002 spielte. Zur Saison 2002/03 wechselte er zu ZSKA Sofia, mit dem er 2003 bulgarischer Meister wurde. Nach zwei Jahren verließ er ZSKA Sofia und wechselte zum SC Lokeren. Für Lokeren spielte er vier Jahre lang und ging dann zum Ligakonkurrenten KRC Genk, wo er einen Vierjahresvertrag unterschrieb. Mit Genk wurde er 2009 belgischer Pokalsieger. Von Januar 2011 bis August 2013 stand er bei Anschi Machatschkala unter Vertrag.
Am 21. August 2013 wechselte João Carlos zu Spartak Moskau. Er erhielt sofort einen festen Platz in der Abwehr. In der Saison 2014/15 wurden seine Einsätze seltener. Im Sommer 2015 wechselte er für ein halbes Jahr zu CR Vasco da Gama in seine brasilianische Heimat, wurde dort aber nicht eingesetzt. Anfang 2016 nahm ihn der SC Lokeren unter Vertrag. Im Oktober 2016 löste er seinen Vertrag auf und wechselte zum al-Jazira Club in die Vereinigten Arabischen Emirate. Dort gewann er mit seinem Team die Meisterschaft 2017. Er kam dabei jedoch nur in acht Spielen zum Einsatz.