Today's Chronicle of Philanthropy reports that John McCain gave 27% of his income to charity in 2006! "The senator’s campaign also said that Mr. McCain has donated to charity a total of $450,000 since 1991— money he received from increases in his Senate salary — 'because he opposed the Congressional pay increase at that time and pledged not to accept the pay raises.'"
I'm no Republican, but... wow! That being said, it probably helps that his wife is an heiress to a beer distribution company. She has a reported wealth of $100 million, and she files a separate return.