FAQ
Questions we get asked.
Short answers to the questions that come up most in sales conversations. If your question is not here, email sales@leanroute.dev or start on the docs.
Do you support MCP (Model Context Protocol)?
Yes, on every model rather than only Claude. Add an `mcp_servers` array to any non-streaming /v1/chat/completions request. Leanroute connects to each MCP server, discovers its tools, namespaces them, injects them as ordinary function tools, executes whatever the model calls, and loops until it has an answer, then hands back one OpenAI-shape response. Because MCP tools become plain function declarations before dispatch, any provider with function calling works: GPT, Gemini, DeepSeek, Groq, Grok and Claude alike. It works on the standard OpenAI chat-completions API and is fully hosted, so there is no MCP client to run yourself. Running the loop at the gateway also means every tool call is logged and counted, which a gateway that only forwards `mcp_servers` to Anthropic cannot do. Servers must be on your org's allowlist first (/dashboard/mcp), because a malicious MCP server can exfiltrate data or run actions, so we don't accept arbitrary URLs. Streaming plus mcp_servers isn't supported yet and returns 400 `mcp_streaming_unsupported`; set stream:false and we run the loop for you. Full reference at /docs/mcp.
How is Leanroute different from OpenRouter, LiteLLM, Portkey, Helicone, Bifrost, or Kong AI Gateway?
In one line: a hosted gateway with routing, caching, spend caps, guardrails and MCP tools on any model built in, for a flat price, with first-class APAC providers. On MCP specifically: we run the agent loop on the standard OpenAI chat-completions API, so MCP tools work on GPT, Gemini, DeepSeek and Groq without an MCP client of your own. LiteLLM can do this too if you self-host it, and Portkey (now Palo Alto Networks' Prisma AIRS AI Gateway) offers gateway-side MCP execution in beta on its Responses and Messages APIs. The rest of the field: OpenRouter is a hosted marketplace with hundreds of models, a fee on credit purchases, and fee-free BYOK up to a monthly allowance. LiteLLM is open-source and self-hosted. Portkey is a hosted gateway with guardrails, now part of Palo Alto Networks. Helicone is observability-first and pairs cleanly with us. Bifrost is a newer Go-based self-host. Kong AI Gateway is AI plugins on Kong's general-purpose gateway. We're Singapore-hosted with first-class APAC provider depth (DeepSeek, Qwen, GLM, Doubao, Kimi, Sarvam, Krutrim alongside the Western frontier) and a $15/$25 flat BYOK subscription with no per-request fee. Detailed side-by-side at /compare.
Can I send images, not just text?
Yes. Vision input is live across OpenAI, Anthropic, Google, DeepSeek-VL2, and the full APAC vision pool: Qwen2.5-VL / Qwen-VL-Max (Alibaba Bailian), GLM-4V (Zhipu), Doubao Vision Pro (ByteDance), and Kimi vision preview (Moonshot). Send standard OpenAI `image_url` content parts (URL or base64 data URI) inside your message and we translate per upstream: Anthropic's base64 `image` blocks (or url source for HTTPS), Gemini's `inlineData` (we fetch + base64 HTTPS URLs server-side because Gemini doesn't accept image URLs), and passthrough for every OpenAI-compatible provider. Routing is vision-safe: we never swap a vision-bearing request to a text-only model, even with cheaper-model swaps on org-wide, so an image never gets silently dropped. With BYOK keys on Qwen or GLM, you can route a GPT-4o vision request to Qwen-VL or GLM-4V at a fraction of the cost, same content-parts wire on your side. (Grok is text-only at the moment so vision requests skip it automatically.) What we don't do yet: image generation (DALL-E, GPT-Image-1, Stable Diffusion), audio (Whisper / TTS / Realtime), video. Those stay roadmapped.
If I pick Claude Sonnet, will you swap it out?
Only if you opt in. Default behavior is to send to the exact model you asked for. With X-Gateway-Routing: explicit on the request, we'll respect it even when org-level cheaper-model swaps are on. The swaps we do are same-tier-only: Sonnet → DeepSeek-V3 because they're within a few points on MMLU / GPQA / HumanEval, never Sonnet → gpt-4o-mini. The mapping is public, we re-evaluate on every major model release, and you can disable swaps entirely at the org level or per-request. We never reroute when tools are set on the request.
How does pricing work?
Two options. BYOK subscription: $15/mo Starter (1M requests/mo, 30 RPM) or $25/mo Pro (5M requests/mo + $3 per extra 1M, 150 RPM). You bring your own provider keys; we route, cache, guardrail, observe, and log. No per-request fee to the gateway — the flat monthly covers everything. 14-day free trial with no card required: add a card before it ends to keep the plan, or let it lapse at no charge. Enterprise ($) is contact-sales for volume commits, dedicated regions, MSA. Alternatively pay-as-you-go credits: top up $50+ USD by credit card, we apply a 5% platform fee at deposit ($50 → $47.50 credit), and every inference call debits the exact upstream cost — zero per-request markup on inference. Cache hits are $0 across every plan. Cost is surfaced on every invoice.
Do you store my prompts?
Not in Postgres — our request log stores metadata only (model, tokens, cost, latency), never prompt content. Prompts DO live briefly in the Redis prompt cache: the cache key is a hash of your request, the value is the response body, and entries expire after 15 minutes. This is on by default so identical repeat requests return at $0 without a provider round-trip. If semantic caching is enabled, the embedding vector of your prompt (numeric, not plaintext) is also stored to serve semantically-similar queries. Caches are scoped per organization — your data can never satisfy another org. Flip on no-persistence mode in the dashboard to disable both caches; nothing about your prompts then touches our infrastructure beyond the duration of the HTTP request. Wipe-cache-now button included.
Do you have guardrails?
Yes, and they are included in the subscription rather than sold as a plugin or a per-request add-on. Seven rules ship in the library: PII redaction, secret and credential detection, prompt-injection detection, OpenAI moderation pre-check, data-exfiltration detection, profanity filtering, and a language/region gate. Each can block (400 prompt_blocked) or redact, and redact matters more than it sounds: stripping an email address and letting the request through is usually what you actually wanted, where blocking it outright is useless. You can also add your own per-org block and redact patterns in /dashboard/settings. For deeper needs we still document the specialists (Microsoft Presidio, Lakera Guard, Rebuff) in /docs/integrations, because they are better at the hard end of those problems and we do not claim to compete with them there. Full details at /guardrails.
Where is data hosted?
Singapore by default. Other regions available on request. Database + cache encrypted at rest. BYOK provider keys encrypted client-side with AES-256-GCM before they reach our database; we couldn't read them in plaintext even from a database dump.
Why would I use this instead of going direct to DeepSeek?
If you're 100% sure you'll stay on DeepSeek forever and you don't need observability or per-environment key management, you wouldn't. But most people want failover to a Western provider when DeepSeek is rate-limited, a unified API across providers as their model mix evolves, cost analytics that show 'what did this customer cost me this week,' and the ability to swap providers without code changes. On BYOK Starter/Pro that's a flat $15-$25/mo — cheaper than one hour of your time debugging a provider outage.
How does this work with Continue, Cursor, OpenWebUI, etc.?
They all accept a custom OpenAI-compatible base URL. Set it to api.leanroute.dev/v1, paste your gateway key, done. Integration guides for each are at /docs/integrations.
When can I actually use it?
Now. Sign up and you'll get a gateway key immediately. We're early and shipping fast. For production workloads we recommend a gradual rollout (start with a low-stakes route, expand as you build confidence) and keeping multi-account failover on (it retries on same-tier alternatives when the primary provider returns 5xx errors). The founder's direct line is in the dashboard footer if anything looks off.