OpenGL version is forced to 1.4, but card can support 4.6.0

Thank you!
My program is running on Linux(Box B) which has GPU card but no display device. However, this programe needs opengl 4.5 to compute something.
Windows(Box A) has screen but can’t run the code.

First, I tried MobaXterm on windows to remotely run the code on Linux, but I only got GL version 3.0 ( can’t recognize either of the video card ).
Then I tried VcXsrv, It also makes the windows to be Xserver, and the linux to be client. I also tried the default DIRECT setting, but this can’t recognize the video card and got GL version 3.0.

name of display: 10.80.2.22:0
display: 10.80.2.22:0 screen: 0
direct rendering: Yes
server glx vendor string: SGI
server glx version string: 1.4
server glx extensions:
client glx vendor string: Mesa Project and SGI
client glx version string: 1.4
client glx extensions:
GLX version: 1.4
GLX extensions:
Extended renderer info (GLX_MESA_query_renderer):
Vendor: VMware, Inc. (0xffffffff)
Device: llvmpipe (LLVM 8.0, 256 bits) (0xffffffff)
Version: 19.0.8
Accelerated: no
Video memory: 7955MB
Unified memory: no
Preferred profile: core (0x1)
Max core profile version: 3.3
Max compat profile version: 3.1
Max GLES1 profile version: 1.1
Max GLES[23] profile version: 3.0
OpenGL vendor string: VMware, Inc.
OpenGL renderer string: llvmpipe (LLVM 8.0, 256 bits)
OpenGL version string: 3.1 Mesa 19.0.8
OpenGL shading language version string: 1.40
OpenGL context flags: (none)
OpenGL extensions:
64 GLXFBConfigs:

So I then use the INDIRECT setting, I could successfully recognized the video card on windows, but got GLversion 1.4…

——————————————————————————
How can I make this code run? with GL 4.5 and Linux without screen?