Why an agent on the host at all?
Because the questions that matter cannot be answered from outside. Whether a process is running from a deleted binary, which packages are installed, what is listening on localhost, whether a scheduled task changed: none of that is visible to a network scan. If you want to know the state of a server you have to be on it.