MCP: Streaming responses for tool calls (August 2026) (Pending)¶
Starting August 20, 2026, Snowflake’s managed MCP server returns tool call responses as Server-Sent Events (SSE) streams instead of single JSON payloads. This aligns Snowflake’s MCP implementation with the MCP specification (2025-11-25), which requires clients to support SSE as a transport. MCP clients that follow the official specification are already compliant and require no changes. Clients that parse the tools/call response as a single JSON body must be updated to consume an SSE stream.
Important
All information in this notice, including the planned date, is subject to change.
Behavior change¶
- Before the change:
When an MCP client sends a
tools/callrequest to the Snowflake MCP endpoint, the server returns the result as a single JSON response:- After the change:
When an MCP client sends a
tools/callrequest to the Snowflake MCP endpoint, the server initializes a Server-Sent Events stream:Per the MCP specification, the client must include an
Acceptheader that lists bothapplication/jsonandtext/event-streamas accepted content types:
Impact¶
This change affects MCP clients that interact with the Snowflake managed MCP server and parse the tools/call response as a single JSON body. Specifically:
- Clients that don’t include
text/event-streamin theAcceptheader may receive an error or an unexpected response format. - Clients that read the full response body as JSON (for example,
response.json()in Python orresponse.json()in JavaScriptfetch) won’t receive a complete result because the response body is now a stream. - Clients that follow the MCP specification (2025-11-25) and already handle SSE responses aren’t affected.
Note
This change applies to the Snowflake managed MCP server only. It doesn’t affect external MCP servers configured as connectors on Cortex Agents, or any other Snowflake REST API endpoint.
What you should do¶
If your MCP client parses the tools/call response as a single JSON body, update it before August 20, 2026:
-
Update the Accept header. Add
text/event-streamto theAcceptheader on all requests to the Snowflake MCP endpoint: -
Handle the SSE response. Update your response handler to consume an SSE stream instead of a single JSON body. The stream delivers one or more
data:events and closes with adata: [DONE]event.Example using Python (
httpx-sse):Example using Node.js (
eventsource-parser): -
Review the MCP specification. Review the MCP transport specification to confirm your client is fully compliant with the 2025-11-25 version.
Tip
If you use the official MCP TypeScript SDK (@modelcontextprotocol/sdk), switch from a plain HTTP transport to SSEClientTransport. The SDK handles the Accept header and stream parsing automatically.
See also¶
- Snowflake-managed MCP server
- MCP transport specification (2025-11-25)
- Behavior change policy
- Unbundled behavior changes
Ref: 2405