Title: fix: forward stdio server stderr through errlog by jordansilly77-stack · Pull Request #2915 · modelcontextprotocol/python-sdk · GitHub
Open Graph Title: fix: forward stdio server stderr through errlog by jordansilly77-stack · Pull Request #2915 · modelcontextprotocol/python-sdk
X Title: fix: forward stdio server stderr through errlog by jordansilly77-stack · Pull Request #2915 · modelcontextprotocol/python-sdk
Description: Summary pipe stdio server stderr on POSIX instead of handing the current sys.stderr object directly to the subprocess forward stderr chunks through the existing errlog stream close the stderr pipe during shutdown and add a regression test for errlog forwarding Fixes #156. Testing python3 -m py_compile src/mcp/client/stdio.py tests/client/test_stdio.py uv run ruff check src/mcp/client/stdio.py tests/client/test_stdio.py uv run ruff format src/mcp/client/stdio.py tests/client/test_stdio.py --check I could not complete the local pytest run on this Mac because the repository virtualenv hits local plugin/import issues, including macOS blocking black's compiled extension and slow logfire/pydantic plugin imports. The focused code and formatting checks above pass; CI should provide the full pytest signal. AI disclosure AI assistance was used to research the issue context, draft the patch, and run local checks. The final changes were reviewed before submission.
Open Graph Description: Summary pipe stdio server stderr on POSIX instead of handing the current sys.stderr object directly to the subprocess forward stderr chunks through the existing errlog stream close the stderr pipe...
X Description: Summary pipe stdio server stderr on POSIX instead of handing the current sys.stderr object directly to the subprocess forward stderr chunks through the existing errlog stream close the stderr pipe...
Opengraph URL: https://github.com/modelcontextprotocol/python-sdk/pull/2915
X: @github
Domain: github.com
| route-pattern | /:user_id/:repository/pull/:id/files(.:format) |
| route-controller | pull_requests |
| route-action | files |
| fetch-nonce | v2:3c458fb7-4369-f72f-b6cd-b7ccb6b5fb22 |
| current-catalog-service-hash | ae870bc5e265a340912cde392f23dad3671a0a881730ffdadd82f2f57d81641b |
| request-id | 80CA:198581:1C53776:25A390D:6A5AEACB |
| html-safe-nonce | 57e0b22cd5f85bc837a5529d6f38b30ce56d25d3b9f644b2047d81dcad7a7305 |
| visitor-payload | eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiI4MENBOjE5ODU4MToxQzUzNzc2OjI1QTM5MEQ6NkE1QUVBQ0IiLCJ2aXNpdG9yX2lkIjoiNjkyNDU1ODg5NDQ1NjU2NDQyOCIsInJlZ2lvbl9lZGdlIjoiaWFkIiwicmVnaW9uX3JlbmRlciI6ImlhZCJ9 |
| visitor-hmac | 8e4d1cbca7712a4565f223b34c2c86f22b8af015645fb108914f39b767eae026 |
| hovercard-subject-tag | pull_request:3902421206 |
| github-keyboard-shortcuts | repository,pull-request-list,pull-request-conversation,pull-request-files-changed,copilot |
| google-site-verification | Apib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I |
| octolytics-url | https://collector.github.com/github/collect |
| analytics-location | / |
| fb:app_id | 1401488693436528 |
| apple-itunes-app | app-id=1477376905, app-argument=https://github.com/modelcontextprotocol/python-sdk/pull/2915/files |
| twitter:image | https://avatars.githubusercontent.com/u/264403606?s=400&v=4 |
| twitter:card | summary_large_image |
| og:image | https://avatars.githubusercontent.com/u/264403606?s=400&v=4 |
| og:image:alt | Summary pipe stdio server stderr on POSIX instead of handing the current sys.stderr object directly to the subprocess forward stderr chunks through the existing errlog stream close the stderr pipe... |
| og:site_name | GitHub |
| og:type | object |
| hostname | github.com |
| expected-hostname | github.com |
| None | 5290d7e14309ad1e76106a9c4237bd1041517e83ea182c8ab756752cb0c6940b |
| turbo-cache-control | no-preview |
| diff-view | unified |
| go-import | github.com/modelcontextprotocol/python-sdk git https://github.com/modelcontextprotocol/python-sdk.git |
| octolytics-dimension-user_id | 182288589 |
| octolytics-dimension-user_login | modelcontextprotocol |
| octolytics-dimension-repository_id | 862584018 |
| octolytics-dimension-repository_nwo | modelcontextprotocol/python-sdk |
| octolytics-dimension-repository_public | true |
| octolytics-dimension-repository_is_fork | false |
| octolytics-dimension-repository_network_root_id | 862584018 |
| octolytics-dimension-repository_network_root_nwo | modelcontextprotocol/python-sdk |
| turbo-body-classes | logged-out env-production page-responsive full-width |
| disable-turbo | true |
| browser-stats-url | https://api.github.com/_private/browser/stats |
| browser-errors-url | https://api.github.com/_private/browser/errors |
| release | 9c975978430e9ad293956f2bbdaf153b1bd84a99 |
| ui-target | full |
| theme-color | #1e2327 |
| color-scheme | light dark |
Links:
Viewport: width=device-width