| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
Progress notifications sent via Context.report_progress() were silently dropped in stateless HTTP / SSE transports because the call to send_progress_notification() was missing the related_request_id parameter. The SSE transport relies on this field to route notifications back to the correct client stream. Add related_request_id=self.request_id to the send_progress_notification() call, consistent with how send_log_message() already passes it. Reported-by: hubbard-zlee Github-Issue: modelcontextprotocol#2001
|
Hi team, friendly ping — I noticed this PR has the "needs confirmation" label. Could a maintainer confirm whether this fix is needed? Happy to adjust the approach or provide more context if that helps. Thanks! |
Sorry, something went wrong.
|
Friendly ping — this fix ensures related_request_id is correctly passed in Context.report_progress() per the MCP spec. CI is green. Would appreciate a review when you get a chance. Thanks! |
Sorry, something went wrong.
|
This is the same one-line change that later landed on v1.x as #2994 (commit 9678a3b3, merged 2026-06-26), which also updated tests/issues/test_176_progress_token.py to assert related_request_id. v1.x carries the fix now, so this looks superseded and can probably be closed. One note for anyone reaching this from a search: the fix is not in a published release yet. 1.28.1 predates the merge and is still the latest 1.x on PyPI. Details in #2001. |
Sorry, something went wrong.
|
Thanks for the PR, and sorry it sat without a review — the identical change (related_request_id in Context.report_progress()) went in on the v1.x line via #2994, so there's nothing left to merge here. On main progress is routed request-scoped by design. Closing this as part of a wider backlog cleanup following the v2 launch. If it's still relevant, feel free to reopen. |
Sorry, something went wrong.
| Back | FazBrowse Home | New Git URL |
Summary
Context.report_progress() notifications were silently dropped in stateless HTTP / SSE transports because send_progress_notification() was called without the related_request_id parameter. The transport layer uses this field to route server-initiated notifications back to the correct client SSE stream; without it, progress notifications are discarded.
This adds related_request_id=self.request_id to the send_progress_notification() call inside Context.report_progress(), making it consistent with send_log_message() which already passes the field correctly.
Changes
Closes #2001