csharp54977619
| 1 | using System.Text.Json.Serialization; |
| 2 | |
| 3 | namespace McpToolManifest; |
| 4 | |
| 5 | /// <summary>Корень файла <c>mcp-tools.manifest.json</c> у конкретного MCP (не общий протокол на весь монорепо).</summary> |
| 6 | public sealed class McpToolManifestDocument |
| 7 | { |
| 8 | [JsonPropertyName("schema_version")] |
| 9 | public int SchemaVersion { get; set; } |
| 10 | |
| 11 | [JsonPropertyName("mcp_id")] |
| 12 | public string McpId { get; set; } = ""; |
| 13 | |
| 14 | [JsonPropertyName("title")] |
| 15 | public string? Title { get; set; } |
| 16 | |
| 17 | [JsonPropertyName("tools")] |
| 18 | public List<McpToolManifestTool> Tools { get; set; } = []; |
| 19 | } |
| 20 | |
| 21 | /// <summary>Один инструмент: имя обязательно; описание опционально (для людей/доков; схема args пока в коде).</summary> |
| 22 | public sealed class McpToolManifestTool |
| 23 | { |
| 24 | [JsonPropertyName("name")] |
| 25 | public string Name { get; set; } = ""; |
| 26 | |
| 27 | [JsonPropertyName("description")] |
| 28 | public string? Description { get; set; } |
| 29 | } |
| 30 | |