Table of Contents

Class InputRequiredTaskResult

Namespace
ModelContextProtocol.Protocol
Assembly
ModelContextProtocol.Core.dll

Represents a task that requires input from the client before it can proceed.

public sealed class InputRequiredTaskResult : GetTaskResult
Inheritance
InputRequiredTaskResult
Inherited Members

Remarks

The InputRequests field contains outstanding server-to-client requests that the client must fulfil. Each entry is keyed by an arbitrary identifier for matching requests to responses, and each value is an InputRequest wrapping the server-to-client request payload.

Clients must treat each entry as they would the equivalent standalone server-to-client request. Clients should deduplicate keys across consecutive polls to avoid presenting the same request to the user or model more than once.

See the SEP-2663 specification for details.

Properties

InputRequests

Gets or sets the server-to-client requests that need to be fulfilled.

[JsonPropertyName("inputRequests")]
public IDictionary<string, InputRequest>? InputRequests { get; set; }

Property Value

IDictionary<string, InputRequest>

Remarks

Keys are arbitrary identifiers for matching requests to responses. Each value is an InputRequest wrapping the server-to-client request (e.g., a sampling, elicitation, or roots-list request).

Status

Gets or sets the current task status.

[JsonPropertyName("status")]
public override McpTaskStatus Status { get; }

Property Value

McpTaskStatus