Veteran US Senator John McCain has died, aged 81.

US Senator John McCain, the widely admired war hero, presidential nominee and longtime Republican lawmaker has died at the age of 81.

His office says McCain died on Saturday surrounded by family at his Arizona home. He had battled brain cancer.

In 1967, his plane was shot down on a bombing mission over North Vietnam. He was severely injured and spent more than five years as a prisoner of war.

He was elected to the House of Representatives in 1982 and the Senate in 1986. A conservative on most issues, he pushed for campaign finance reform and the effort to account for those missing in Vietnam.

He ran unsuccessfully for the Republican presidential nomination in 2000, then won it in 2008. But he and running mate Sarah Palin lost to Barack Obama.