Skip to content

docs: use auto lifecycle in streamable HTTP example - #1187

Merged
DaleSeo merged 1 commit into
mainfrom
fix/1164-streamable-http-auto-lifecycle
Aug 28, 2026
Merged

docs: use auto lifecycle in streamable HTTP example#1187
DaleSeo merged 1 commit into
mainfrom
fix/1164-streamable-http-auto-lifecycle

Conversation

@DaleSeo

@DaleSeo DaleSeo commented Aug 18, 2026

Copy link
Copy Markdown
Member

Closes #1164.

Motivation and Context

This PR updates the example to use ClientLifecycleMode::Auto. It prefers the 2026-07-28 protocol and falls back to legacy initialization with 2025-11-25. It also gives the example the correct identity and calls the argument-free increment tool without creating an unnecessary empty JSON object.

How Has This Been Tested?

Breaking Changes

None.

Types of changes

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to change)
  • Documentation update

Checklist

  • I have read the MCP Documentation
  • My code follows the repository's style guidelines
  • New and existing tests pass locally
  • I have added appropriate error handling
  • I have added or updated documentation as needed

@github-actions github-actions Bot added the T-examples Example code changes label Aug 18, 2026
@DaleSeo DaleSeo self-assigned this Aug 18, 2026
@DaleSeo
DaleSeo marked this pull request as ready for review August 18, 2026 09:12
@DaleSeo
DaleSeo requested a review from a team as a code owner August 18, 2026 09:12
@DaleSeo
DaleSeo merged commit 1afde5b into main Aug 28, 2026
22 checks passed
@DaleSeo
DaleSeo deleted the fix/1164-streamable-http-auto-lifecycle branch August 28, 2026 22:42
jmagar added a commit to dinglebear-ai/rust-sdk that referenced this pull request Sep 4, 2026
* fix: allow concurrent streamable http requests (modelcontextprotocol#1186)

* fix: allow concurrent streamable http requests

* fix: keep streamable http recovery responsive

Keep cancellation and replies available while old session POSTs finish.
Bound the wait for old POSTs and the replacement initialization handshake.
Do not retry interrupted POSTs because the server may have processed them.

Add regressions for recovery, queued cancellation, control timeouts, and
server replies needed by active requests.

* fix: preserve response and cancellation ordering

* refactor: clarify streamable http control flow

* fix: match stream responses against pending request ids

Match responses against all pending requests before removing a stream
registration. Keep distinct numeric and string ids separate while preserving
the existing fallback for servers that stringify numeric ids.

Add a mixed-id regression and keep a separate registration owner alive in
the abandoned-cancellation test.

* feat: make streamable http control timeouts configurable

* fix(transport): fall back after sessionless HTTP discover rejections (modelcontextprotocol#1211)

* fix(transport): fall back after HTTP discover rejection

* fix(transport): limit legacy fallback to sessionless probes

* style: apply nightly rustfmt import ordering

* ci: pin GitHub Actions to commit SHAs (modelcontextprotocol#1216)

* ci: scope release token permissions to jobs (modelcontextprotocol#1220)

* ci: default workflow tokens to read-only contents (modelcontextprotocol#1218)

* ci: remove coverage job write permission (modelcontextprotocol#1219)

* ci: pin release-plz fork revision (modelcontextprotocol#1221)

* feat: add request-state key rotation (modelcontextprotocol#1128)

* feat: add request-state key rotation

* docs: streamline request-state codec documentation

* fix: harden request-state fallback verification

* refactor: refine request-state keyring API

* docs: make request-state rotation guidance self-contained

* docs: streamline request-state keyring rustdocs

* test: streamline request-state keyring coverage

* docs: restore request-state key rotation doctest

* chore: remove manual changelog entry

* ci: reduce dependabot update noise (modelcontextprotocol#1184)

* docs: use auto lifecycle in HTTP example (modelcontextprotocol#1187)

* chore(deps): bump taiki-e/install-action from 2.85.13 to 2.86.7 (modelcontextprotocol#1230)

Bumps [taiki-e/install-action](https://github.com/taiki-e/install-action) from 2.85.13 to 2.86.7.
- [Release notes](https://github.com/taiki-e/install-action/releases)
- [Changelog](https://github.com/taiki-e/install-action/blob/main/CHANGELOG.md)
- [Commits](taiki-e/install-action@82cd3e7...b6ff580)

---
updated-dependencies:
- dependency-name: taiki-e/install-action
  dependency-version: 2.86.7
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Add typed custom request responses

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Nick Cooper <142361983+nickcoai@users.noreply.github.com>
Co-authored-by: King Star <mcxin.y@gmail.com>
Co-authored-by: Jack Amadeo <jackamadeo@block.xyz>
Co-authored-by: camillelawrence <gocamille@users.noreply.github.com>
Co-authored-by: Dale Seo <5466341+DaleSeo@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

T-examples Example code changes

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Update Streamable HTTP client example to use the discover/Auto lifecycle

2 participants