It can be done:
m[\[Sigma]_] := With[{coeff = 1/Sqrt[1 - \[Sigma].\[Sigma]]},
ArrayFlatten[{{coeff, {coeff*\[Sigma]}},
{coeff*Transpose[{\[Sigma]}],
IdentityMatrix[Length[\[Sigma]]] +
(coeff - 1) 1/\[Sigma].\[Sigma]*
KroneckerProduct[\[Sigma], \[Sigma]]}}]];
m[{a, b, c}]
You have to get used to an unusual way of thinking about row and column vectors.