There are two parts to 'supporting' SRGS: 1) is to parse the received SRGS grammar into the form that the speech recognizer will use to 2) apply the SRGS grammar to the speech data, as an integral part of the speech recognition processing. With specific regard to your question, yes, the underlying recognizer must support parsing and application of the SRGS grammar to the received speech data. It must also handle any SRGS grammar related errors, as specified by the RFC. Ergo, you are completely dependent on the speech recognizer you intend to use as to its ability to support SRGS grammars.
The only API based speech recognition web service that I know of that supports SRGS is Tropo (now part of Cisco) but it's a cloud service softswitch model so that might not fit what you're looking to achieve. You might want to consider just using an MRCP server as (ahem) Pontimax's mrcpSP11-STT MRCPV1 server. Powered by Microsoft's speech recognition technology, we believe it's the lowest cost, by far, highest recognition accuracy MRCP
server available.