Calculating a minimum bounding box for a set of 3-space coordinates / spheres
Assuming you're not trying to rotate the molecule to minimize some parameter (volume? diagonal?) of the bounding box, take a set of positions and radii:
pos = RandomReal[{0, 10}, {10, 3}];
rad = RandomReal[{1, 2}, {10}];
Add and subtract a radius from each position and dimension, then take the bounds:
box = {Min[#], Max[#]}& /@ Transpose[Join @@ MapThread[{#1 + #2, #1 - #2}&, {pos, rad}]];
Here it is:
Graphics3D[{Gray, Sphere[pos, rad]},
PlotRange -> box, PlotRangePadding -> None,
Lighting -> "Neutral"]