Class ListPromptsResult
- Namespace
- ModelContextProtocol.Protocol
- Assembly
- ModelContextProtocol.Core.dll
Represents a server's response to a PromptsList request from the client, containing available prompts.
public sealed class ListPromptsResult : PaginatedResult, ICacheableResult
- Inheritance
-
ListPromptsResult
- Implements
- Inherited Members
Remarks
This result is returned when a client sends a PromptsList request to discover available prompts on the server.
It inherits from PaginatedResult, allowing for paginated responses when there are many prompts. The server can provide the NextCursor property to indicate there are more prompts available beyond what was returned in the current response.
See the schema for details.
Properties
CacheScope
Gets or sets the intended scope of the cached response.
[JsonPropertyName("cacheScope")]
[JsonConverter(typeof(CacheScopeConverter))]
public CacheScope? CacheScope { get; set; }
Property Value
Remarks
When this property is null (the field was absent from the response), clients should treat the response as Public.
An unrecognized or future scope value sent by a server (or a non-string value) is tolerated and surfaced as null rather than causing deserialization of the whole result to fail, so a single unexpected hint never prevents a client from reading the result.
Prompts
Gets or sets a list of prompts or prompt templates that the server offers.
[JsonPropertyName("prompts")]
public IList<Prompt> Prompts { get; set; }
Property Value
TimeToLive
Gets or sets a hint indicating how long the client may cache this response before re-fetching.
[JsonPropertyName("ttlMs")]
[JsonConverter(typeof(TimeSpanMillisecondsConverter))]
public TimeSpan? TimeToLive { get; set; }
Property Value
Remarks
The semantics are analogous to the HTTP Cache-Control: max-age directive. The value is
serialized as an integer number of milliseconds under the ttlMs JSON property.
A value of Zero indicates the response should be considered immediately stale; a positive value indicates the client should consider the response fresh for that duration from the time it was received.
When this property is null (the field was absent from the response), clients should assume a default of Zero (immediately stale) and rely on their own caching heuristics or notifications. The SDK preserves whatever value the server sent and does not coerce it; a client that receives a negative value should treat it as immediately stale.