The full upstream README, mirrored here for reference. Install config, tool schemas, adoption signals, and an original overview live on the Statlyte — live LLM pricing listing page.
Live pricing, context windows and identifiers for every major LLM API — so you can stop hardcoding a model table that goes stale.
Every app that touches an LLM ends up with something like this pasted into it:
Then a model is retired, a new one lands, an introductory rate expires, and your cost dashboard is quietly lying to you. This package fetches the current numbers instead.
Everything is cached in-process for six hours. Pass { offline: true } to any call to
use only the bundled snapshot and never touch the network.
Audio/transcription models (Deepgram, OpenAI Whisper/TTS) aren't priced per token — they carry
m.nonTokenPrice ({ unit: 'per_minute' | 'per_million_characters', amount }) instead, and
m.prices is {}. costOf() throws a clear error rather than silently returning 0 if you call
it on one of these; check m.nonTokenPrice first, or filter on m.prices.input != null.
The genuinely useful trick. scheduledChanges() returns increases vendors have announced
but not yet applied — so you can find out at build time rather than on the invoice:
An assistant's training data goes stale on prices within weeks, and a guessed number is worse than no number. This gives your agent the current figures:
Tools: list_models, get_model_pricing, estimate_cost, cheapest_for_workload,
scheduled_price_changes.
Also listed in the official MCP Registry as
io.github.richardwilkinson9/statlyte.
No install, no key, CORS open:
The raw dataset also lives in this repo as models.json and
changes.json, updated by commit — so you can diff it, pin it, or vendor it.
A job re-reads each provider's published pricing page every three hours. When a figure differs from the last one on file it writes a new observation with a timestamp and the URL it was read from. Nothing is inferred and nothing is estimated: if a price isn't published, it isn't listed.
Two honest caveats:
rankByCost will happily tell you an 8B model is cheaper than a frontier
one. That is arithmetic, not advice.Found a figure that disagrees with a vendor's page? The vendor is right and we're wrong — open an issue and it gets fixed on the next run.
statlyte.com has the human-facing side: a change log, a calculator that puts two models head to head at your own volume, and a calendar of announced changes. Free, no account.
MIT licensed. Attribution appreciated, not required.