The rule. When your app renders inside a chat, design it as a guest in the host's frame: the conversation keeps the composer, the context, and the next turn.
Why. Both major chat platforms now render app UI inside the conversation: OpenAI's Apps SDK gives apps an inline card in the flow of the conversation, a fullscreen surface, and picture in picture, while Anthropic's MCP Apps puts interactive connectors directly into the Claude chat (OpenAI, n.d.; Anthropic, 2026). Under the hood both build on one open extension, authored by MCP maintainers at OpenAI and Anthropic together with the MCP-UI creators, which adds "the ability for MCP servers to deliver interactive user interfaces to hosts" as sandboxed iframes speaking standard MCP JSON-RPC to the host (Pidkuiko et al., 2025). The host's design rules assume the chat stays in charge: no tabs or deeper navigation inside a card, two actions maximum, and a UX designed "to work with the system composer" rather than against it (OpenAI, n.d.).
Seen in the wild. Claude's launch set already works this way: Slack drafts reviewed in place, Amplitude charts adjusted mid-conversation, Figma and Canva rendered inline (Anthropic, 2026).
Verified as of 2026-10-04 against the current OpenAI Apps SDK documentation, the MCP Apps specification announcement, and Anthropic's launch post.