Copilot for Xcode cannot consume image responses from MCP tools (Figma get_screenshot)
还没有人认领这个 Issue。
评估
- 难度
- 4/5
- 预计耗时
- 3-5 天
- 新手友好度
- 32/100
调研方向
在 Copilot for Xcode 的 Agent 模式中复现 Figma MCP get_screenshot 工作流,并检查提供的 streamChoices 日志,以了解图像结果是如何处理的。在 VSCode 中比较相同的 MCP 响应;完成的标准是 agent 使用具备 Vision 能力的模型接收返回的图像并对其进行推理。
由索引模型根据 Issue 内容生成。
描述
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
- Configure and run Figma MCP with a tool that returns an image payload (e.g. get_screenshot).
- Open Copilot for Xcode and start Agent mode.
- Trigger an MCP workflow that calls get_screenshot (for example via a command like /start-design-intake with a Figma node ID).
- 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
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.
- 主要语言
- Swift
- 星标
- 6.3k
- 派生
- 2k
- 平均合并
- 3 天 21 小时
- 30 天内合并 PR
- 2
贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
github/CopilotForXcode 的其他 Issue
-
难度 1/5 1 小时以内 新手友好度 85/100
github/CopilotForXcode#181 · 2 个 reaction ·
-
Add ability to attach Copilot window only to Xcode projects/workspaces, ignoring standalone files 未关闭
难度 3/5 1-2 天 新手友好度 68/100
github/CopilotForXcode#945 ·
-
难度 2/5 1-3 小时 新手友好度 35/100
github/CopilotForXcode#943 ·
-
难度 5/5 一周以上 新手友好度 10/100
github/CopilotForXcode#936 · 2 条评论 ·
-
难度 5/5 一周以上 新手友好度 10/100
github/CopilotForXcode#934 ·
查看 github/CopilotForXcode 的全部 Issue
相似的 Issue
-
难度 2/5 1-3 小时 新手友好度 88/100
manaflow-ai/cmux#13763 ·
-
type: feature request
难度 2/5 1-3 小时 新手友好度 82/100
googleapis/google-cloud-swift#1036 · 1 条评论 ·
-
难度 1/5 1 小时以内 新手友好度 78/100
wultra/mtoken-sdk-ios#253 ·
-
area:dictation documentation P2
难度 2/5 1-3 小时 新手友好度 78/100
uttrflow/uttrflow-swift#1180 ·
-
难度 2/5 1-3 小时 新手友好度 78/100