Remove Server#create_sampling_message direct call#311
Open
koic wants to merge 1 commit intomodelcontextprotocol:mainfrom
Open
Remove Server#create_sampling_message direct call#311koic wants to merge 1 commit intomodelcontextprotocol:mainfrom
Server#create_sampling_message direct call#311koic wants to merge 1 commit intomodelcontextprotocol:mainfrom
Conversation
## Motivation and Context Sampling is a one-to-one request/response interaction between a server and a specific client. `Server#create_sampling_message` does not scope requests to a specific session, which could lead to unintended broadcasts on multi-client transports. `ServerSession#create_sampling_message` should be used instead, as it routes the request to the correct client session. This aligns with the Python SDK, which also exposes sampling only at the session level. ## How Has This Been Tested? Existing tests updated to call `ServerSession#create_sampling_message` instead of `Server#create_sampling_message`. All tests pass (`rake test`), RuboCop is clean, and conformance tests pass. ## Breaking Changes `Server#create_sampling_message` is removed without a deprecation warning. The sampling feature was released recently and the method was not intended to be the primary API for this feature.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Motivation and Context
Sampling is a one-to-one request/response interaction between a server and a specific client.
Server#create_sampling_messagedoes not scope requests to a specific session, which could lead to unintended broadcasts on multi-client transports.ServerSession#create_sampling_messageshould be used instead, as it routes the request to the correct client session.This aligns with the Python SDK, which also exposes sampling only at the session level.
How Has This Been Tested?
Existing tests updated to call
ServerSession#create_sampling_messageinstead ofServer#create_sampling_message. All tests pass (rake test), RuboCop is clean, and conformance tests pass.Breaking Changes
Server#create_sampling_messageis removed without a deprecation warning. The sampling feature was released recently and the method was not intended to be the primary API for this feature.Types of changes
Checklist