There are database ways of getting most of the information you need. I'd rather stick to one tool if I can. If you're administering your servers from a central management SQL Server you should be able to make connections using linked servers. Once your linked servers are set up properly, querying data from your remotes machines is fairly easy. Your list of servers will be found in the sysservers view/table. Cursor through them and make use of the SERVERPROPERTY function, and the sys.dm_os_sys_info and sysconfigures views using dynamic sql . This will obtain most of the information you need. You can insert this into a table in a management database and SELECT as needed. The only real difficulty I had was retrieving some of this information for SQL Server 2000, but routinely populating a user table locally on these servers with xp_msver got me that information. I grant that using SYSTEMINFO is an easy way of getting the information into usable spreadsheet format, but I still think taking the time to create your queries is a more versatile option. Just having the linked servers allows you to pull so much other data too. I pull job info, login info, database property info, user info, etc.