That means (+ . (1 2 3)) does what you want, doesn't it?
Granted, to do the equivalent of (+ @(foo)) you would have to do;
(let temp (foo)
(+ . temp))
Which is not very nice at all, so I'm not arguing against @. On the contrary.
Edit:
I used to think that . and @ would only differ in the sense that cons and splice have different list building semantics, but now I believe that they should also differ in the timing of the operation;
(+ . (foo)) -> (+ foo)
(+ . '(foo)) -> (+ quote foo)
(+ @(foo)) -> what we want, given that foo returns a list
(+ @'(foo)) -> (+ 'foo)