@@ -35,6 +35,9 @@ def report_progress(progress, total: nil, message: nil)
3535 # @param data [Object] The log data to send.
3636 # @param level [String] Log level (e.g., `"debug"`, `"info"`, `"error"`).
3737 # @param logger [String, nil] Logger name.
38+ # @deprecated MCP Logging (`logging/setLevel` and `notifications/message`)
39+ # is deprecated as of MCP protocol version 2026-07-28 (SEP-2577).
40+ # Use stderr or OpenTelemetry instead.
3841 def notify_log_message ( data :, level :, logger : nil )
3942 return unless @notification_target
4043
@@ -51,6 +54,10 @@ def notify_resources_updated(uri:)
5154 end
5255
5356 # Delegates to the session so the request is scoped to the originating client.
57+ # @deprecated MCP Roots (`roots/list` and
58+ # `notifications/roots/list_changed`) is deprecated as of MCP protocol
59+ # version 2026-07-28 (SEP-2577). Use tool parameters, resource URIs,
60+ # server configuration, or environment variables instead.
5461 def list_roots
5562 if @notification_target . respond_to? ( :list_roots )
5663 @notification_target . list_roots ( related_request_id : @related_request_id )
@@ -84,6 +91,9 @@ def ping
8491 # Delegates to the session so the request is scoped to the originating client.
8592 # Falls back to `@context` (via `method_missing`) when `@notification_target`
8693 # does not support sampling.
94+ # @deprecated MCP Sampling (`sampling/createMessage`) is deprecated as of
95+ # MCP protocol version 2026-07-28 (SEP-2577). Use direct LLM provider
96+ # APIs instead.
8797 def create_sampling_message ( **kwargs )
8898 if @notification_target . respond_to? ( :create_sampling_message )
8999 @notification_target . create_sampling_message ( **kwargs , related_request_id : @related_request_id )
0 commit comments