The contract was signed Thursday, giving the Redskins a new potential No. 3 quarterback to replace Rex Grossman. Grossman is a free agent after playing behind Robert Griffin III and Kirk Cousins the past two seasons.
McCoy could also compete for the No. 2 spot should the Redskins decide to trade Cousins.
A third-round draft pick in 2010 by the Cleveland Browns, McCoy started 21 games his first two seasons but has since been a backup. He played last year for San Francisco, appearing in four games and throwing one pass.