Skip to content

feat(mcp): preserve bounded inline image results - #110

Merged
waterdoog merged 1 commit into
feat/reasoning-effortfrom
codex/mcp-image-results
Oct 31, 2026
Merged

waterdoog merged 1 commit into
feat/reasoning-effortfrom
codex/mcp-image-results

Conversation

@waterdoog

Copy link
Copy Markdown
Collaborator

Successful host tools can now return bounded inline images through metadata['sharedos/content']. The MCP adapter keeps its existing text summary and appends validated JPEG, PNG, or WebP image blocks, allowing a native MCP harness to see an actual desktop screenshot.

Images are limited to four blocks and 4 MiB of encoded data in total. Invalid payloads and failed tool results never produce image blocks; no URL fetching, exports, or authority rules change.

Validation: 1,140 tests, typecheck, formatting, API docs check, release checks, and conformance checks passed. A real native Codex harness observed and operated two independent Linux desktops through this adapter.

This PR is stacked on feat/reasoning-effort, the existing revision already pinned by the downstream runtime. Only the image-result implementation, tests, and documentation are new here.

Let hosted desktop tools return the actual screenshot to native MCP harnesses while retaining the text summary. Validate inline formats and bounds and exclude failed results; metadata remains a presentation hint, not authority.
@waterdoog
waterdoog merged commit df456d5 into feat/reasoning-effort Oct 31, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant