René's URL Explorer Experiment


Title: Make client-side cancellation work over the 2026 transports by maxisbey · Pull Request #3046 · modelcontextprotocol/python-sdk · GitHub

Open Graph Title: Make client-side cancellation work over the 2026 transports by maxisbey · Pull Request #3046 · modelcontextprotocol/python-sdk

X Title: Make client-side cancellation work over the 2026 transports by maxisbey · Pull Request #3046 · modelcontextprotocol/python-sdk

Description: The official Python SDK for Model Context Protocol servers and clients - Make client-side cancellation work over the 2026 transports by maxisbey · Pull Request #3046 · modelcontextprotocol/python-sdk

Open Graph Description: Client-side request cancellation was a no-op on the 2026 wire: the modern session stamp forced cancel_on_abandon=False for every request, so abandoning a request (caller cancellation or timeout) ov...

X Description: Client-side request cancellation was a no-op on the 2026 wire: the modern session stamp forced cancel_on_abandon=False for every request, so abandoning a request (caller cancellation or timeout) ov...

Opengraph URL: https://github.com/modelcontextprotocol/python-sdk/pull/3046

X: @github

direct link

Domain: github.com

route-pattern/_view_fragments/voltron/pull_requests/show/:user_id/:repository/:id/pull_request_layout(.:format)
route-controllervoltron_pull_requests_fragments
route-actionpull_request_layout
fetch-noncev2:c8d22e92-2868-aa7e-6cb6-76eaf8d429c4
current-catalog-service-hashae870bc5e265a340912cde392f23dad3671a0a881730ffdadd82f2f57d81641b
request-idEA44:1EE4:1F58CB:29043C:6A5B9728
html-safe-nonce62659c6854092a9effd18696b9b410b0dcbecb0df3bec241f48da072e4f1028c
visitor-payloadeyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJFQTQ0OjFFRTQ6MUY1OENCOjI5MDQzQzo2QTVCOTcyOCIsInZpc2l0b3JfaWQiOiIxNTMwNTM0OTAyMjA2NTM1NDY0IiwicmVnaW9uX2VkZ2UiOiJpYWQiLCJyZWdpb25fcmVuZGVyIjoiaWFkIn0=
visitor-hmac63b29c4798ceecd7b5493ea928acf9c05b44ef00b561e9cb2fc377380ff85412
hovercard-subject-tagpull_request:3972456633
github-keyboard-shortcutsrepository,pull-request-list,pull-request-conversation,pull-request-files-changed,copilot
google-site-verificationApib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I
octolytics-urlhttps://collector.github.com/github/collect
analytics-location///voltron/pull_requests_fragments/pull_request_layout
fb:app_id1401488693436528
apple-itunes-appapp-id=1477376905, app-argument=https://github.com/_view_fragments/voltron/pull_requests/show/modelcontextprotocol/python-sdk/3046/pull_request_layout
twitter:imagehttps://opengraph.githubassets.com/9cac8b53b6ceb7f5ec3dcc3432f09916bff3a60d3a74c9397e2cbf776b848882/modelcontextprotocol/python-sdk/pull/3046
twitter:cardsummary_large_image
og:imagehttps://opengraph.githubassets.com/9cac8b53b6ceb7f5ec3dcc3432f09916bff3a60d3a74c9397e2cbf776b848882/modelcontextprotocol/python-sdk/pull/3046
og:image:altClient-side request cancellation was a no-op on the 2026 wire: the modern session stamp forced cancel_on_abandon=False for every request, so abandoning a request (caller cancellation or timeout) ov...
og:image:width1200
og:image:height600
og:site_nameGitHub
og:typeobject
og:author:usernamemaxisbey
hostnamegithub.com
expected-hostnamegithub.com
None5290d7e14309ad1e76106a9c4237bd1041517e83ea182c8ab756752cb0c6940b
turbo-cache-controlno-cache
go-importgithub.com/modelcontextprotocol/python-sdk git https://github.com/modelcontextprotocol/python-sdk.git
octolytics-dimension-user_id182288589
octolytics-dimension-user_loginmodelcontextprotocol
octolytics-dimension-repository_id862584018
octolytics-dimension-repository_nwomodelcontextprotocol/python-sdk
octolytics-dimension-repository_publictrue
octolytics-dimension-repository_is_forkfalse
octolytics-dimension-repository_network_root_id862584018
octolytics-dimension-repository_network_root_nwomodelcontextprotocol/python-sdk
turbo-body-classeslogged-out env-production page-responsive
disable-turbofalse
browser-stats-urlhttps://api.github.com/_private/browser/stats
browser-errors-urlhttps://api.github.com/_private/browser/errors
release9c975978430e9ad293956f2bbdaf153b1bd84a99
ui-targetfull
theme-color#1e2327
color-schemelight dark

Links:

Skip to contenthttps://github.com/modelcontextprotocol/python-sdk/pull/3046#start-of-content
https://github.com/
Sign in https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fmodelcontextprotocol%2Fpython-sdk%2Fpull%2F3046
GitHub CopilotWrite better code with AIhttps://github.com/features/copilot
GitHub Copilot appDirect agents from issue to mergehttps://github.com/features/ai/github-app
MCP RegistryNewIntegrate external toolshttps://github.com/mcp
ActionsAutomate any workflowhttps://github.com/features/actions
CodespacesInstant dev environmentshttps://github.com/features/codespaces
IssuesPlan and track workhttps://github.com/features/issues
Code ReviewManage code changeshttps://github.com/features/code-review
GitHub Advanced SecurityFind and fix vulnerabilitieshttps://github.com/security/advanced-security
Code securitySecure your code as you buildhttps://github.com/security/advanced-security/code-security
Secret protectionStop leaks before they starthttps://github.com/security/advanced-security/secret-protection
Why GitHubhttps://github.com/why-github
Documentationhttps://docs.github.com
Bloghttps://github.blog
Changeloghttps://github.blog/changelog
Marketplacehttps://github.com/marketplace
View all featureshttps://github.com/features
Enterpriseshttps://github.com/enterprise
Small and medium teamshttps://github.com/team
Startupshttps://github.com/enterprise/startups
Nonprofitshttps://github.com/solutions/industry/nonprofits
App Modernizationhttps://github.com/solutions/use-case/app-modernization
DevSecOpshttps://github.com/solutions/use-case/devsecops
DevOpshttps://github.com/solutions/use-case/devops
CI/CDhttps://github.com/solutions/use-case/ci-cd
View all use caseshttps://github.com/solutions/use-case
Healthcarehttps://github.com/solutions/industry/healthcare
Financial serviceshttps://github.com/solutions/industry/financial-services
Manufacturinghttps://github.com/solutions/industry/manufacturing
Governmenthttps://github.com/solutions/industry/government
View all industrieshttps://github.com/solutions/industry
View all solutionshttps://github.com/solutions
AIhttps://github.com/resources/articles?topic=ai
Software Developmenthttps://github.com/resources/articles?topic=software-development
DevOpshttps://github.com/resources/articles?topic=devops
Securityhttps://github.com/resources/articles?topic=security
View all topicshttps://github.com/resources/articles
Customer storieshttps://github.com/customer-stories
Events & webinarshttps://github.com/resources/events
Ebooks & reportshttps://github.com/resources/whitepapers
Business insightshttps://github.com/solutions/executive-insights
GitHub Skillshttps://skills.github.com
Documentationhttps://docs.github.com
Customer supporthttps://support.github.com
Community forumhttps://github.com/orgs/community/discussions
Trust centerhttps://github.com/trust-center
Partnershttps://github.com/partners
View all resourceshttps://github.com/resources
GitHub SponsorsFund open source developershttps://github.com/open-source/sponsors
Security Labhttps://securitylab.github.com
Maintainer Communityhttps://maintainers.github.com
Acceleratorhttps://github.com/open-source/accelerator
GitHub Starshttps://stars.github.com
Archive Programhttps://archiveprogram.github.com
Topicshttps://github.com/topics
Trendinghttps://github.com/trending
Collectionshttps://github.com/collections
Enterprise platformAI-powered developer platformhttps://github.com/enterprise
GitHub Advanced SecurityEnterprise-grade security featureshttps://github.com/security/advanced-security
Copilot for BusinessEnterprise-grade AI featureshttps://github.com/features/copilot/copilot-business
Premium SupportEnterprise-grade 24/7 supporthttps://github.com/enterprise/premium-support
Pricinghttps://github.com/pricing
Search syntax tipshttps://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax
documentationhttps://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax
Sign in https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fmodelcontextprotocol%2Fpython-sdk%2Fpull%2F3046
Sign up https://github.com/signup?ref_cta=Sign+up&ref_loc=header+logged+out&ref_page=%2F%3Cuser-name%3E%2F%3Crepo-name%3E%2Fvoltron%2Fpull_requests_fragments%2Fpull_request_layout&source=header-repo&source_repo=modelcontextprotocol%2Fpython-sdk
Reloadhttps://github.com/modelcontextprotocol/python-sdk/pull/3046
Reloadhttps://github.com/modelcontextprotocol/python-sdk/pull/3046
Reloadhttps://github.com/modelcontextprotocol/python-sdk/pull/3046
Please reload this pagehttps://github.com/modelcontextprotocol/python-sdk/pull/3046
modelcontextprotocol https://github.com/modelcontextprotocol
python-sdkhttps://github.com/modelcontextprotocol/python-sdk
Notifications https://github.com/login?return_to=%2Fmodelcontextprotocol%2Fpython-sdk
Fork 3.7k https://github.com/login?return_to=%2Fmodelcontextprotocol%2Fpython-sdk
Star 23.6k https://github.com/login?return_to=%2Fmodelcontextprotocol%2Fpython-sdk
Code https://github.com/modelcontextprotocol/python-sdk
Issues 259 https://github.com/modelcontextprotocol/python-sdk/issues
Pull requests 305 https://github.com/modelcontextprotocol/python-sdk/pulls
Actions https://github.com/modelcontextprotocol/python-sdk/actions
Projects https://github.com/modelcontextprotocol/python-sdk/projects
Models https://github.com/modelcontextprotocol/python-sdk/models
Security and quality 6 https://github.com/modelcontextprotocol/python-sdk/security
Insights https://github.com/modelcontextprotocol/python-sdk/pulse
Code https://github.com/modelcontextprotocol/python-sdk
Issues https://github.com/modelcontextprotocol/python-sdk/issues
Pull requests https://github.com/modelcontextprotocol/python-sdk/pulls
Actions https://github.com/modelcontextprotocol/python-sdk/actions
Projects https://github.com/modelcontextprotocol/python-sdk/projects
Models https://github.com/modelcontextprotocol/python-sdk/models
Security and quality https://github.com/modelcontextprotocol/python-sdk/security
Insights https://github.com/modelcontextprotocol/python-sdk/pulse
maxisbeyhttps://github.com/maxisbey
mainhttps://github.com/modelcontextprotocol/python-sdk/tree/main
listen-client-plumbinghttps://github.com/modelcontextprotocol/python-sdk/tree/listen-client-plumbing
Conversationhttps://github.com/modelcontextprotocol/python-sdk/pull/3046
Commits3 (3)https://github.com/modelcontextprotocol/python-sdk/pull/3046/commits
Checkshttps://github.com/modelcontextprotocol/python-sdk/pull/3046/checks
Files changedhttps://github.com/modelcontextprotocol/python-sdk/pull/3046/files
Make client-side cancellation work over the 2026 transportshttps://github.com/modelcontextprotocol/python-sdk/pull/3046#top
maxisbeyhttps://github.com/maxisbey
mainhttps://github.com/modelcontextprotocol/python-sdk/tree/main
listen-client-plumbinghttps://github.com/modelcontextprotocol/python-sdk/tree/listen-client-plumbing
https://github.com/maxisbey
maxisbeyhttps://github.com/maxisbey
Jul 1, 2026https://github.com/modelcontextprotocol/python-sdk/pull/3046#issue-4787575271
MCP Documentationhttps://modelcontextprotocol.io
Please reload this pagehttps://github.com/modelcontextprotocol/python-sdk/pull/3046
https://github.com/maxisbey
maxisbeyhttps://github.com/maxisbey
Jul 1, 2026 https://github.com/modelcontextprotocol/python-sdk/pull/3046#ref-pullrequest-4788079502
Add the client-side subscriptions/listen driver #3047 https://github.com/modelcontextprotocol/python-sdk/pull/3047
https://github.com/maxisbey
Make client-side cancellation work over the 2026 transportshttps://github.com/modelcontextprotocol/python-sdk/pull/3046/commits/69e6cd38a919be2c39503c052ff1ae349e9f63c3
69e6cd3https://github.com/modelcontextprotocol/python-sdk/pull/3046/commits/69e6cd38a919be2c39503c052ff1ae349e9f63c3
https://github.com/maxisbey
maxisbeyhttps://github.com/maxisbey
force-pushedhttps://github.com/modelcontextprotocol/python-sdk/compare/469fdb2f351447157e667581f18875d474795502..69e6cd38a919be2c39503c052ff1ae349e9f63c3
469fdb2https://github.com/modelcontextprotocol/python-sdk/commit/469fdb2f351447157e667581f18875d474795502
69e6cd3https://github.com/modelcontextprotocol/python-sdk/commit/69e6cd38a919be2c39503c052ff1ae349e9f63c3
Compare https://github.com/modelcontextprotocol/python-sdk/compare/469fdb2f351447157e667581f18875d474795502..69e6cd38a919be2c39503c052ff1ae349e9f63c3
July 2, 2026 15:35https://github.com/modelcontextprotocol/python-sdk/pull/3046#event-27487298995
https://github.com/maxisbey
maxisbeyhttps://github.com/maxisbey
July 2, 2026 15:53https://github.com/modelcontextprotocol/python-sdk/pull/3046#event-27488096011
https://github.com/apps/cubic-dev-ai
cubic-dev-aihttps://github.com/apps/cubic-dev-ai
Jul 2, 2026 https://github.com/modelcontextprotocol/python-sdk/pull/3046#pullrequestreview-4619240919
View reviewed changes https://github.com/modelcontextprotocol/python-sdk/pull/3046/files/69e6cd38a919be2c39503c052ff1ae349e9f63c3
cubic-dev-aihttps://github.com/apps/cubic-dev-ai
https://github.com/modelcontextprotocol/python-sdk/pull/3046#pullrequestreview-4619240919
Learn morehttps://docs.github.com/articles/managing-disruptive-comments/#hiding-a-comment
Re-trigger cubichttps://www.cubic.dev/action/re-review/pr/modelcontextprotocol/python-sdk/3046/ai_pr_review_1783007611231_d19c07b6-08be-407f-8fcc-ecf0d6308f62?returnTo=https%3A%2F%2Fgithub.com%2Fmodelcontextprotocol%2Fpython-sdk%2Fpull%2F3046
Please reload this pagehttps://github.com/modelcontextprotocol/python-sdk/pull/3046
https://github.com/apps/claude
claudehttps://github.com/apps/claude
Jul 2, 2026 https://github.com/modelcontextprotocol/python-sdk/pull/3046#pullrequestreview-4619384089
View reviewed changes https://github.com/modelcontextprotocol/python-sdk/pull/3046/files/69e6cd38a919be2c39503c052ff1ae349e9f63c3
claudehttps://github.com/apps/claude
https://github.com/modelcontextprotocol/python-sdk/pull/3046#pullrequestreview-4619384089
Learn morehttps://docs.github.com/articles/managing-disruptive-comments/#hiding-a-comment
Please reload this pagehttps://github.com/modelcontextprotocol/python-sdk/pull/3046
maxisbeyhttps://github.com/maxisbey
July 2, 2026 16:59https://github.com/modelcontextprotocol/python-sdk/pull/3046#commits-pushed-79c3ac3
https://github.com/maxisbey
Pin the abandonment-cancellation contract in the interaction suitehttps://github.com/modelcontextprotocol/python-sdk/pull/3046/commits/79c3ac3a8b841552028344887d49b86ef0baf06e
79c3ac3https://github.com/modelcontextprotocol/python-sdk/pull/3046/commits/79c3ac3a8b841552028344887d49b86ef0baf06e
https://github.com/maxisbey
Tighten the cancellation-suite manifest provenance and wire pinshttps://github.com/modelcontextprotocol/python-sdk/pull/3046/commits/6cb8de14a122998329dcb5cc44b4449979d768fe
6cb8de1https://github.com/modelcontextprotocol/python-sdk/pull/3046/commits/6cb8de14a122998329dcb5cc44b4449979d768fe
https://github.com/felixweinberger
felixweinbergerhttps://github.com/felixweinberger
Jul 2, 2026 https://github.com/modelcontextprotocol/python-sdk/pull/3046#pullrequestreview-4620191719
View reviewed changes https://github.com/modelcontextprotocol/python-sdk/pull/3046/files/6cb8de14a122998329dcb5cc44b4449979d768fe
https://github.com/maxisbey
maxisbeyhttps://github.com/maxisbey
53117cbhttps://github.com/modelcontextprotocol/python-sdk/commit/53117cb3a9011da841112a569bbd8fdcfd6dcfd2
Jul 2, 2026https://github.com/modelcontextprotocol/python-sdk/pull/3046#event-27494157971
Please reload this pagehttps://github.com/modelcontextprotocol/python-sdk/pull/3046
https://github.com/maxisbey
maxisbeyhttps://github.com/maxisbey
July 2, 2026 18:21https://github.com/modelcontextprotocol/python-sdk/pull/3046#event-27494159443
https://github.com/akminx
akminxhttps://github.com/akminx
Jul 4, 2026 https://github.com/modelcontextprotocol/python-sdk/pull/3046#ref-issue-4805450775
streamable HTTP (stateful): concurrent requests with duplicate JSON-RPC ids cross-wire responses — one request receives another's payload, the other hangs #3060 https://github.com/modelcontextprotocol/python-sdk/issues/3060
https://github.com/Sammy-Dabbas
Sammy-Dabbashttps://github.com/Sammy-Dabbas
Jul 4, 2026 https://github.com/modelcontextprotocol/python-sdk/pull/3046#ref-pullrequest-4807743810
fix(streamable-http): reject duplicate in-flight request ids #3063 https://github.com/modelcontextprotocol/python-sdk/pull/3063
https://github.com/akminx
akminxhttps://github.com/akminx
Jul 5, 2026 https://github.com/modelcontextprotocol/python-sdk/pull/3046#ref-pullrequest-4811461120
fix(dispatcher): reject duplicate in-flight request ids #3064 https://github.com/modelcontextprotocol/python-sdk/pull/3064
Add the todos-server reference example #3048 https://github.com/modelcontextprotocol/python-sdk/pull/3048
subscriptions/listen #2901 https://github.com/modelcontextprotocol/python-sdk/issues/2901
https://github.com/ayaangazali
ayaangazalihttps://github.com/ayaangazali
Jul 18, 2026 https://github.com/modelcontextprotocol/python-sdk/pull/3046#ref-issue-4917967899
Dispatcher mints a request id already used by a completed caller-supplied request (spec: ids MUST NOT be reused in a session) #3126 https://github.com/modelcontextprotocol/python-sdk/issues/3126
https://github.co/hiddenchars
https://github.com/modelcontextprotocol/python-sdk/pull/{{ revealButtonHref }}
Sign up for freehttps://github.com/join?source=comment-repo
Sign in to commenthttps://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fmodelcontextprotocol%2Fpython-sdk%2Fpull%2F3046
https://github.com/apps/cubic-dev-ai
cubic-dev-ai[bot] https://github.com/apps/cubic-dev-ai
https://github.com/modelcontextprotocol/python-sdk/pull/3046/files/69e6cd38a919be2c39503c052ff1ae349e9f63c3
https://github.com/apps/claude
claude[bot] https://github.com/apps/claude
https://github.com/modelcontextprotocol/python-sdk/pull/3046/files/69e6cd38a919be2c39503c052ff1ae349e9f63c3
https://github.com/felixweinberger
felixweinberger https://github.com/felixweinberger
https://github.com/modelcontextprotocol/python-sdk/pull/3046/files/6cb8de14a122998329dcb5cc44b4449979d768fe
Please reload this pagehttps://github.com/modelcontextprotocol/python-sdk/pull/3046
https://github.com/maxisbey
https://github.com/felixweinberger
https://github.com
Termshttps://docs.github.com/site-policy/github-terms/github-terms-of-service
Privacyhttps://docs.github.com/site-policy/privacy-policies/github-privacy-statement
Securityhttps://github.com/security
Statushttps://www.githubstatus.com/
Communityhttps://github.community/
Docshttps://docs.github.com/
Contacthttps://support.github.com?tags=dotcom-footer

Viewport: width=device-width


URLs of crawlers that visited me.