There are a couple of ways to solve it. The easiest may be simply to add this phrase after your WHERE clause:
COLLATE Latin1_General_CS_AS
so in your example:
WHERE
All_MRN = '#URL.MED_REC_NUM#' COLLATE Latin1_General_CS_AS
Let us know if that works for you, as a starting point.
Beyond that, you will also see (if you search for info) that you can do things to configure either the entire db or an a given column to always be case-sensitive. That would make sense if your need to do case-sensitive searches is frequent.
But if indeed your need to do it is rather unusual, then this sql-level variation seems the quickest way to get what you want, with no other impact.
(I would add that it may be that there could be a challenge with how SQL Server computes its execution plan for such a query. It may or may not use existing indexes or statistics in the same way it would for a traditional case-insensitive search. If this query you do is significant to your app's functioning, that's something you'll want to dig into, looking at the execution plan generated with and without this clause.)