Point the coding agent you already use at one endpoint. Every model runs at a European provider, tokens cost exactly what the provider charges, and personal data, risky prompts and hidden injections are dealt with before they reach the model.
# OpenAI or Anthropic format, same endpoint. # Security runs on the server: nothing to install. curl https://api.eutonomous.eu/v1/chat/completions \ -H "Authorization: Bearer $EUTONOMOUS_API_KEY" \ -d '{"model": "scaleway/qwen3-coder-30b-a3b-instruct", "messages": [{"role":"user","content":"hi"}]}'
Security, on the server
These run between your coding agent and the model, so they work the same whichever client you use — Claude Code, Hermes, Mistral Vibe, Pi or your own scripts. Nothing to install, no plugin, no change to how you work. Switch them on with the security plan and tune them per team in your dashboard.
Emails, phone numbers, IBANs, card numbers, IP addresses and API keys are swapped for placeholders before the prompt leaves us, and put back in the answer. The model works with the structure, not the person.
Platform rules catch known attack patterns, such as attempts to override instructions or extract hidden system prompts. Add your own rules — a project codename, a customer list — and choose per team whether a match blocks the request or only records it.
Coding agents read web pages, files and tool results — and instructions can hide in any of them. Text that arrives as tool output is scanned as data, so an embedded "ignore your instructions" is caught and reported.
Every security decision is written to a hash-chained record, signed with our instance key. Download your account's record and verify it offline — no need to take our word for what happened.
One key per person or per agent, each limited to the models you allow. Spending is prepaid, so a runaway agent stops at the balance instead of running up a bill. Revoke a key and it stops working within seconds.
Every model runs at a European provider on its own EU infrastructure, and we do not store your prompts. Our ledger shows who operates, owns and hosts each provider.
In testing: a second, AI-based review that reads each prompt for injection attempts the pattern rules cannot express.
Works with your tools
The endpoint speaks both the OpenAI and the Anthropic API, so anything that lets you set a base URL works: Claude Code, Hermes, Mistral Vibe, Pi, Cline, Continue, the OpenAI SDK. The security features apply to all of them equally — they run on our side, not in the client.
export ANTHROPIC_BASE_URL=https://api.eutonomous.eu export ANTHROPIC_API_KEY=$EUTONOMOUS_API_KEY
export OPENAI_BASE_URL=https://api.eutonomous.eu/v1 export OPENAI_API_KEY=$EUTONOMOUS_API_KEY
client = OpenAI(
base_url="https://api.eutonomous.eu/v1",
api_key=EUTONOMOUS_API_KEY,
)Transparent pricing
These are not our prices — they are the providers' own, passed through unchanged. Scaleway's are read straight from its public billing API; STACKIT's are its published rate card. No margin, no markup, no spread hidden in the exchange rate. Your prepaid balance is drawn down by the metered cost and nothing else.
| Model | Provider | Input €/Mtok | Output €/Mtok |
|---|---|---|---|
| scaleway/whisper-large-v3 | Scaleway | 0.00 | 0.00 |
| stackit/e5-mistral-7b-instruct | STACKIT | 0.02 | 0.00 |
| stackit/qwen3-vl-embedding-8b | STACKIT | 0.08 | 0.00 |
| scaleway/bge-multilingual-gemma2 | Scaleway | 0.10 | 0.00 |
| scaleway/qwen3-embedding-8b | Scaleway | 0.10 | 0.00 |
| stackit/gpt-oss-20b | STACKIT | 0.15 | 0.25 |
| scaleway/mistral-small-3.2-24b-instruct-2506 | Scaleway | 0.15 | 0.35 |
| scaleway/gpt-oss-120b | Scaleway | 0.15 | 0.60 |
| scaleway/qwen3-coder-30b-a3b-instruct | Scaleway | 0.20 | 0.80 |
| scaleway/pixtral-12b-2409 | Scaleway | 0.20 | 0.20 |
| scaleway/gemma-4-26b-a4b-it | Scaleway | 0.25 | 0.50 |
| scaleway/qwen3.6-35b-a3b | Scaleway | 0.25 | 1.50 |
| scaleway/deepseek-v4-flash-0731 | Scaleway | 0.40 | 0.80 |
| stackit/llama-3.3-70b-instruct-fp8-dynamic | STACKIT | 0.45 | 0.65 |
| stackit/gemma-3-27b-it | STACKIT | 0.45 | 0.65 |
| stackit/gemma-4-31b-it | STACKIT | 0.45 | 0.65 |
| stackit/gpt-oss-120b | STACKIT | 0.45 | 0.65 |
| stackit/qwen3.6-27b | STACKIT | 0.45 | 0.65 |
| scaleway/qwen3.8-27b | Scaleway | 0.60 | 3.30 |
| scaleway/qwen3.5-397b-a17b | Scaleway | 0.60 | 3.60 |
| scaleway/qwen3-235b-a22b-instruct-2507 | Scaleway | 0.75 | 2.25 |
| scaleway/llama-3.3-70b-instruct | Scaleway | 0.90 | 0.90 |
| stackit/qwen3-vl-235b-a22b-instruct-fp8 | STACKIT | 1.50 | 1.75 |
| scaleway/mistral-medium-3.5-128b | Scaleway | 1.50 | 7.50 |
| scaleway/glm-5.2 | Scaleway | 1.80 | 5.50 |
Where your tokens go
Where the data sits is only one layer. For every provider we route to, the ledger documents who operates the service, who owns the operator, where inference runs and which law applies — with the date we last checked.
| Provider | Operator | Group | Country | Verified |
|---|---|---|---|---|
| STACKIT | Schwarz Digits Cloud GmbH & Co. KG | Schwarz Group (Schwarz Unternehmenstreuhand KG) | DE | 2026-09-07 |
| Scaleway | Scaleway SAS | Iliad Group (Iliad SA) | FR | 2026-09-06 |
Pricing
We make nothing on inference — that is the point. The subscription pays for the security layer, so we never have a reason to route you to a pricier model.
The full router. Prepaid balance, spent 1:1.
Everything in Free, plus every security feature switched on.
Under the hood
Every request passes through malgra, the gateway we wrote for eutonomous and intend to release as open source. You never need to know it is there — but if you want to see how it works, it is written down.