Well it depends on what instance you use – that's the whole point of the type class!
class MonadState s m where
get :: m s
In case of simply State
, that's the monad you're in:
instance MonadState String (State String) where
get :: State String String
...which is short for
instance MonadState String (StateT String Identity) where
get :: (StateT String Identity) String
OTOH, it could also be
instance MonadState Int (StateT Int IO) where
get :: StateT Int IO Int