You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
BUG-001: MCP tool call missing progressToken injection causing timeout on long reviews (-32001) #14499
OpenCode experiences -32001 timeout errors during long-running code reviews (10~20 minutes) when calling MCP tools (like review-mcp), even though:
The MCP server has implemented progress notifications with 12-second heartbeat
OpenCode client has resetTimeoutOnProgress: true set
The timeout errors still occur, indicating a broken link between "server heartbeat exists" and "client timeout renewal works".
Root Cause Analysis
The issue is NOT whether the server sends heartbeat, but whether the client establishes a complete timeout renewal chain: progressToken + progress handler + resetTimeoutOnProgress.
Current Data Flow (Broken Link)
Step
Input
Process
Output
File
1. Tool wrapper
MCP tool definition
convertMcpTool generates dynamic tool
execute(args)
packages/opencode/src/mcp/index.ts:120
2. Tool call
args
calls client.callTool
MCP request
packages/opencode/src/mcp/index.ts:135
3. Request options
resetTimeoutOnProgress=true + timeout
Missing onprogress callback
No progress handler
packages/opencode/src/mcp/index.ts:142
4. SDK request construction
call options
Only injects _meta.progressToken when options.onprogress exists
@jaried are you planning to follow up on your PR? It looks like there are build failures. I also would really like to see this merged as the default timeouts are painful for long running calls.
Activity
fix: add onprogress callback to MCP tool calls for timeout renewal
flood-runner commentedon Mar 14, 2026
thanks @jaried for raising this
we run MCP servers with long-running container and infrastructure operations, this is blocking us
hhoughgg commentedon Mar 20, 2026
@jaried are you planning to follow up on your PR? It looks like there are build failures. I also would really like to see this merged as the default timeouts are painful for long running calls.
claui commentedon May 5, 2026
I think this is now being addressed in #24964.