Is your feature request related to a problem? Please describe.
We are working on an MCP Server with long-running tools, and in such scenarios, it becomes important to provide progress updates to the client so users know that the tool is actively running and not stuck. Such long running tools should be kept alive until the tool is sending progress updates.
The Model Context Protocol (MCP) already defines support for this through the progress utility: https://modelcontextprotocol.io/specification/2025-11-25/basic/utilities/progress.
This mechanism requires the MCP Client to include a progressToken in the requests and the MCP server tools could then send progress notifications using that token.
However, when Amazon Q calls the MCP tools, these capabilities are not currently supported i.e. the MCP server/tools does not receive any progressToken with the tool call request. As a result, long-running tools cannot provide progress updates, leaving users without visibility into ongoing execution and also terminates the tool after 60 seconds (strict timeout in Amazon Q)
Describe the solution you'd like
- Progress Token Support
Amazon Q (MCP client) could include a progressToken in tool call requests to enable progress tracking.
- Keep tool-call session alive
The client could then reset or extend tool execution timeouts upon receiving progress notifications, allowing long-running tools to continue execution as long as updates are being sent.
- User Feedback in UI
Progress updates from the MCP server could be then displayed in the chat interface, providing users with real-time visibility into tool execution.
Describe alternatives you've considered
-No alternative available for progress tracking if the client does not support
Is your feature request related to a problem? Please describe.
We are working on an MCP Server with long-running tools, and in such scenarios, it becomes important to provide progress updates to the client so users know that the tool is actively running and not stuck. Such long running tools should be kept alive until the tool is sending progress updates.
The Model Context Protocol (MCP) already defines support for this through the progress utility: https://modelcontextprotocol.io/specification/2025-11-25/basic/utilities/progress.
This mechanism requires the MCP Client to include a progressToken in the requests and the MCP server tools could then send progress notifications using that token.
However, when Amazon Q calls the MCP tools, these capabilities are not currently supported i.e. the MCP server/tools does not receive any progressToken with the tool call request. As a result, long-running tools cannot provide progress updates, leaving users without visibility into ongoing execution and also terminates the tool after 60 seconds (strict timeout in Amazon Q)
Describe the solution you'd like
Amazon Q (MCP client) could include a progressToken in tool call requests to enable progress tracking.
The client could then reset or extend tool execution timeouts upon receiving progress notifications, allowing long-running tools to continue execution as long as updates are being sent.
Progress updates from the MCP server could be then displayed in the chat interface, providing users with real-time visibility into tool execution.
Describe alternatives you've considered
-No alternative available for progress tracking if the client does not support