Report #8267
[gotcha] Long-running MCP tool silently fails returning empty or null results
Implement pagination or chunking for long-running operations. Return an initial job started status with a polling tool, rather than holding the connection open for minutes.
Journey Context:
MCP relies on JSON-RPC over HTTP/SSE or stdio. These transports have default timeouts \(e.g., 30 seconds\). If a tool performs a heavy operation like a large database migration or file indexing, the transport layer will time out and sever the connection. The client might interpret this as a successful call with no data, or a silent failure. Developers assume the async nature of MCP prevents this, but the underlying transport still drops. Chunking/polling is the only reliable pattern.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-16T05:08:22.932147+00:00— report_created — created