Any Jenkins job should be able to determine how it was started. Among the possible methods is (1) directly started by a user, (2), started by another job (chaining jobs), and (3) started by a job management plugin like the multijob plugin.
Presently, the only way I've found to determine this information is to parse the log file and inspect the line starting "started by". This does not seem to be a proper method (though it works, thus far, for me). Finding the correct log file is a tricky process.
By a proper method, I mean one which is documented and which a user can rely on to continue through future updates. It should not require filesystem actions (like "ls -r").