The 
(defmacro cl:multiple-value-list (expr)
  (setq cl:*multiple-values* nil)
  (let ((result (eval expr)))
    (if cl:*multiple-values*
        '*rslt*
        `(list ,result))))
The 
Examples:
(cl:multiple-value-list 1)  => (1)      ; cl:*multiple-values* => NIL
                                        ; *rslt* => [invalid]
(cl:multiple-value-list
  (+ 1 1))                  => (2)      ; cl:*multiple-values* => NIL
                                        ; *rslt* => [invalid]
(cl:multiple-value-list
  (cl:values 1 2 3))        => (1 2 3)  ; cl:*multiple-values* => T
                                        ; *rslt* => (1 2 3)