Model or dataset
hanzohanzhe/Grandet avatar
hanzohanzhe/Grandet

Grandet ranks model API prices so an agent can pick the cheapest endpoint

Find the cheapest API for any model and connect it from your AI agent: Grandet Skill and an anonymous MCP server, backed by listed prices from 1,800+ official, inference and relay providers on grandet.ai.

670 stars61 forksJavaScriptNOASSERTION

At a glance

What is it?
Grandet is a price comparison service and agent tooling that lists per model prices from official APIs, inference providers and relay sites, and gives agents a skill and an anonymous MCP server to look up a price, find free credit, and wire the chosen endpoint into a local tool. It suits developers paying per token for LLM access.
Who is it for?
Adopt Grandet if your agent or application pays per token for LLM access and you want a second opinion on which endpoint is cheapest, including relay sites your own provider list does not cover. Do not adopt it as a source of truth on quality, because the project ranks by listed price only and says so, and do not expect the data to be open licensed, since supplier data and trademarks stay with their owners.
Can I use it commercially?
Check first. The repository uses a licence we do not classify automatically, so read its LICENSE file before any commercial use.
Is it still maintained?
Yes. The repository last received commits 3 days ago.
What is it written in?
Mainly JavaScript, according to GitHub's language statistics.

Answers come from the project's GitHub data, last synced on October 23, 2026, and from our analysis. They are not legal advice.

Editorial analysis

What Grandet compares, and what it deliberately refuses to say

Grandet compares listed API prices for each model across official APIs, inference providers and relay sites, and the project states the limit of its own output plainly. It ranks by listed price only. It never says which site is good and never repeats a site's own claims such as full strength or stable. Listed prices and suppliers' claims say nothing about quality, and when asked about quality, speed or downgraded models, it reports only what Grandet has on record and says so when there is no measurement.

That restraint is the design, and it is unusual for a price comparison product. Most comparators rank and then editorialize, and an agent reading that editorialize has no way to tell the opinion from the data. Grandet separates them, and it also handles money in three currencies without mixing them: USD credit, CNY credit and cash prices are listed separately and never compared with each other. Conditions such as a minimum top-up or members-only access are shown as a one-line hint, and prices that contradict the site's own text are listed as a reference rather than as the headline number. Groups a site limits to one client are folded away when your app is a different one.

The scale of the comparison is stated in the repository description: listed prices from more than 1800 official, inference and relay providers, with the topic list naming api-pricing, price-comparison, llm-api, api-relay, free-api and free-tier. The homepage is grandet.ai, the primary language is JavaScript, and the last push was on 2026-10-19 with a sequence of skill-v0.3.0 builds in the release history. The licence is a layered one that GitHub cannot classify, and the layers are spelled out in the project: skill files under Apache-2.0, catalogue code and documents written by Grandet under AGPL-3.0-only, and supplier data, original text and trademarks belonging to their owners with no blanket open-data licence.

Three ways in, and only one of them needs a key

The project is distributed as three things, and the table in the description is a better guide than the prose. There is the website at grandet.ai, there is the Grandet Skill, which finds the lowest price, finds free credit and connects the chosen API from inside your agent, and there is the MCP server, described as the same price and free-credit lookup for any MCP client, anonymous and without a key.

The Skill is installed by pasting one line into the agent you already use, with Codex, Claude Code and Cursor named:

text
Install Grandet Skill for me: https://grandet.ai/download.md

The agent does the rest, and if it needs you to sign in or approve something it tells you exactly what to click. Then you open a new conversation and ask, for example, that you code in Claude Code and want the cheapest Claude Sonnet 4.6 API. There is no need to mention Grandet again or attach files. Price lookups need no account and no API key.

The MCP server is a remote server over Streamable HTTP, so adding it to a client is a small configuration object:

json
{ "mcpServers": { "grandet": { "url": "https://grandet.ai/mcp" } } }

and in Claude Code the equivalent is a single claude mcp add command with the transport and the URL. Six tools are exposed: grandet_find_cheapest_api, grandet_find_free_credits, grandet_resolve_model, grandet_quote_evidence, grandet_glossary and grandet_list_apps. The names tell you the shape of the capability, and the presence of a glossary and a quote-evidence tool says that the service is built for agents that need to cite where a number came from rather than just a number.

How the connect flow protects your key

The third capability is the one that actually changes your setup, and it is described as a five step sequence, and the ordering is the interesting part.

First you sign up and top up on the site yourself and create the token in the group it names. You do that yourself, not the agent, which means the payment instrument and the account are yours. Second, you run one command in your own terminal to store the key, and typing is hidden and the key never enters the chat. That is the detail that makes the whole flow defensible, because a key pasted into a chat window is a key in a transcript.

Third, it shows the exact configuration change, backs up the file, and writes only after you confirm. Fourth, it checks the key, the group and the model name without spending credit, which is a specific and good design decision since a validation request that costs a fraction of a cent per call is still a call. Fifth, you can say undo to restore the previous setup.

The tooling that does this is the Skill's own connect program, scripts/connect.mjs, which is also usable as a local MCP server, and it makes the change the same way every time for Codex, Claude Code, OpenCode, Kilo Code, Continue, Gemini CLI, Hermes, OpenClaw and WorkBuddy. Other apps get a field card and their documentation link instead. In a cloud chat, where there is no terminal to run a command in, it can only hand you the command and the configuration to run yourself. That last limit is a real one and it is stated rather than worked around, which is the right call for a feature that touches your credentials.

The data files, and how to check them without the service

