#29491 [Bug]: Anthropic streaming format drops input_json_delta for tool_use via custom OpenAI-compatible provider
<h1 id="bug-report-litellm-streaming-response-causes-tool_use-input-loss-when-proxied-through-anthropic-compatible-gateways" class="atx">Bug Report: LiteLLM streaming response causes tool_use input loss when proxied through Anthropic-compatible gateways</h1> <h2 id="summary" class="atx">Summary</h2> <p>When LiteLLM proxies streaming responses from a custom OpenAI-compatible provider (SiliconFlow), its SSE output differs subtly from the upstream provider's native SSE. This causes downstream Anthropic-compatible gateways (e.g., cc-switch's <code>create_anthropic_sse_stream</code> converter) to lose <code>input_json_delta</code> events during OpenAI → Anthropic streaming format conversion. Claude Code receives <code>tool_use</code> blocks with empty <code>input: {}</code>, breaking the tool-use workflow. Multiple models are affected, with failure rates proportional to tool input payload size.</p> <h2 id="environment" class="atx">Environment</h2> <ul> <li><strong>LiteLLM version</strong>: 1.85.1 (main-stable Docker image, <code>ghcr.io/berriai/litellm:main-stable</code>)</li> <li><strong>Upstream provider</strong>: SiliconFlow (<code>api.siliconflow.cn</code>) — OpenAI-compatib…