[MCP][Figma] Resources load but use_figma/get_design_context are not injected into Desktop threads (0.144.5)

Open 💬 2 comments Opened Jul 16, 2026 by JackLLLLL

Summary

Codex Desktop can connect to the official remote Figma MCP server and read its resources, resource templates, documentation, and skill files, but the server's callable tools are not injected into the active thread.

In particular, use_figma and get_design_context are completely absent from the thread tool surface. This blocks both Figma write-to-canvas workflows and normal design-to-code workflows.

Environment

  • Codex CLI/app runtime: codex-cli 0.144.5
  • Model: gpt-5.6-sol using the default OpenAI provider (no custom model provider or proxy configured)
  • OS: macOS 15.6.1 (24G90), arm64
  • Figma MCP endpoint: https://mcp.figma.com/mcp
  • Transport: streamable_http

codex mcp list --json reports:

{
  "name": "figma",
  "enabled": true,
  "disabled_reason": null,
  "transport": {
    "type": "streamable_http",
    "url": "https://mcp.figma.com/mcp"
  },
  "auth_status": "unsupported"
}

Steps to reproduce

  1. Configure the official remote Figma MCP server:

``toml
[mcp_servers.figma]
url = "https://mcp.figma.com/mcp"
``

  1. Authenticate Figma and start a new Codex Desktop thread.
  2. Ask Codex to use the official Figma MCP use_figma and get_design_context tools.
  3. Have the thread enumerate/read Figma MCP resources.

Actual behavior

The Figma MCP server is reachable and its resource APIs work:

  • resources/list returns Figma documentation and skills.
  • resources/templates/list returns Figma resource templates.
  • skill://figma/figma-use/SKILL.md can be read successfully.
  • skill://figma/figma-design-to-code/SKILL.md can be read successfully.
  • Other Figma documentation resources can be read normally.

However, no callable mcp__figma__use_figma, mcp__figma__get_design_context, or equivalent deferred tools are exposed to the thread. Explicitly naming the tools and loading the required Figma skills does not make them callable.

This appears to fail between MCP capability discovery and registration in the per-thread/deferred tool surface.

Expected behavior

After the Figma MCP server is enabled and reachable, its supported callable tools should be injected into new Codex threads. At minimum, get_design_context should be available for read-only design-to-code work, and use_figma should be available subject to the Figma account's write permissions.

If a tool is unavailable because of server-side entitlement or capability negotiation, Codex should expose a specific diagnostic rather than presenting resources while silently omitting every callable Figma tool.

Additional information

This closely resembles:

  • #20009 — OAuth MCP server is authenticated/configured but auth_status remains unsupported and tools are not imported into threads.
  • #19425 — tools are discovered by MCP but not exposed to Desktop threads or tool_search.
  • #20771 — MCP servers load successfully but their tools are not surfaced to the model (closed as duplicate of #19425).

It differs from #17106: in that report, mcp__figma__use_figma is dispatched and then hangs/cancels. In this reproduction, the Figma tool schema is never exposed to the thread at all.

Figma's official documentation lists Codex as a supported MCP client, and prior Codex/Figma reports show get_design_context in the normal Figma tool catalog. The remote server and skills are therefore present; only the callable-tool injection layer appears missing.

View original on GitHub ↗

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