Grandet publishes its data in a form you can read without running anything, and the entry point table is a map of the project. The free credit and promotions are available as a readable catalogue at CATALOGUE-v3.md, as JSON at data/free-tokens-v3.json and as release details in data/RELEASE-v3.json. The original catalogue and its sources are at CATALOGUE.md with data/free-tokens.json and the manifest data/MANIFEST.json. There is a machine-readable index at catalogue-index.json and a reading guide for AI at llms.txt.

There are also plain HTTP endpoints for the same lookups, which is useful if you want to script against the data rather than use an agent: a price lookup at https://grandet.ai/api/v1/board with its API description at grandet.ai/public-data/price-finder.json, and a free-credit lookup at https://grandet.ai/api/v1/free-credits?q=gemini. The relay jargon glossary is built into the Skill as a reference file and also published online as grandet.ai/public-data/relay-glossary.json. That glossary exists because the relay ecosystem has its own vocabulary for what a reseller is actually providing, and a price table without that vocabulary is not interpretable.

Local development needs Node.js 20 or newer and no third party packages, and the commands are:

sh
node scripts/catalogue.mjs validate
node scripts/catalogue.mjs generate --check
node scripts/validate-public.mjs
node --test tests/*.test.mjs
node scripts/serve.mjs

The last one opens a local browser view at http://127.0.0.1:8787/. The documentation is explicit about the boundary of these commands: they check local files only and never update the website's prices. That is a sensible separation, since a validation script that could rewrite the published prices would be a hazard to run by accident.

Where Grandet is the wrong tool

The first limitation is the one the project is most careful about, and it deserves restating as an adoption criterion rather than a caveat. Grandet compares listed prices. It does not measure quality, latency or reliability, and it says so when it has no measurement. If your decision depends on which endpoint is genuinely better rather than nominally cheaper, a price table cannot answer it, and a benchmark of the specific endpoints on your specific workload can. A relay site can quote a model name and serve something else, and the only defence is end to end evaluation.

The second limitation is the data licence. Supplier data, original text and trademarks belong to their owners, and the factual compilation carries no blanket open-data licence, with the specifics in DATA-LICENSE.md, TRADEMARKS.md and each release manifest. The code side is permissive enough, with the skill under Apache-2.0 and the catalogue code under AGPL-3.0-only, but if you plan to embed the catalogue into a commercial product and redistribute it, that is a licensing conversation to have before you build on it.

The third limitation is the dependency on the service for anything live. The price comparison itself is a hosted service at grandet.ai, and the agent skill is a file the agent fetches. The project states in a comment that existing copies are reused without a forced download and with no historical backfill, which is sensible for an agent, but it does mean the price data you act on is only as fresh as the last observation the service recorded. Every answer includes a link to the price sources and a date the price was observed, which is exactly what you need to make that judgement, and also exactly what you need to check before you rely on it.

The realistic alternative is to price your providers directly and by hand, which is what most teams do at small scale. The difference in approach is that Grandet adds the relay and inference provider layer to the comparison, including free tiers and promotions that nobody tracks manually, and makes the result available to an agent without a human reading a pricing page. If you have two official providers, hand comparison is a ten minute job and Grandet adds little. If your agents are quietly spending money across a mix of official APIs, resellers and trial credits, a table maintained by someone else is worth more than a table you maintain.

Editorial conclusion

Adopt Grandet if your agent or application pays per token for LLM access and you want a second opinion on which endpoint is cheapest, including relay sites your own provider list does not cover. Do not adopt it as a source of truth on quality, because the project ranks by listed price only and says so, and do not expect the data to be open licensed, since supplier data and trademarks stay with their owners. Before you connect a key, read the method notes and the data licence, and check the observation date on any price you act on, because the site records when a price was seen rather than when it was set.

Frequently asked questions

What is Grandet and what does it compare?

It compares listed API prices for each model across official APIs, inference providers and relay sites, with prices from more than 1800 providers. It ranks by listed price only, never says which site is good, and lists USD credit, CNY credit and cash prices separately without comparing them to each other.

How do I use Grandet from an AI agent?

Paste `Install Grandet Skill for me: https://grandet.ai/download.md` into Codex, Claude Code, Cursor or another agent and let it do the rest, then ask for a price in a new conversation. Alternatively add the remote MCP server at https://grandet.ai/mcp, which is anonymous and needs no API key, exposing tools such as grandet_find_cheapest_api and grandet_find_free_credits.

How does Grandet connect an API without exposing my key?

You sign up and top up yourself and create the token in the named group, then run one command in your own terminal to store the key, with typing hidden and the key never entering the chat. The agent then shows the exact configuration change, backs up the file and writes only after you confirm, checks the key, group and model name without spending credit, and can restore the previous setup on request.

Can I read Grandet's price data without using the service?

Yes. The catalogue is published as readable Markdown and JSON in the repository, with a machine-readable index at catalogue-index.json and a reading guide for AI at llms.txt, and the same lookups are available over plain HTTP at https://grandet.ai/api/v1/board and https://grandet.ai/api/v1/free-credits. Local validation needs Node.js 20 or newer and no third party packages.

What licence applies to Grandet's code and data?

The skill files are Apache-2.0, catalogue code and documents written by Grandet are AGPL-3.0-only, and supplier data, original text and trademarks belong to their owners with no blanket open-data licence. The details are in the LICENSE, DATA-LICENSE.md and TRADEMARKS.md files, and the repository is not archived with the last push on 2026-10-19.

Official sources

  1. hanzohanzhe/Grandet on GitHub
  2. Issues
  3. Project website
  4. README
  5. Releases
Add this badge to your README

If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.

Add this badge to your README

markdown
[![Hysen Labs](https://hysenlabs.com/badge/hanzohanzhe-grandet.svg)](https://hysenlabs.com/projects/hanzohanzhe-grandet)

Was this useful?