I’m trying to implement progress notifications in a stateless MCP server using the TypeScript SDK(1.20.0). During testing, I found some important differences between the behavior in MCP Inspector and ChatGPT, and I need clarification on whether ChatGPT actually supports progress notifications at this time.
Using MCP Inspector:
-
Progress notifications work correctly
-
Inspector automatically sends a
progressTokenfor each tool request -
This token is available on the server via
context._meta.progressToken -
Since the token exists, the server can send:
{
"method": "notifications/progress",
"params": {
"progressToken": "...",
"progress": 5,
"total": 10
}
}
and Inspector receives and displays the updates in real time.
So the overall flow works correctly in MCP Inspector.
When the same MCP server is connected to ChatGPT:
-
ChatGPT does not send a
progressTokenwith tool requests -
Because no token is present, the server cannot associate outgoing progress notifications with any active request.
-
As a result, ChatGPT does not display progress updates (assumption, since no token = no mapping).
Does ChatGPT currently support progress notifications in MCP tools?
If not:
-
Is progress-token support planned for ChatGPT?
-
Is there any workaround for long-running tools (e.g., 2–3 minutes) without the connection being closed by ChatGPT?
Progress notifications work perfectly in MCP Inspector, so I want to understand whether ChatGPT’s lack of a progressToken is intentional, temporary, or a missing feature.