The materials preview is not, by default, an accurate read of your lighting because it uses an HDRI (high dynamic range image) to create the reflections you are seeing in the preview.
To fix this, open the Viewport Shading drop-down menu and (with Material Preview selected) you will see the two checkboxes for Scene Lights and Scene World. In this window, you can check Scene Lights to reflect YOUR scene’s lighting and Scene World to switch from the default HDRI to YOUR scene’s world (which I’m assuming doesn’t contain an HDRI).
The angle you are looking at, combined with mostly flat surfaces, without an HDRI, are what’s causing the flatness.
To fix this, start by beveling the edges of those sharp corners (it will add realism too). I would suggest adding a Bevel modifier to accomplish this.
Second, look into adding an HDRI so that the flat surfaces have something more nuanced to reflect.
Third, just make sure that your material’s Roughness value is low (.01 to .4ish) as well.
Fourth, in your Eevee settings (unless you are rendering in Cycles), make sure Screen Space Reflections is checked.
Hope this helps.