It is not necessary to provide a user and hostname for your local machine. In the command you're using you are telling scp to log into ssh on localhost, and ssh may not even be running on the loopback device. Even if it was the step is redundant.
So try
Code:
scp -r directory_here user_here@host_here:~
instead.
I added the ':~' to explicitly point it to that user's home directory. (The scp program may already do that by default.)