diff --git a/src/ModelContextProtocol.Core/Protocol/ContentBlock.cs b/src/ModelContextProtocol.Core/Protocol/ContentBlock.cs index ccc5e962..012038f1 100644 --- a/src/ModelContextProtocol.Core/Protocol/ContentBlock.cs +++ b/src/ModelContextProtocol.Core/Protocol/ContentBlock.cs @@ -25,7 +25,7 @@ namespace ModelContextProtocol.Protocol; /// See the schema for more details. /// /// -[JsonConverter(typeof(Converter))] // TODO: This converter exists due to the lack of downlevel support for AllowOutOfOrderMetadataProperties. +[JsonConverter(typeof(Converter))] public abstract class ContentBlock { /// Prevent external derivations. @@ -55,6 +55,8 @@ private protected ContentBlock() /// /// Provides a for . /// + /// Provides a polymorphic converter for the class that doesn't require + /// setting explicitly. [EditorBrowsable(EditorBrowsableState.Never)] public class Converter : JsonConverter { diff --git a/src/ModelContextProtocol.Core/Protocol/ElicitRequestParams.cs b/src/ModelContextProtocol.Core/Protocol/ElicitRequestParams.cs index 2cd94a5d..50f9d4d5 100644 --- a/src/ModelContextProtocol.Core/Protocol/ElicitRequestParams.cs +++ b/src/ModelContextProtocol.Core/Protocol/ElicitRequestParams.cs @@ -61,7 +61,7 @@ public IDictionary Properties /// Represents restricted subset of JSON Schema: /// , , , or . /// - [JsonConverter(typeof(Converter))] // TODO: This converter exists due to the lack of downlevel support for AllowOutOfOrderMetadataProperties. + [JsonConverter(typeof(Converter))] public abstract class PrimitiveSchemaDefinition { /// Prevent external derivations. @@ -84,6 +84,8 @@ protected private PrimitiveSchemaDefinition() /// /// Provides a for . /// + /// Provides a polymorphic converter for the class that doesn't require + /// setting explicitly. [EditorBrowsable(EditorBrowsableState.Never)] public class Converter : JsonConverter { diff --git a/src/ModelContextProtocol.Core/Protocol/Reference.cs b/src/ModelContextProtocol.Core/Protocol/Reference.cs index 876ce401..d5a78c33 100644 --- a/src/ModelContextProtocol.Core/Protocol/Reference.cs +++ b/src/ModelContextProtocol.Core/Protocol/Reference.cs @@ -39,6 +39,10 @@ private protected Reference() /// /// Provides a for . /// + /// + /// Provides a polymorphic converter for the class that doesn't require + /// setting explicitly. + /// [EditorBrowsable(EditorBrowsableState.Never)] public sealed class Converter : JsonConverter { @@ -95,8 +99,6 @@ public sealed class Converter : JsonConverter } } - // TODO: This converter exists due to the lack of downlevel support for AllowOutOfOrderMetadataProperties. - switch (type) { case "ref/prompt":