Inference gateway
Models, paid per request.
Every request is paid in USDG from a private session. No account, no API key, and nothing ties one request to the next, or to you. Only providers that don't store or train on prompts are used.
- Models
- –
- Margin
- 10%
- Logs
- 0
Loading the gateway's models
Prices include the 10% margin. Each request is quoted up front assuming every output token is used, at a ceiling over the model's cheapest providers; what the provider actually charges less than that comes back as credit on the session's next request. Testnet USDG for now. From launch, a share of the margin buys $SODI and burns it.
An API key, if you’d rather.
testnet USDGA prepaid key works with any OpenAI or Anthropic SDK: change the base URL, nothing else. It’s made in your browser and the gateway stores only its fingerprint. The trade-off: the gateway can tell requests made with one key come from the same customer. Without a key, every request stays unlinkable.
Call one.
With a key, any OpenAI or Anthropic SDK. Without one, three private ways in: the ask_model tool in any MCP agent, one fetch from the rx402 SDK, or Claude Code pointed at a local proxy with no Anthropic key.
- Quickstart · set up the MCP server
- Gateway API · endpoints, headers and errors
- Claude Code, no API key
- API keys · top-ups, balances, errors
import OpenAI from "openai";const client = new OpenAI({ baseURL: "https://inference.sodi.network/v1", apiKey: process.env.SODI_KEY });const res = await client.chat.completions.create({ model: "deepseek/deepseek-v4.1-flash", messages: [{ role: "user", content: "Hi" }],});Use ask_model with deepseek/deepseek-v4.1-flash to review this diff.const { response } = await rx402.fetch("https://inference.sodi.network/v1/chat/completions", { method: "POST", headers: { "content-type": "application/json" }, body: JSON.stringify({ model: "deepseek/deepseek-v4.1-flash", messages, max_tokens: 500 }),});RX402_MNEMONIC="…" node packages/mcp/dist/proxy.jsANTHROPIC_BASE_URL=http://127.0.0.1:8411 ANTHROPIC_API_KEY=unused \ANTHROPIC_MODEL=deepseek/deepseek-v4.1-flash claude