The 15-year-old student pulled out a handgun inside a classroom at the bilingual Colegio Americano del Noreste and began shooting, the officials said, critically wounding three of his victims before turning the pistol on himself.
Hours after the shootings, Nuevo Leon state governor Jaime Rodriguez named the gunman as Federico Guevara and said he had died. His motive was being investigated, Rodriguez told a news conference.
Security camera footage showed the teenager quickly and calmly firing what appeared to be seven shots at seated students and a female teacher, some at point-blank range. At least two victims immediately slumped over after being hit.
Looking dazed, Guevara aimed at his own temple and pulled the trigger twice, but he had apparently ran out of bullets. He walked back to where he had been sitting, reloaded, and shot himself in the chin. He keeled over.
Students who had been cowering beneath desks and chairs then fled, stepping over the shooter to reach the door.
"He had depression and was being treated," Aldo Fasci, security spokesman for Nuevo Leon, told local television. "We have no motive yet."
Ambulances, police and soldiers raced to the school, which offers pre-school, elementary and high school classes on the southern outskirts of Monterrey, Mexico's third largest city.
Distraught parents gathered outside, where they were watched over by troops in camouflage carrying rifles and backed up by an armored car. Forensic technicians in white suits checked the scene.
While Mexico has endured a decade-long drug war that has claimed tens of thousands of victims, the country has not seen the type of school shootings that have occurred in the United States.
The nationalities and identities of the victims were not immediately divulged by authorities.
Fasci said one 15-year-old student was shot in the arm, and two 14-year-olds were shot. He said the shooter had brought a .22 caliber firearm from home.
Photos widely shared on social media showed three people lying on a classroom floor with pools of blood around their heads. Reuters was not able to confirm the authenticity of those images.
Mexican President Enrique Pena Nieto lamented the tragedy.
"As a father and as president, what happened this morning at a school in Monterrey hurts me very much," he wrote on Twitter.
Banner and thumbnail credit: Reuters, Daniel Becerril