Unfortunately, it's not possible to enable / disable AMT from within the client OS. You could always detect the presence of AMT using the Win32_PnpEntity class though, if you know the DeviceID(s) that you're looking for. This doesn't necessarily require you to have the HECI driver installed either, as you're simply pulling raw device information.
The current power state would need to be pulled using AMT interfaces, unless the machine was powered on, of course. I would personally recommend looking into the Intel AMT Developer Toolkit, which provides a very powerful, but easy to use .NET interface into AMT. Because it is built on .NET, you can also import the assembly into PowerShell, and use it from there. I've written a handful of articles on how to do this.
As noted by David, The SCCM will collect hardware information on if the client is AMT capable; however, it will have a dependency on the ME / Heci Driver being installed.
You may also want to take a look at the AMT Scan utility. You can run it as a SCCM Advertisement and it will record the AMT information in the registry. From there you will need to programmatically extract the information for some type of report.
In regards to your example...
An example would be, for a Lenovo M58p in an SCCM collection, use WMI to determine if AMT is turned off in the BIOS, and if it is turned off, push out an advertisement to turn it on, and then initiate provisioning.
... it is a little bit of cart before the horse. The AMT client needs to be provisioned before you can power on the AMT client or programically query power state.
You could run the following SCCM AMT Site Server Operation Script via and advertisement on your collection. Just create an advertisement that runs the following command...
cscript sccmamtmgnt.vbs /s:YourSccmSiteFQDN /c:SiteCode /a:discovery
... It will initiate a network interrogation on the desired client to depend if it vPro capable. If all goes well, it will determine that an AMT status of the client as "Not Provisioned". From there you can created a collection where AMTStatus=3 and set the policy to initiate "Automatic provisioning".