using System.Diagnostics.CodeAnalysis; using System.Text.Json.Serialization; namespace ModelContextProtocol.Protocol; /// /// Represents the parameters for a tasks/list request to retrieve a list of tasks. /// /// /// This operation supports cursor-based pagination. Receivers should use cursor-based /// pagination to limit the number of tasks returned in a single response. /// [Experimental(Experimentals.Tasks_DiagnosticId, UrlFormat = Experimentals.Tasks_Url)] public sealed class ListTasksRequestParams : PaginatedRequestParams { // Inherits Cursor property from PaginatedRequestParams } /// /// Represents the result of a tasks/list request. /// /// /// The result contains an array of task objects and an optional cursor for pagination. /// If is present, more tasks are available. /// [Experimental(Experimentals.Tasks_DiagnosticId, UrlFormat = Experimentals.Tasks_Url)] public sealed class ListTasksResult : PaginatedResult { /// /// Gets or sets the list of tasks. /// [JsonPropertyName("tasks")] public required IList Tasks { get; set; } }