Lemonfox AI Provider Guide
Lemonfox AI is a Tier-2 catalog provider: its integration is one JSON file
(src/lib/providers/catalog/lemonfox-ai.json) rather than hand-written code.
Verification status: this entry is docs-verified only, not yet live-verified. The vendor's
GET https://api.lemonfox.ai/v1/modelsneeds a key (it answers HTTP 401 without one), so the two model ids come from the vendor's public chat API page, https://www.lemonfox.ai/apis/chat (retrieved 2026-09-29), and the roster has not been checked. No account was created and no API key was used to build it.evidence.liveMatrixisnulluntil someone runs the live capability matrix with a real key (see Verification status below).
Key Facts
- Provider id:
lemonfox-ai(aliaslemonfox) - Protocol: OpenAI-compatible (
/chat/completions) — the chat API page says "Our OpenAI-compatible API takes a list of messages as input and provides an AI-generated (assistant) message as output." - Base URL:
https://api.lemonfox.ai/v1 - Default model:
deepseek-v4-flash - Models in catalog: 2, taken from the model table of https://www.lemonfox.ai/apis/chat
- Streaming: supported — the page's
streamparameter reads "incremental message updates are transmitted as server-sent events with data-only messages." - Tool calling: not declared (
false) — the page's API Parameters section listsmessages,model,max_tokens,stop,stream,frequency_penalty,presence_penalty,temperatureandtop_p - Tools while streaming: not declared (
false) - Structured output: not declared (
false), same parameter list as above - Structured output + tools together: not declared (
false) — no combined probe was possible without credentials - Embeddings: not declared
- Thinking: not declared
- Billing:
free-with-cardis the growth queue's classification, one of the three values the catalog schema allows; see Billing below for the vendor's own wording - Key format: none declared
Quick Start
1. Get an API key
- Visit: https://lemonfox.ai/signup (the "Get started" and "Start Your Free Trial" links on https://www.lemonfox.ai/apis/chat both point to /signup); sign-up was not attempted while building this entry
- Create an API key at https://lemonfox.ai/apis/keys — https://www.lemonfox.ai/apis/chat links "create an API key" to that page, and the API's 401 reply says "You can obtain an API key from https://lemonfox.ai/apis/keys."
- Billing as the vendor states it: see Billing below
- Set
LEMONFOX_AI_API_KEYin your .env file
2. Configure
export LEMONFOX_AI_API_KEY=your-api-key
export LEMONFOX_AI_MODEL=deepseek-v4-flash # optional — overrides the default model
export LEMONFOX_AI_BASE_URL=https://api.lemonfox.ai/v1 # optional — proxy or self-hosted gateway
3. Use it
import { NeuroLink } from "@juspay/neurolink";
const neurolink = new NeuroLink();
const result = await neurolink.generate({
input: { text: "Explain context windows in one paragraph." },
provider: "lemonfox-ai",
model: "deepseek-v4-flash",
});
console.log(result.content);
# CLI
npx @juspay/neurolink generate "Hello" --provider lemonfox-ai
Per-request credentials:
await neurolink.generate({
input: { text: "Hello" },
provider: "lemonfox-ai",
credentials: { lemonfoxAi: { apiKey: process.env.LEMONFOX_AI_API_KEY } },
});
Billing
What the vendor's public pages show (retrieved 2026-09-29):
- https://www.lemonfox.ai/ — "Try our APIs for 1 month for free."
- https://www.lemonfox.ai/apis/chat — "First month for free!" and "Start Your Free Trial"
- https://www.lemonfox.ai/terms — Lemon Fox GmbH uses Paddle as its Merchant of Record and offers "subscription-based pricing and usage-based pricing"
The entry records free-with-card, the growth queue's classification, because
the catalog schema has no unknown value; it is not a vendor statement of
sign-up terms.
Models
| Model | Context | Price / 1M tokens | Notes |
|---|---|---|---|
deepseek-v4-flash ⭐ | 1M | $0.50 | NeuroLink default. Vendor: "DeepSeek V4 Flash is our default model — fast, cost-effective, and suitable for most tasks." |
mimo-v2.5-pro | — | $1.25 | NeuroLink fallback. Vendor: "MiMo V2.5 Pro is a powerful model from Xiaomi, recommended for complex reasoning and coding tasks." |
Model ids, the 1M context figure and the two prices come from the model table
on https://www.lemonfox.ai/apis/chat (retrieved 2026-09-29), whose price column
is headed "Price / 1M tokens". The table's context text for deepseek-v4-flash
reads "Supports a 1M token context window."; the catalog stores it as 1,000,000
(NeuroLink's decimal reading of "1M"). mimo-v2.5-pro has no context window set.
The page also shows the model parameter as "Specify the model ID to be used.
Default: deepseek-v4-flash. Also supported: mimo-v2.5-pro."
models.defaultContextWindow (32,768) and models.defaultMaxOutputTokens
(4,096) are placeholders the vendor does not publish, for model ids outside the
catalog; the page's max_tokens parameter reads "integer, optional, default:
infinity". pricingPerMTok is unset on both models because the catalog field
takes separate input and output figures and the table has the one "Price / 1M
tokens" column.
Each model's vision flag is false in the catalog, a placeholder for a
boolean the schema requires; it is not a vendor statement. Each model's
status is production, a value the schema requires.
Deprecated models: a second table on the same page, under the heading
"Deprecated models", lists llama-8b-chat ("Deprecated. Llama 3.1 8B — use
deepseek-v4-flash instead.", $0.50) and llama-70b-chat ("Deprecated. Llama 3.3
70B — use mimo-v2.5-pro instead.", $1.25). These two ids are not in this catalog.
Fallback order when the default is unavailable: deepseek-v4-flash →
mimo-v2.5-pro.
Verification status
Tier-2 onboarding requires evidence before a provider is accepted, and
pnpm run verify:provider-onboarding gates it in CI. This is what the
catalog currently records for Lemonfox AI — docs-verified only, not
live-verified:
| Probe | Result |
|---|---|
| Roster | unauthenticated GET /v1/models, HTTP 401, 2026-09-29 — no key used; model ids taken from https://www.lemonfox.ai/apis/chat; roster not verified |
| Billing | public pages listed under Billing, 2026-09-29 — no signup performed |
| Auth-failure shape | unauthenticated GETs of /v1/models, /v1/chat/completions and /v1 each answered HTTP 401 with the same JSON body (status 401, error.type invalid_request_error, error.code null, error.message beginning "You didn't provide an API key."); errorRules holds one rule, for status 401; no POST request was sent |
| Tools / structured output | not declared: the parameter list on https://www.lemonfox.ai/apis/chat is messages, model, max_tokens, stop, stream, frequency_penalty, presence_penalty, temperature and top_p, and no request exercising tools or structured output was sent — structuredOutputWithTools stays false |
| Live capability sweep | not run. evidence.liveMatrix is null. Before treating this provider as production-ready, run npx tsx test/continuous-test-suite-provider-matrix.ts --provider=lemonfox-ai with a real key and record the result. |
Do not treat this entry as equivalent to a live-verified Tier-2 provider
(e.g. FriendliAI, Novita AI) until that live matrix has been run and
evidence.liveMatrix is filled in.
Troubleshooting
| Symptom | Cause | Fix |
|---|---|---|
| HTTP 401 | The vendor's reply to a request with no key: "You didn't provide an API key. You need to provide your API key in an Authorization header using Bearer auth (i.e. Authorization: Bearer YOUR_KEY)." | Set LEMONFOX_AI_API_KEY; keys are at https://lemonfox.ai/apis/keys |
llama-8b-chat or llama-70b-chat set as model | The chat API page lists these ids under "Deprecated models" | The page says "use deepseek-v4-flash instead" for llama-8b-chat and "use mimo-v2.5-pro instead" for llama-70b-chat |
See also
- Provider setup overview
- Provider guides
- Tier-2 onboarding — how this provider's JSON becomes a working integration
- Provider feature compatibility