Cypher Query String Parser

I'm in need of a Cypher query string parser where when a query comes in from the client, I need to be able to parse it and inject WHERE clauses for node variables of certain node labels. This needs to be done at run time and basically any query can come in, which is why I'm looking to utilize Cypher query parser that's written to handle all cases. Once the injection is done, I need it re-export to a Cypher string again with the extra WHERE clause injections included.

Can someone advise or point me to the right direction such a query parser? I see there is a CypherParser written in scala, but it doesn't seem it was meant for public use? Any help would be greatly appreciated. Thanks!