Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

Copilot for Xcode cannot consume image responses from MCP tools (Figma get_screenshot)

Open
#713 4 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
32/100
Issue type
Bug
Clarity
Mostly clear
Activity status
Stale
Tech stack
figma, macos, swift
Domain
ai, desktop, tooling

Research direction

Reproduce the Figma MCP get_screenshot workflow in Copilot for Xcode Agent mode and inspect the provided streamChoices logs for how the image result is handled. Compare the same MCP response in VSCode; done means the agent consumes and reasons over the returned image with a Vision-capable model.

Written by the indexing model from the issue text.

Description

reviewed

Description
When using Figma MCP inside Copilot for Xcode (Agent mode), the get_screenshot MCP tool successfully returns an image from the MCP server, but Copilot for Xcode fails to consume or interpret the image output, even when using Vision-enabled models (e.g. Claude Opus 4.5).

The same MCP workflow works correctly in VSCode, where the image returned by get_screenshot is properly read and used by the agent. This suggests an issue specific to Copilot for Xcode’s handling of MCP image responses, not the MCP server itself.

Versions

  • Copilot for Xcode: 0.46.0
  • Xcode: 26.2
  • macOS: 26.1

Steps to reproduce

  1. Configure and run Figma MCP with a tool that returns an image payload (e.g. get_screenshot).
  2. Open Copilot for Xcode and start Agent mode.
  3. Trigger an MCP workflow that calls get_screenshot (for example via a command like /start-design-intake with a Figma node ID).
  4. Observe that:
    4.1 MCP tool call succeeds
    4.2 Image data is returned by the MCP server
    4.3 Copilot UI shows the tool execution but the agent does not consume or reason over the image
    4.4 Run the same MCP server and workflow in VSCode.
    4.5 Observe that in VSCode the image is correctly read and used by the agent.

Screenshots
Image

Image

Logs

[2026-01-13T18:24:06.344Z] [info] [GitHubCopilot] [29344] window/logMessage: {
  "type" : 4,
  "message" : "[streamChoices] chunk data: {\"choices\":[{\"index\":0,\"delta\":{\"content\":null,\"tool_calls\":[{\"function\":{\"name\":\"mcp_figma-mcp_get_screenshot\"},\"id\":\"toolu_01673Vz98Z4tYmYaYSkEhMDw\",\"index\":1,\"type\":\"function\"}]}}],\"created\":1768328646,\"id\":\"msg_01SK3zJNMPmyrqWFRtTi2d7y\",\"model\":\"claude-opus-4.5\"}\n\n"
}
[2026-01-13T18:24:06.344Z] [info] [GitHubCopilot] [29344] window/logMessage: {
  "message" : "[streamChoices] choice { index: 0, delta: { content: null, tool_calls: [ [Object] ] } }",
  "type" : 4
}

Additional context

  • The MCP server is returning a valid image response (same payload works in VSCode).
  • Vision-capable models are enabled and selected in Copilot for Xcode.
  • This appears to be a Copilot for Xcode limitation or bug in MCP multimodal (image) handling, not a Figma MCP issue.
Dominant language
Swift
Stars
6.3k
Forks
2k
Avg merge
3d 21h
Merged PRs (30d)
2

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from github/CopilotForXcode

All issues in github/CopilotForXcode

Similar issues

More Swift issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.