user2402: Question
Is there a tool/API that can calculate the number of steps and max consumed memory units for a Plutus script, given all necessary inputs, e.g. datum, redeemer, and script context?
I could be wrong, but it seems like plutus-core provides an evaluation tool that can probably output something useful. However, I don't know how to use the tool. Any instructions of its usage will be extremely helpful.
Background
I am looking for such tool/API to calculate the min fee required for transactions that consume UTxOs locked in Plutus scripts while not depending on Plutus Application Backend (PAB), because I am building a standalone Python library through which users can write entire off-chain codes in Python. It is fine to have plutus-core in the runtime environment, but it is not ideal if I need to write Haskell code or use PAB to solve this problem.
Related questions
How to calculate fees for Plutus Smart Contract?  The answer linked to a fee calculator, but this is not what I am looking for, because the calculator still requires users to provide the number of execution steps and memory units.
How to calculate fees in Plutus It is basically asking the same question, except that usage of PAB is allowed.

user2402: Looks like Ogmios just released a new feature that solves this exact problem. Basically, users can now evaluate a transaction through Ogmios's API EvaluateTx and get accurate execution steps and memory from the response.

2402: <p><strong>Question</strong></p>
<p>Is there a tool/API that can calculate the number of steps and max consumed memory units for a Plutus script, given all necessary inputs, e.g. datum, redeemer, and script context?</p>
<p>I could be wrong, but it seems like plutus-core provides an <a href="https://github.com/input-output-hk/plutus/tree/master/plutus-core#evaluation" rel="nofollow noreferrer">evaluation tool</a> that can probably output something useful. However, I don't know how to use the tool. Any instructions of its usage will be extremely helpful.</p>
<p><strong>Background</strong></p>
<p>I am looking for such tool/API to calculate the min fee required for transactions that consume UTxOs locked in Plutus scripts while <strong>not</strong> depending on Plutus Application Backend (PAB), because I am building a standalone <a href="https://github.com/cffls/pycardano" rel="nofollow noreferrer">Python library</a> through which users can write entire off-chain codes in Python. It is fine to have plutus-core in the runtime environment, but it is not ideal if I need to write Haskell code or use PAB to solve this problem.</p>
<p><strong>Related questions</strong></p>
<p><a href="https://cardano.stackexchange.com/questions/4883/how-to-calculate-fees-for-plutus-smart-contract">How to calculate fees for Plutus Smart Contract?</a>  The answer linked to a fee calculator, but this is not what I am looking for, because the calculator still requires users to provide the number of execution steps and memory units.</p>
<p><a href="https://cardano.stackexchange.com/questions/7066/how-to-calculate-fees-in-plutus">How to calculate fees in Plutus</a> It is basically asking the same question, except that usage of PAB is allowed.</p>
 2402: <p>Looks like Ogmios just released a <a href="https://ogmios.dev/mini-protocols/local-tx-submission/#evaluatetx" rel="nofollow noreferrer">new feature</a> that solves this exact problem. Basically, users can now evaluate a transaction through Ogmios's API <code>EvaluateTx</code> and get accurate execution steps and memory from the response.</p>
