Your tools, Evanesca's models: three values to change.
Any tool that lets you change OpenAI's base URL — or Anthropic's, for Claude Code — can call Evanesca: a coding agent, a workflow builder, an agent platform, a chat interface or your own code. You set three values — base URL, key, model ID — and the inference moves to models run in Europe. Each tool below has its own guide, written from its own documentation; for a few others, we noted where the setting lives.
SoonOpening soon: what follows describes the service as it will work.
The three values
Whatever your tool calls them, this is what goes in:
- Base URL
https://evanesca.app/api/v1- API key
- Created in your Evanesca account, sent as Authorization: Bearer (the examples read it from EVANESCA_API_KEY).
- Model ID
- An id from GET /models — for example
gemma-4-26b
The catalogue endpoint is public: you can pick a model ID before you even have a key (model table). An ID Evanesca does not serve answers 404 model_not_found (where calls run).
Coding agents and editors
Agents that read your repository, edit files and run commands — every step a tool call, so the model you pick matters.
Personal and desktop agents
Agents you run yourself, on your desktop or your own server, with their extensions and tools.
Frameworks
Libraries for building your own applications, agents and RAG pipelines, in Python or TypeScript.
Platforms and gateways
Workflow builders, agent platforms and LLM gateways: where the field hides, which node to use, which default gets in the way.
Also works with
No guide for these, but each one documents where an OpenAI-compatible base URL goes. These rows describe the tool from its documentation, not a test with Evanesca.
| Tool and source | Where the base URL goes |
|---|---|
Code editor cursor.com · read on 12 Oct 2026 | Settings → Models → OpenAI: API Key, then the switch that overrides the base URL. Cursor sends every request through its own servers, so prompts pass through Cursor, a US company, before reaching Evanesca — and Tab completion keeps Cursor's models. |
Agent CLI npmjs.com · read on 22 Sep 2026 | fleece setup (the @fleeceai/cli package on npm), then a custom provider you name — evanesca, say — with https://evanesca.app/api/v1 as base URL, openai as API shape and your Evanesca key. Models are then called evanesca/<model ID>, such as evanesca/deepseek-v4.1-flash. Fleece AI is published by FLEECE AI, which also publishes Evanesca. |
Chat interface docs.openwebui.com · read on 6 Oct 2026 | Admin Settings → Connections → OpenAI → Add Connection, with the URL and API Key fields — or the OPENAI_API_BASE_URL environment variable. |
Chat interface librechat.ai · read on 6 Oct 2026 | An endpoints.custom entry in librechat.yaml with name, baseURL, apiKey and models. |
What an agent needs
A chat integration needs text in and text out. An agent needs three more things, and they decide whether it works:
- Tool calling. An agent acts through tool calls; a model that cannot emit them only chats. Evanesca passes tools and tool_choice through untouched, and the model table shows, model by model, whether a real tool call came back.
- Usage in streams. A streamed answer ends with a usage chunk, so a streamed agent step is charged as precisely as a blocking one (streaming).
- Time. Reasoning models can think for minutes on a long prompt: raise your platform's timeout before it cuts them off.
An agent that answers from your documents also needs an embedding model: Evanesca's run in France (embeddings and RAG).
What does not plug in
Two of OpenAI's formats Evanesca does not serve. Both fail with a 404 rather than a helpful message, so check before you wire anything.
| Format | What it means |
|---|---|
| OpenAI's Responses API (/responses) | A tool set to it by default must be switched back to Chat Completions: n8n's OpenAI Chat Model node has a Use Responses API toggle for that (n8n guide). |
| OpenAI's legacy completions (/completions) | Editor autocomplete (fill-in-the-middle) relies on it: Zed's edit predictions, Continue's autocomplete. Leave autocomplete on another model; the chat and agent modes of those tools use Chat Completions. |
What moves, and what stays
Changing the base URL moves the inference — the model reading your prompt — to Europe, where every Evanesca model runs. It does not move your tool: an n8n instance, a Foundry project or a hosted chat interface sees every prompt and every tool result before Evanesca does, under whatever jurisdiction it runs in.
Self-host the tool in the EU, and both halves stay in Europe. Use a managed US service, and the model is the only part this changes — worth saying plainly to whoever answers for data protection where you work. In between sit Evanesca's own servers: their host is named in the legal notice.
Frequently asked questions
Which tools can use Evanesca?
Any tool that lets you set a custom OpenAI base URL and speaks Chat Completions, or that speaks Anthropic's Messages format: n8n, Microsoft Foundry, LiteLLM, Claude Code, OpenCode, Cline, Kilo Code, Continue, Aider, Zed, goose, Hermes Agent, OpenClaw, LangChain, LlamaIndex, the Vercel AI SDK, Cursor, Fleece AI, Open WebUI, LibreChat, and the many frameworks built on OpenAI's client.
Does changing the base URL make my agent GDPR-compliant?
It makes the inference European — every Evanesca model runs in Europe — which is often the hardest part to fix. It does not change where your tool runs: that layer still processes the prompts, under its own jurisdiction. Compliance is judged on the whole chain, so review the orchestrator too.
Do open-weight models handle tool calling?
Most of Evanesca's do: a real tool call came back from every model in the catalogue. Check the model you pick, not just the operator.
Can I use Claude Code with Evanesca?
Yes. Claude Code speaks Anthropic's Messages format, which Evanesca serves too: set ANTHROPIC_BASE_URL to Evanesca's endpoint and give every model slot an Evanesca model (Claude Code guide). It can also use Evanesca's tools over MCP.
Point your tools at models in Europe.
One key, the base URL, a model ID: the rest of your setup stays as it is.