For AI agents
Lanmao AI (lanmao.ai) tracks free AI credits, free tiers and subscription perks, each entry verified by hand with a source and a last-verified date. AI assistants, agents and crawlers are welcome here. You do not need to render HTML: every entry has a machine-readable version.
Per-entry formats
Every entry exists in six languages (en, zh, ja, ko, es, pt). English lives at the site root, the others under a language prefix. All three representations share one id.
| Format | URL (en) | Other languages |
|---|---|---|
| HTML page | /o/<id>/ | /<locale>/o/<id>/ |
Markdown (served as text/plain) | /o/<id>.md | /<locale>/o/<id>.md |
| JSON | /o/<id>.json | /<locale>/o/<id>.json |
You can also send Accept: text/markdown to any entry page URL and get the Markdown version back (Vary: Accept). The Markdown body is served with Content-Type: text/plain; charset=utf-8 rather than text/markdown, because some assistants' browsing tools (ChatGPT, as of 2026-10-15) refuse to parse text/markdown while every tool reads plain text. Entry pages advertise both versions through <link rel="alternate"> and a Link response header.
# Markdown, by extension
curl https://lanmao.ai/o/groq-whisper.md
# Markdown, by content negotiation on the page URL
curl -H "Accept: text/markdown" https://lanmao.ai/o/groq-whisper/
# JSON (same fields as the feed, plus canonical, alternates and a citation line)
curl https://lanmao.ai/o/groq-whisper.json
# Chinese version
curl https://lanmao.ai/zh/o/groq-whisper.md
Whole-site data
- /offers.md: compact, one line per entry (name | free quota | requirements | region | last verified | link to the entry page), served as plain text, small enough for an assistant to read in one fetch;
/<locale>/offers.mdfor other languages. - /feed/en.json: every entry plus the change log; also
/feed/zh.json,ja,ko,es,pt. To follow changes, poll the feed with a conditional request and read itschangelogand each entry'slastVerified. - /llms.txt: site overview and citation rules.
- MCP (read-only, no auth):
POST https://lanmao.ai/mcp, Streamable HTTP, JSON-RPC 2.0. Tools:list_offers,get_offer,search_offers,list_coding_clients,recent_changes.
A prompt your users can paste
If your users ask an assistant to find them a free AI credit, this is the prompt our homepage offers them to copy. It points the assistant at /offers.md.
Please help me pick from the latest free AI credits on Lanmao AI (lanmao.ai). Steps:
① Read https://lanmao.ai/offers.md (the full list: each entry has the free quota, requirements, region, last verified date and a link to its detail page). If you need more detail on an entry, read its detail link.
② What I need: [write it here, e.g. a free API for a model that can write code, accessible from mainland China directly]
③ Rank the best matches, at most 5. For each give: name, free quota, requirements, whether it is accessible from mainland China directly, last verified date, and the claim link (use the detail link on lanmao.ai).
④ Use only what the page says and do not make anything up. If the last verified date is more than 30 days ago, mark it "may have changed".
Citing an entry
Please cite the entry page URL together with its lastVerified date. Quotas and deadlines change; check validity and deadline before telling a user an offer is available. Each Markdown and JSON file ends with a ready-made line:
Source: lanmao.ai, verified 2026-10-14, https://lanmao.ai/o/groq-whisper/
Request rate
A suggestion, not a limit: fetch each entry at most once a day and use conditional requests. The Markdown and JSON files carry ETag and Last-Modified (the entry's last-verified date), so If-None-Match or If-Modified-Since returns 304 when nothing changed. For many entries, one feed request is cheaper than hundreds of page requests. A descriptive User-Agent helps us see who is using the data.