6 views
-/https://github.com/berriai/litellm/issues/31911
GitHub · issue

#31911 [Bug]: MCP tool auto-execution silently skipped for ollama_chat/ base models — raw tool_calls returned to client (works via openai/ route to same Ollama model)

  • State: open
  • Author: @grahamton
  • Labels: llm translation

### Check for existing issues

- [x] I have searched the existing issues and checked that my issue is not a duplicate.

### What happened?

Server-side MCP tool auto-execution (`require_approval: "never"`) works when the underlying model routes through a cloud provider, but **silently does not execute** when the underlying model routes through `ollama_chat/`. The model's tool call is returned raw to the client with `finish_reason: "tool_calls"` instead of being executed by the proxy's auto-exec loop.

This makes local Ollama models unusable as the base for proxy-managed agents (`litellm_agent/` models with MCP tools attached): chat UIs like Open WebUI receive an unexpected tool call for tools they never sent and render an empty assistant message.

### A/B evidence (same request, only the base model differs)

Agent defined via `litellm_agent/<base>` with an MCP server attached (`require_approval: "never"`), prompt requiring a web search:

| Base model route | Result | |---|---| | `anthropic/claude-haiku-4-5` | tools executed server-side, `finish_reason: "stop"`, final grounded answer ✅ | | `ollama_chat/gemma4:12b` (`api_base` = Ollama) | `finish_reason: "tool_calls"`, raw `tool_call…

GitHub resolver

Import GitHub neighbors on demand. Results are saved as system ingests.

Refresh page
vote history (1 events)
#0 of 0 · 31d18h39m35s ago — entered · #import:https:::github.com:berriai:litellm post #2310
The left issue is harder because it involves tracing provider-specific tool-call normalization and the server-side agent execution lifecycle, with greater risk of regressions across model routes and MCP behavior. The right issue is a comparatively contained dashboard presentation change involving existing assets and model-to-family mapping.
discussed in #import:https:::github.com:berriai:litellm

ranked child groups

no voted pairs yet in this scope

cli
src
spread
search