fix: add missing id/sessionID/messageID to MCP tool attachments by NatChung · Pull Request #14345 · anomalyco/opencode
MCP tool results (e.g. Playwright screenshots) return attachments without id, sessionID, and messageID fields. This causes downstream Zod validation to fail because MessageV2.FilePart requires these fields. Built-in tools already map attachments to include these fields (line 808-814), but the MCP tool path (line 874) explicitly omits them. This patch applies the same mapping to MCP tool attachments, making both paths consistent. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
NatChung
deleted the
fix/mcp-tool-attachment-ids
branch
lacymorrow added a commit to lacymorrow/lash that referenced this pull request
Feb 22, 2026* upstream/dev: (476 commits) release: v1.2.9 fix: issue from structuredClone addition by using unwrap (anomalyco#14359) tweak(ui): adjust session feed spacing tweak(ui): tone down reasoning emphasis tweak(ui): refine session feed spacing fix(desktop): restore settings header mask tweak(ui): nudge edited files chevron tweak(ui): stabilize collapsible chevron hover fix: add missing id/sessionID/messageID to MCP tool attachments (anomalyco#14345) Use structuredClone instead of remeda's clone (anomalyco#14351) remove unnecessary deep clones from session loop and LLM stream (anomalyco#14354) fix(web): correct config import path in Korean enterprise docs docs: update providers layout and Windows sidebar label core: remove User-Agent header assertion from LLM test to fix failing test release: v1.2.8 fix(app): black screen on launch with sidecar server chore: generate feat(opencode): support adaptive thinking for claude sonnet 4.6 (anomalyco#14283) feat(tui): add custom tool and mcp call responses visible and collapsable (anomalyco#10649) chore: cleanup ... # Conflicts: # bun.lock # packages/app/package.json # packages/console/app/package.json # packages/console/core/package.json # packages/console/function/package.json # packages/console/mail/package.json # packages/desktop/package.json # packages/enterprise/package.json # packages/extensions/zed/extension.toml # packages/function/package.json # packages/opencode/package.json # packages/opencode/src/cli/cmd/tui/component/prompt/index.tsx # packages/opencode/src/cli/cmd/tui/routes/home.tsx # packages/opencode/src/config/config.ts # packages/opencode/src/tool/lsp.ts # packages/opencode/src/tool/read.ts # packages/plugin/package.json # packages/sdk/js/package.json # packages/slack/package.json # packages/ui/package.json # packages/util/package.json # packages/web/package.json # sdks/vscode/package.json
jonathanmiddleton pushed a commit to jonathanmiddleton/opencode that referenced this pull request
Mar 10, 2026This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters