#31449 OCI provider: tool requests from coding agents fail — non-function tools hard-raise, complex function schemas rejected by OCI
### What happened?
LiteLLM's OCI Generative AI provider (`oci/…`) is unusable with coding-agent clients (Codex via the Responses API, Claude Code via the Anthropic Messages API) because of how it handles tool definitions. We expose xAI Grok models served on OCI Generative AI through a LiteLLM proxy; plain chat works, but any request that carries tools fails.
There are two distinct failures, both in OCI tool handling:
**1. `adapt_tool_definition_to_oci_standard` hard-raises on any non-`function` tool.**
In `litellm/llms/oci/chat/generic.py`, the first thing the per-tool loop does is:
```python if tool["type"] != "function": raise OCIError(status_code=400, message="OCI only supports function tools") ```
Any tool whose `type` is not `"function"` aborts the **entire** request, rather than being skipped or translated. Clients that mix a built-in/server tool in with their function tools (e.g. Codex over the Responses API) can never reach the model, even though their function tools are perfectly valid. Confirmed this still raises on `main` as of filing.
Expectation: the adapter should pass `function` tools through and **skip** (or otherwise gracefully handle) tool types OCI doe…