MCP JSON-RPC batch 400: one message per request, Sume max 4

MCP 2026-07-28 requires one JSON-RPC message per POST. Sume still takes legacy batches of 1 to 4 on the 2025-03-26 shape and returns 400 -32600 otherwise.

4 min readSume
All posts

Send one JSON-RPC message per POST. The MCP 2026-07-28 transport page says the body must be a single request or notification, not a batch array. Sume's remote MCP still accepts a legacy array of 1 to 4 messages, and answers an empty array, an array of more than 4, or an array sent under a later supported protocol version header (2025-06-18 or 2025-11-25) with HTTP 400 and JSON-RPC code -32600.

Spec text read 2026-10-01. Limits are from the Sume's MCP server source; endpoint in the hosted MCP docs.

What is the exact error?

The message is "Legacy MCP batches allow 1–4 messages; current revisions require one message per request." The server's endpoint information also advertises legacy_batch_max_messages with the ceiling.

When does a batch still work?

Sume's MCP server source, read 2026-10-01.
RequestResult
Single object bodyNormal handling
Array of 1 to 4, no version header or 2025-03-26Legacy batch accepted
Array of 0 or more than 4400, -32600
Array with mcp-protocol-version 2025-06-18 or 2025-11-25400, -32600, same message
Any version value Sume does not list (for example 2026-07-28)400, -32600, "Unsupported MCP protocol version."

What do I change in a client that sends arrays?

Stop batching: send each message as its own POST and run them concurrently if you want parallelism. A different 400 covers arrays that mix kinds of tool calls: mixed work classes. Which protocol versions the server negotiates is covered in which version Sume speaks.

Does batching save budget?

Do not assume so. See how the endpoint counts toward the read budget before restructuring calls.

Sources

Related posts

More in Developers

All Developers posts

Written by Sume