diff --git a/src/ModelContextProtocol/Client/McpClientExtensions.cs b/src/ModelContextProtocol/Client/McpClientExtensions.cs index 9cc8ab2..aaaa426 100644 --- a/src/ModelContextProtocol/Client/McpClientExtensions.cs +++ b/src/ModelContextProtocol/Client/McpClientExtensions.cs @@ -926,7 +926,7 @@ public static class McpClientExtensions { Content = content, Model = chatResponse.ModelId ?? "unknown", - Role = lastMessage?.Role == ChatRole.User ? "user" : "assistant", + Role = lastMessage?.Role == ChatRole.User ? Role.User : Role.Assistant, StopReason = chatResponse.FinishReason == ChatFinishReason.Length ? "maxTokens" : "endTurn", }; } diff --git a/src/ModelContextProtocol/Protocol/Types/CreateMessageResult.cs b/src/ModelContextProtocol/Protocol/Types/CreateMessageResult.cs index 04397be..4ae6890 100644 --- a/src/ModelContextProtocol/Protocol/Types/CreateMessageResult.cs +++ b/src/ModelContextProtocol/Protocol/Types/CreateMessageResult.cs @@ -50,5 +50,5 @@ public class CreateMessageResult /// Gets or sets the role of the user who generated the message. /// [JsonPropertyName("role")] - public required string Role { get; init; } + public required Role Role { get; init; } } diff --git a/src/ModelContextProtocol/Server/McpServerExtensions.cs b/src/ModelContextProtocol/Server/McpServerExtensions.cs index 17b4b35..aa103c3 100644 --- a/src/ModelContextProtocol/Server/McpServerExtensions.cs +++ b/src/ModelContextProtocol/Server/McpServerExtensions.cs @@ -142,7 +142,7 @@ public static class McpServerExtensions ModelPreferences = modelPreferences, }, cancellationToken).ConfigureAwait(false); - return new(new ChatMessage(new(result.Role), [result.Content.ToAIContent()])) + return new(new ChatMessage(result.Role is Role.User ? ChatRole.User : ChatRole.Assistant, [result.Content.ToAIContent()])) { ModelId = result.Model, FinishReason = result.StopReason switch diff --git a/tests/ModelContextProtocol.AspNetCore.Tests/SseServerIntegrationTests.cs b/tests/ModelContextProtocol.AspNetCore.Tests/SseServerIntegrationTests.cs index 7913bbb..280a757 100644 --- a/tests/ModelContextProtocol.AspNetCore.Tests/SseServerIntegrationTests.cs +++ b/tests/ModelContextProtocol.AspNetCore.Tests/SseServerIntegrationTests.cs @@ -219,7 +219,7 @@ public class SseServerIntegrationTests : LoggedTest, IClassFixture