OpenAI Agents Python MCP non-text content as JSON: Sume results

openai-agents-python v0.20.0 serializes non-text MCP blocks as JSON. Sume tool results are text blocks, with media delivered as URLs inside the JSON.

4 min readSume
All posts

openai-agents-python v0.20.0 now serializes non-text MCP content blocks as JSON instead of Python repr. Sume does not depend on that path: its MCP tool results are a single text block, and generated media comes back as a URL inside that text, so the upgrade changes nothing about how you read Sume output.

The release line is from the openai-agents-python release notes; the result shape is from Sume's MCP server code and Jobs and results, read 2026-10-01.

What does the Sume result look like?

In the server code a successful call returns { content: [{ type: "text", text }], isError: false }, where text is the JSON-stringified record. Failures use the same single text block with isError: true. No image or audio blocks are involved.

Where do the media files go?

Finished artifacts carry a durable URL under https://media.sume.com/artifacts/... in the job result, as the docs show. For an asset, the tools list names assets_download_url as a read tool. So your agent receives a link as text and fetches the file itself.

Sume MCP result facts, read 2026-10-01
PropertyValue
Content block typetext only
Media deliveryURL in the JSON, media.sume.com
Output limitMCP_OUTPUT_MAX_BYTES = 256 KiB (256 * 1024)
Over the limitmcp_output_too_large error result

What should I check in my agent?

Parse the text as JSON and read the URL field; do not expect inline bytes. Keep reads narrow so results stay under the 256 KiB budget. For long renders, wait on jobs rather than polling; see waiting for long video jobs over MCP.

Sources

Related posts

More in Developers

All Developers posts

Written by Sume