In Vim, this issue has been addressed in 234d162
commit (>=v8.0.1387).
Solution: Don't show the message with
--not-a-term
was used.
So the message is only displayed when user hasn't redirected the stdin.
Similar issue has been addressed in the recent version of Neovim (>=v0.2.2-dev) which you could use instead of Vim.
Once NVim v0.2.2 is released, you should be able to run:
$ echo foo | nvim -
without having the message.