Parenting physics bodies in others doesn't work (in 3d, so i think this applies to 2d).
the scene tree is distinct from the physics engine's set of objects and scene hierarchy is irrelevant to physics servers.
you can only model physical relations between rigid bodies physics objects via joints.
static bodies are not designed to move in a physics engine. they provide collision to other physics bodies (kinematics/rigid bodies) but are immune to any action upon them in the physics model. more over the physics engine doesn't expect them to move (hence the name), so moving them around may not be very 'efficient'
kinematic bodies are also different from rigid bodies (ie the physics engine objects fully modeled with pure physics). They can detect collisions and rigid bodies certainly react to them and the kinematic bodies will react to physics you use specific calls (move and slide) but only under programmatic command (scripting). If left to themselves they are inert like a static body.
in short, if you parent a kinematic body to another, it won't move or may move really weird. You will have to program the movement of each element and very likely cannot organize them hierarchically in a scene tree.
joints won't help because they effect rigid bodies only (but you can use a kinematic to drag a rigid body around if you are careful)
you can place several physics object under another node to collect them into a helpful assembly for editing activities like placement, scripting etc. however, don't expect moving the node during runtime to effect kinematics as they would plain geometric models.
At least from 3d land, godot does not update Bullet physics objects from transfroms applied through the scene tree; only scripted manipulation works (ie you change a property on a physics object directly)