A spend cap, a receipt and no prompt log, because procurement will ask.
Getting a model that answers is the easy half. The other half is being able to tell your own compliance team where the prompt went, and what it cost, before you are allowed to use it.
Why the mainstream APIs fail here
A team finds a model that will do the work and then discovers they cannot buy it: the vendor retains prompts for abuse monitoring, there is no per-user attribution, and spend is a monthly surprise rather than a limit. So the work goes back to a local model on somebody’s workstation, which is worse on every control that was being protected.
How MagmaRouter is used for this
Keys are the unit of control. Each one carries a hard lifetime and monthly cap, enforced by a hold taken before the request leaves, so a loop cannot outspend it. Usage is attributed per key, which is how a team or a matter gets its own line. The prompt is hashed and the hash is signed and returned, so there is a record of the request without a copy of it.
A working loop
- Mint one key per team, per matter or per agent, each with its own cap.
- Point the existing OpenAI or Anthropic client at the gateway. No new SDK.
- Give procurement the receipt design and the retention page rather than a promise.
Prompts are not stored. A signed receipt of the hash comes back on every call, so you can prove later what MagmaRouter logged. Details are on the privacy page. Per-model prices are on /models and the pricing model is on /pricing.