Canva MCP app succeeds but returns no HTML preview in Codex Desktop

Open 💬 4 comments Opened Jun 20, 2026 by wkx862566546-ship-it

Summary

In Codex Desktop, the OpenAI-curated Canva plugin successfully executes Canva MCP tools, but the embedded MCP App preview is not rendered. The client shows the Chinese error:

MCP 应用未返回 HTML 内容

("The MCP app did not return HTML content.")

The Canva tools return only text/JSON structured content, even when prepare_design_generation is expected to open an interactive recommendation/generation widget.

Environment

  • Platform: macOS
  • Codex bundled CLI: codex-cli 0.142.0-alpha.6
  • Canva plugin: canva@openai-curated-remote 1.0.2
  • Auth: ChatGPT / Canva connector authorized
  • Canva MCP tool actions themselves succeed

Reproduction

  1. Install and connect the OpenAI-curated Canva plugin.
  2. Start a new Codex Desktop thread.
  3. Invoke Canva and ask: 生成一张里斯本 DAY 1 旅行攻略封面.
  4. Codex calls canva_prepare_design_generation with intent: recommendation.
  5. The tool returns success with JSON/structured content such as:
  • prepare_design_generation: true
  • recommendation: { type: "empty", items: [] }
  1. Codex calls the same tool with intent: generation.
  2. The tool returns a successful job object with status: in_progress, but no HTML/resource content for the MCP App UI.
  3. Codex Desktop shows no Canva card/preview and reports that the MCP app did not return HTML content.

Observed behavior

  • Canva generation jobs succeed.
  • Direct Canva candidate URLs can be generated through the non-widget design generation tool.
  • Canva designs can be fetched and edited through MCP.
  • The interactive HTML widget and embedded previews never render.
  • Canva thumbnail URLs returned as text also do not render inline in the Codex client.

Example successful generation job IDs:

  • 8f97d3ed-4634-48ad-a3fa-707037d606f6
  • a3b90bef-a638-4d45-afa4-edcb6b9d4cf5

Expected behavior

canva_prepare_design_generation should return the MCP App HTML/resource payload required by Codex Desktop so the visual-reference picker, outline review, generation status, and candidate previews render in the thread.

If the Canva server returns only JSON, Codex Desktop should gracefully fall back to rendering candidate links or thumbnails rather than displaying an HTML-content error.

Troubleshooting already attempted

  • Disconnected/reconnected Canva
  • Restarted Codex Desktop
  • Retried with a minimal single-page poster prompt
  • Retried using an explicit Canva design as visual_reference
  • Confirmed Canva MCP read/write operations work

The issue persists and appears isolated to the MCP App HTML/rendering contract between the Canva plugin and Codex Desktop.

View original on GitHub ↗

This issue has 4 comments on GitHub. Read the full discussion on GitHub ↗