This is essentially a bug in tcsh. Consider running
<verbatim>
echo 'echo test' | tcsh -l > test.dmp 2>&1
</verbatim>

That should start a non-interactive shell, since neither stdin, stdout nor stderr is a tty. As a result, all start up scripts and the shell itself should be silent.
tcsh doesn't do that and the output is confusing fossil. It works with sftp and scp since they use the subsystem mechanism from ssh and don't actually get a shell. The message about job control should be suppressed for the !isatty case too/