feat(mcp): add Icon, Options, and OptionsFrom to manifest models

Add Icon property to McpManifestServer. Add Options and OptionsFrom properties to McpManifestConfig for static and dynamic value lists. Add McpManifestOptionsFrom class with File and Path properties for JSONPath-based option resolution
This commit is contained in:
2026-04-04 18:57:03 -04:00
parent 30bd83f08e
commit 42a3e1e255

View File

@@ -98,6 +98,9 @@ public sealed class McpManifestServer
[JsonPropertyName("license")] [JsonPropertyName("license")]
public string? License { get; set; } public string? License { get; set; }
[JsonPropertyName("icon")]
public string? Icon { get; set; }
[JsonPropertyName("keywords")] [JsonPropertyName("keywords")]
public List<string>? Keywords { get; set; } public List<string>? Keywords { get; set; }
} }
@@ -151,6 +154,26 @@ public sealed class McpManifestConfig
[JsonPropertyName("prompt")] [JsonPropertyName("prompt")]
public string? Prompt { get; set; } public string? Prompt { get; set; }
[JsonPropertyName("options")]
public List<string>? Options { get; set; }
[JsonPropertyName("options_from")]
public McpManifestOptionsFrom? OptionsFrom { get; set; }
}
/// <summary>
/// Dynamically resolve available config values from a local file.
/// </summary>
public class McpManifestOptionsFrom
{
/// <summary>Path to a local JSON file. ~ is expanded to the user's home directory.</summary>
[JsonPropertyName("file")]
public string File { get; set; } = "";
/// <summary>JSONPath expression to extract values from the file.</summary>
[JsonPropertyName("path")]
public string Path { get; set; } = "";
} }
/// <summary> /// <summary>