Integrations
GDPR-compliant models for the agents you already build
Frontière AI is an OpenAI-compatible endpoint, so any agent platform that lets you set a base URL can run on European infrastructure: change three values — base URL, API key, model ID — and the inference moves to OVHcloud, Scaleway or a dedicated EU server instead of a US provider. Compatibility is the easy half. The half that decides whether an agent works is function calling, so we measured it: one real call per model on 6 August 2026, and 12 of the 13 live models returned valid tool calls.
The three values
Every integration on this page comes down to the same three settings. Whatever your platform calls them, this is what goes in:
Base URL https://getfrontiereai.eu/api/v1
API key sk-front-… (dashboard → API keys)
Model ID glm-5.2 (GET https://getfrontiereai.eu/api/v1/models)The model ID is the id field from our catalog endpoint, which is public and needs no key — point your browser at it and copy the one you want. It lists live models only, so anything you find there is callable right now.
Platform guides
Two platforms have enough of their own quirks to deserve a written walkthrough — where the field hides, which node to use, and which defaults will bite you:
n8n
Workflow automationPoint the OpenAI credential at Frontière AI and the AI Agent node runs on EU-hosted models — including the tool calls the agent depends on.
Read the guide →
Microsoft Foundry
Agent platformA bring-your-own-model connection makes every catalog model selectable in Foundry Agent Service, with inference staying in Europe.
Read the guide →
What an agent needs from a model provider
A chat integration only needs text in and text out. An agent needs more, and the difference is where most "OpenAI-compatible" endpoints quietly fall short.
First, function calling. An agent that cannot emit a tool call is a chatbot: no search, no database lookup, no action. Frontière AI relays tools and tool_choice untouched, so the answer depends entirely on the model and the provider serving it — which is why we measured it rather than assumed it. Second, streaming that still reports usage: our streams carry the usage object in the final chunk before [DONE], so a streamed agent step is billed as exactly as a blocking one. Third, patience — reasoning models think for minutes, and most agent frameworks ship with timeouts far shorter than that.
The table below is the result of the measurement, not a copy of the model cards. Each entry got one real call carrying a get_weather tool; five of them also got the full round trip, with the tool result sent back and the final answer checked for the value it contained.
Tool calling, measured
| Model | Hosting | Tool calling |
|---|---|---|
| Qwen3 235B (instruct) | EU sovereign | ✓ Verified |
| Qwen3.5 397B (multimodal) | EU sovereign | ✓ Verified |
| GLM-5.2 (Zhipu/Z.ai) | EU sovereign | ✓ Verified |
| DeepSeek V4 Flash 0731 (1M context) | EU sovereign | ✓ Verified |
| Llama 3.3 70B | EU sovereign | ✓ Verified |
| Qwen3.6 27B (multimodal) | EU sovereign | ✓ Verified |
| Qwen3.5 9B (fast, budget) | EU sovereign | ✓ Verified |
| Qwen3 32B | EU sovereign | ✓ Verified |
| Qwen3 Coder 30B | EU sovereign | ✓ Verified |
| Qwen2.5-VL 72B (vision) | EU sovereign | ✕ Refused |
| GPT-OSS 120B (OpenAI) | EU sovereign | ✓ Verified |
| GPT-OSS 20B (OpenAI) | EU sovereign | ✓ Verified |
| Mistral Small 3.2 24B | EU sovereign | ✓ Verified |
| Kimi K3 (2.8T parameters, 1M context) | Fast access (US) | ✓ Verified |
| Muse Spark 1.1 (1M context) | Fast access (US) | ✓ Verified |
| Muse Spark 1.2 (1M context) | Fast access (US) | ✓ Verified |
| GLM-5.3 Flash (Zhipu/Z.ai) | Fast access (US) | ✓ Verified |
| Qwen3.8 Max (2.4T, 1M context) | Fast access (US) | ✓ Verified |
| Qwen3.8 27B (multimodal) | EU sovereign | ✓ Verified |
| Qwen3.8 Flash (Qwen) | Fast access (US) | ✓ Verified |
| DeepSeek R1 (671B MoE) | Fast access (US) | ✓ Verified |
| DeepSeek V4 Pro (345B MoE) | Fast access (US) | ✓ Verified |
| DeepSeek R1 (Distill Qwen 32B) | Fast access (US) | ✓ Verified |
| DeepSeek R1 (Distill Qwen 14B) | Fast access (US) | ✓ Verified |
| GLM-5.3 (Zhipu/Z.ai) | Fast access (US) | ✓ Verified |
| Gemma 3 27B (Google) | Fast access (US) | ✓ Verified |
| DeepSeek V4.1 Flash (552B MoE, 1M context) | Fast access (US) | ✓ Verified |
Measured 6 August 2026, one call per model. Qwen2.5-VL 72B is the single refusal, and it comes from its provider, not from the model: OVHcloud answers HTTP 400, "feature 'tool calls' is not currently supported". Use it for image understanding and pick another model to drive the agent. The same result is machine-readable: every entry in GET /api/v1/models carries a tool_calling boolean, so an agent can filter on it at startup instead of finding out in production.
Embeddings and retrieval
An agent that answers from your own documents needs two different models: one to turn text into vectors, one to write the answer. POST /api/v1/embeddings is OpenAI-compatible and serves the EU-hosted embedding models below, so both halves stay on European infrastructure — until now the retrieval half had to be bought elsewhere.
| Model | Dimensions | Context | Price / 100k tokens |
|---|---|---|---|
bge-m3 | 1024 | 8,192 | €0.0013 |
bge-multilingual-gemma2 | 3584 | 8,192 | €0.0013 |
qwen3-embedding-8b | 4096 | 40,960 | €0.014 |
Chat and embedding models are separate catalogs: a chat model sent to /embeddings answers 404, and vice versa. GET /api/v1/models?kind=embedding returns only the valid ones. Check dimensions before you index anything — switching to a model with a different vector length means rebuilding the whole store.
What we don't serve
One gap worth knowing before you wire anything, because it fails as a 404 rather than as a helpful message:
| Gap | What breaks |
|---|---|
| No Anthropic-format endpoint | Tools that speak /v1/messages rather than /chat/completions — Claude Code and the Claude Agent SDK among them — cannot be pointed at us by changing a base URL. |
Everything else that speaks OpenAI
No dedicated guide, but we opened each vendor's own documentation and noted where the setting lives, with the date we read it:
| Tool | Where the base URL goes | Source |
|---|---|---|
| LangChain (Python)Agent framework | ChatOpenAI(base_url=…) — the legacy openai_api_base is still accepted. | 2026-08-06 |
| Vercel AI SDKAgent framework | createOpenAICompatible({ name, baseURL, apiKey }) from @ai-sdk/openai-compatible. | 2026-08-06 |
| Open WebUIChat interface | Admin Settings → Connections → OpenAI → Add Connection, fields URL and API Key (or OPENAI_API_BASE_URL). | 2026-08-06 |
| LibreChatChat interface | An endpoints.custom entry in librechat.yaml with baseURL, apiKey and models. | 2026-08-06 |
These lines say we located the setting in the vendor's documentation — not that we ran an agent end to end on that platform. The two guides above are the ones we walked through ourselves.
What this changes, and what it doesn't
Changing the base URL moves the inference. It does not move the orchestration. Your platform still runs wherever it runs — its servers see the prompts, the tool calls and the conversation history before we do, and whatever jurisdiction it sits in, it keeps. If you self-host your agent platform in Europe and call a model flagged sovereign, the whole chain is European. If your platform is a managed US service, the model is the only part this fixes.
That is a real improvement and a partial one, and it is worth telling your DPO which of the two you bought. Per-model honesty is why every entry carries a sovereign flag: models served through US infrastructure are labeled fast access, never sovereign, even when the region is European — a US company remains reachable by a US court wherever the servers sit.
FAQ
Which AI agent platforms can use GDPR-compliant models through Frontière AI?
Any platform that lets you set a custom OpenAI base URL — n8n, Microsoft Foundry, LangChain, the Vercel AI SDK, Open WebUI, LibreChat and the many frameworks built on the OpenAI client. The models flagged sovereign run on operators with no non-EU jurisdictional control, so the inference side of your agent stays under EU law.
Do open-source models support function calling?
In our catalog, 12 of the 13 live models do, verified by a real call on 6 August 2026 rather than taken from a model card. The exception is Qwen2.5-VL 72B, whose provider rejects tool calls outright with an HTTP 400. Function calling is what separates a usable agent from a chatbot, so check it per model rather than per provider.
Does switching the base URL make my agent GDPR-compliant?
It makes the inference European, which is usually the hardest part to fix. It does not change where your agent platform itself runs: that layer still processes prompts and keeps its own jurisdiction. Compliance is a property of the whole chain, so audit the orchestrator too.
Can I use Frontière AI for embeddings and RAG?
Yes. POST /api/v1/embeddings is OpenAI-compatible and serves EU-hosted embedding models, so both halves of a retrieval workflow — vectorizing documents and answering questions about them — run on European infrastructure. Chat and embedding models are separate catalogs: GET /api/v1/models?kind=embedding lists the ones valid on that endpoint.
Is there a free tier for testing an integration?
No. Frontière AI runs on prepaid credit, from €10, billed per token with no subscription — there is no free allowance. A top-up covers a lot of agent runs: the calls in the measurement on this page cost a fraction of a cent each.
Point your agents at Europe
Create an account, top up from €10, and the catalog is callable from whatever you already build in.
Create an account