namespace ModelContextProtocol; /// Provides a progress value that can be sent using . public record struct ProgressNotificationValue { /// /// Gets or sets the progress thus far. /// /// /// /// This value typically represents either a percentage (0-100) or the number of items processed so far (when used with the property). /// /// /// When reporting progress, this value should increase monotonically as the operation proceeds. /// Values are typically between 0 and 100 when representing percentages, or can be any positive number /// when representing completed items in combination with the property. /// /// public required float Progress { get; init; } /// Gets or sets the total number of items to process (or total progress required), if known. public float? Total { get; init; } /// Gets or sets an optional message describing the current progress. public string? Message { get; init; } }