ClientResponseError/Tools
OpenAI Developer Community
May 15, 2026
I know there have been many recent changes and commits in Codex related to tools. I am not sure whether the API and Codex are connected in this case, but if they are, this example of a commit may shed some light on the issue:
github.com/openai/codex
Simplify tool executor and registry plumbing (#22636)
committed 09:47AM - 15 May 26 UTC
jif-oai
+827 -1005
Why The tool runtime path still had a typed output associated type on ToolE…xecutor, plus a core-only RegisteredTool adapter and extension-only executor aliases. That made every new shared tool runtime carry extra adapter plumbing before it could participate in core dispatch, extension tools, hook payloads, telemetry, and model-visible spec generation. This PR moves output erasure to the shared executor boundary so core and extension tools can use the same execution contract directly. ## What Changed - Changed codex_tools::ToolExecutor to return Box<dyn ToolOutput> instead of an associated Output type. - Removed the extension-specific ExtensionToolExecutor / ExtensionToolOutput aliases and exposed ToolExecutor<ToolCall> plus ToolOutput through codex-extension-api. - Reworked core tool registration around CoreToolRuntime and ToolRegistry::from_tools, removing the extra RegisteredTool / ToolRegistryBuilder layer. - Consolidated model-visible spec planning and registry construction in core/src/tools/spec_plan.rs, including deferred tool search and code-mode-only filtering. - Added ToolOutput helpers for post-tool-use hook ids and inputs so MCP, unified exec, extension, and other boxed outputs preserve the same hook payload behavior. - Updated core handlers, memories tools, and the related registry/spec/router tests to use the simplified contract. ## Test Coverage - Updated coverage for tool spec planning, registry lookup, deferred tool search registration, extension tool routing, post-tool-use hook payloads, dispatch tracing, guardian output extraction, and memories extension tool execution.
A similar pattern happened a few days ago when users were reporting MCP problems around the same time there were Codex commits related to MCP.
Again, this is only a guess, but there are at least a few facts that seem to correlate.
Discussion in the ATmosphere