using System.Text.Json.Serialization; namespace ModelContextProtocol.Protocol; /// /// Controls tool selection behavior for sampling requests. /// public sealed class ToolChoice { /// /// Gets or sets the mode that controls which tools the model can call. /// /// /// /// "auto"Model decides whether to call tools (default) /// "required"Model must call at least one tool /// "none"Model must not call any tools /// /// [JsonPropertyName("mode")] public string? Mode { get; set; } /// The mode value "auto". internal const string ModeAuto = "auto"; /// The mode value "required". internal const string ModeRequired = "required"; /// The mode value "none". internal const string ModeNone = "none"; }