The 27-year-old Republic of Ireland international has made a total of 98 appearances for the Tigers since joining from Sunderland in 2008.
"I'm delighted to sign a new deal," McShane told the club's official website. "Last season was such a great season and then I got offered the new contract.
"I couldn't wait to come in and get it signed and now I can just get on with looking forward to the new season."
Hull gained promotion to the top flight during the last campaign after suffering relegation in 2010.