Four kinds of part Top: a part holds exactly one of four content members, text, raw, url or data, and every kind can also carry mediaType, filename and metadata. Below, four parts from the captures in the order they were sent: the refunds.diff file the planner sent as raw base64 with media type text/x-diff, the code-reviewer question as text, the review findings as a data part with media type application/json, and a url part labelled image/png that code-reviewer rejects with error -32005 CONTENT_TYPE_NOT_SUPPORTED. ONE PART HOLDS EXACTLY ONE OF OPTIONAL ON EVERY KIND text raw url data mediaType filename metadata FOUR PARTS FROM THE CAPTURES, IN THE ORDER THEY WERE SENT raw LS0tIGEvcGF5bWVudHMvcmVmdW5kcy5weQor first 36 of 236 base64 characters filename "refunds.diff" mediaType "text/x-diff" sent by the planner, a five-line diff · 06-input-required.http text "Which base branch should I compare this diff against?" mediaType absent: the kit reads it as text/plain sent by code-reviewer in status.message · 06-input-required.http data "base": "main" plus "findings", two objects with file, line, severity, finding mediaType "application/json" part 2 of the review.json artifact, sent by code-reviewer · 06-input-required.http url "https://example.com/screenshot.png" mediaType "image/png" sent by the planner · 11-errors.http CONTENT_TYPE_NOT_SUPPORTED rejected with error -32005