Feature request: make MCP apps work end-to-end in the Codex GUI
Resolved 💬 3 comments Opened Jun 18, 2026 by vozer Closed Aug 5, 2026
💡 Likely answer: A maintainer (github-actions[bot], contributor)
responded on this thread — see the highlighted reply below.
Problem
MCP apps do not work end-to-end in the Codex GUI.
A completed MCP tool call can expose mcpAppResourceUri, but the completed item does not include the hydrated resource contents the GUI needs to render the app inline. As a result, the UI has the URI but still has to do extra orchestration to display the MCP app.
Prototype
I implemented a clean prototype in my fork here:
- commit: https://github.com/vozer/codex/commit/03b480d5abf89fa954b97941d57540b6976123cf
- compare: https://github.com/openai/codex/compare/main...vozer:fix/21019-mcp-apps-clean?expand=1
What the prototype changes
- adds optional
mcpAppResourceContentsto completed MCP tool-call items - hydrates the MCP app resource server-side after a successful tool call
- gates hydration behind
features.enable_mcp_apps - keeps
mcpServer/resource/readavailable as the fallback/manual path - keeps hydration failures non-fatal so a successful tool call does not become a failed one
Why this is the right direction
This keeps the protocol change additive, preserves the existing manual resource-read API, and gives the GUI the payload it actually needs to render MCP apps inline from completed tool calls.
3 Comments
Potential duplicates detected. Please review them and close your issue if it is a duplicate.
Powered by Codex Action
See also:
MCP Apps render end-to-end in inline, side-panel, and fullscreen modes.