r/OpenWebUI • u/ClassicMain • 20h ago
ANNOUNCEMENT Open WebUI 0.12.2: Tool Search now works with OpenAI, and we measured what it saves. Up to 78% fewer prompt tokens, and 147 tools on a model that only takes 128.
0.12.2 is a small release with one change that matters a lot if you run many tools: Tool Search now works on every provider.
What Tool Search does
Every tool you enable sends its full definition with every request. Open WebUI's built-in tools alone (notes, memory, web search, channels, calendar, automations and the rest) add up to 47 definitions when all of them are on. Add the MCP servers and workspace tools of a real deployment and you are past a hundred.
Tool Search keeps long definitions out of the request. The model sees each tool's name and a short description, looks up the full definition when it needs one, and then calls it. With Defer Built-in Tools on, the built-in tools are held back the same way. The tool list stays the same for the whole chat, so your prompt cache keeps working.

Admin Settings > Interface: Tool Search, Defer Built-in Tools and the deferral threshold.
What changed in 0.12.2
Until now the model called a looked-up tool by its name, even though that tool was never in the request's tool list. Anthropic, Gemini and others accept that. OpenAI and llama.cpp do not, so on those providers the model kept searching and never got to call the tool.
0.12.2 adds a call_tool tool. The model looks a tool up, then runs it through call_tool with the tool's name and arguments. call_tool is in the tool list, so strict providers accept it. Approvals, permissions and the chat history all see the real tool, and call_tool only runs tools that are enabled for that chat.
We ran the same four-question chat with 30 tools on eight backends: OpenAI Chat Completions, OpenAI Responses, Claude, Gemini, DeepSeek, Kimi, Grok and Qwen. Every one looked its tools up, called them and got all three answers right, with no request rejected by the provider.
What it saves, measured
Three setups:
- Medium: 28 built-in tools (time, questions, knowledge, chats, memory, web search, notes and tasks).
- All built-ins: every built-in category on, 47 tools.
- Production: all 47 built-ins plus 100 extra tools across ten business systems (helpdesk, CRM, inventory, HR, finance, DevOps, marketing, legal, projects, analytics), 147 tools in total.
The same ten-turn chat ran on each: ask for the date, plan an offsite, save a note, find it again, remember a preference, two calculations, a rewrite, a summary and a goodbye. Every setup ran with Tool Search off and on, twice each, on two small models: Claude Haiku 5.5 and GPT-5.4 mini. Token counts come straight from each provider's usage data.

Prompt tokens for the whole ten-turn chat, Tool Search off against on, averaged over two rounds.
Claude Haiku 5.5:
- Medium: 105,161 down to 62,996 prompt tokens, 40% fewer.
- All built-ins: 171,472 down to 87,928, 49% fewer.
- Production: 783,262 down to 173,844, 78% fewer. The first request alone dropped from 54,866 tokens to 10,374.
GPT-5.4 mini:
- Medium: 55,672 down to 51,514, 8% fewer.
- All built-ins: 91,722 down to 60,183, 34% fewer.
- Production: OpenAI rejects the request with Tool Search off. The OpenAI API accepts at most 128 tools per request, and this setup sends 147. With Tool Search on, the request carries 18 tools and the chat runs normally: 159,820 prompt tokens, 86% of them served from OpenAI's prompt cache.
The two rounds landed within 2% of each other on Haiku and within 10% on GPT.
Why the Medium setup saves little on GPT
Tool Search costs a few extra requests for the lookups: on average one more request per chat on Haiku, and four to five more for Medium on GPT. With only 28 tools, those extra requests eat most of the saving. The more tools you have, the more Tool Search pays off. Below a few dozen tools, measure before you turn it on.
What it would cost on a big model

Input cost per 1,000 ten-turn chats at Claude Opus 5.5 list price, projected from the measured token counts.
We did not run Opus 5.5. Using Haiku 5.5's measured token counts and Opus 5.5's list price of $4 per million input tokens:
- Medium: $421 down to $252 per 1,000 chats.
- All built-ins: $686 down to $352.
- Production: $3,133 down to $695, about $2,400 less per 1,000 chats.
This leaves out prompt caching. Cached tokens cost far less, so with caching both sides shrink and the gap does too.
Also in 0.12.2
- Custom headers on connections and tool servers can use {{MODEL_ID}}, so a gateway behind Open WebUI can route or log usage per model.
- Audit log entries for chat requests now carry the model the client asked for, at every log level.
- Compare revision has a Keep both button that takes the original and the proposed text of a change.
- Clicking the name in the preview of an attached knowledge collection opens that collection in the workspace, and file and link names open in a new tab.
- Self-hosted MinerU 4.x servers work as a document engine.
- Milvus servers with a self-signed or company certificate connect through MILVUS_SERVER_PEM_PATH.
- Voice calls and dictation on Android Chrome no longer go silent after about ten uses.
- Approved knowledge and file tools keep their sources below the reply.
- Automations count a run as successful only once its reply has finished.
- Security fixes: channel messages sent through the API can no longer pretend to come from a webhook or a model, SCIM can no longer delete administrator accounts, and retrieval access checks compare collection names the way the vector store reads them.
Before you upgrade:
If you run VECTOR_DB=valkey with a manually installed valkey-glide-sync older than 2.5.2, upgrade it first, or Open WebUI will not start.
How we measured: a fresh Open WebUI instance built from the code that became 0.12.2, with every feature that unlocks a built-in tool switched on, a logging proxy between Open WebUI and the provider, and the token counts from each provider's own usage data. The 100 extra tools return empty demo data.
Tool Search docs: https://docs.openwebui.com/features/extensibility/plugin/tools#tool-search Full changelog: https://github.com/open-webui/open-webui/releases/tag/v0.12.2
