First of all:
Is casting shadows enabled on your MeshInstance? You could also try to set shadow to "Both" in case your mesh normals are flipped.
Does your mesh actually cast shadows on other meshes?
How do you generate the mesh? With SurfaceTool? Did you try to call
generate_normals() and, maybe
generate_tangents() (the latter requires set UVs)? Although I also get shadows when I generate a mesh without calling these.
Finally, you might also try to set UVs on your mesh vertices, if you didn't already. You could use x/z for a start.