A policy-driven system and method are provided for querying devices. The method comprises: accepting a query, from a client, directed to a device; selecting a query policy; and, sending the query to an agent using a method responsive to the selected query policy. The queries may concern a device communication port information, network information, communication checks (Ping), capability requests, or status updates. The methods may include spooler API, simple network management protocol (SNMP), printer database, proprietary protocol, Windows 2K directory service, service location protocol (SLP), and HTTP embedded device web page queries. The method further comprises: receiving a query result from the agent; and, sending the query result to the client using a method responsive to the selected query policy. In some aspects, an additional step merges a plurality of query results in response to the selected query policy. Then, the merged query result is sent to the client.