Is there a way to find all actions an object is "involved" with?
An object can have one active action, this is the one that is shown in the action editor. All other actions that affect an object can be found in the objects NLA data.

import bpy

for obj in bpy.context.scene.objects:
    ad = obj.animation_data
    if ad:
        if ad.action:
            print(obj.name,'uses',ad.action.name)
        for t in ad.nla_tracks:
            for s in t.strips:
                print(obj.name,'uses',s.action.name)