Answer
Person A is the knight, person B is the spy, and person C is the knave.
Work Step by Step
Person A says "I am the knight," B says "A is telling the truth," and C says "I am the spy."
Person A can be the knight. In this case, person B's statement is true, so B can be the spy. C's statement is thus a lie, so she can be the knave and the system works.
If person A is the spy, she chooses to lie with her statement. B's statement is also a lie, so B must be the knave. However, C claims to be the spy but must be the knight, who doesn't lie. Therefore, person A cannot be the spy.
If person A is the knave, her statement is a lie, as necessary. B is also lying, so she must be a spy. However, C is also lying to say she is a spy because she must be a knight. Knights don't lie, so person A cannot be the knave.