Skip to content

Commit 95bd10c

Browse files
Address PR review comments
1 parent 3299493 commit 95bd10c

File tree

3 files changed

+12
-7
lines changed

3 files changed

+12
-7
lines changed

dotnet/samples/Demos/ModelContextProtocolClientServer/MCPServer/Program.cs

+2-2
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,6 @@
2323
// Add all functions from the kernel plugins to the MCP server as tools
2424
.WithTools(kernel.Plugins)
2525
// Register prompt handlers
26-
.WithListPromptsHandler(PromptRegistry.GetHandlerForListPromptRequestsAsync)
27-
.WithGetPromptHandler(PromptRegistry.GetHandlerForGetPromptRequestsAsync);
26+
.WithListPromptsHandler(PromptRegistry.HandlerListPromptRequestsAsync)
27+
.WithGetPromptHandler(PromptRegistry.HandlerGetPromptRequestsAsync);
2828
await builder.Build().RunAsync();

dotnet/samples/Demos/ModelContextProtocolClientServer/MCPServer/Prompts/PromptDefinition.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,7 @@ private static Prompt GetPrompt(PromptTemplateConfig promptTemplateConfig)
7676
/// <summary>
7777
/// Handles the prompt request by rendering the prompt.
7878
/// </summary>
79-
/// <param name="context">The prompt request context.</param>
79+
/// <param name="context">The MCP request context.</param>
8080
/// <param name="promptTemplateConfig">The prompt template configuration.</param>
8181
/// <param name="promptTemplate">The prompt template.</param>
8282
/// <param name="kernel">The kernel to render the prompt.</param>

dotnet/samples/Demos/ModelContextProtocolClientServer/MCPServer/Prompts/PromptRegistry.cs

+9-4
Original file line numberDiff line numberDiff line change
@@ -18,16 +18,21 @@ internal static class PromptRegistry
1818
/// <param name="definition">The prompt definition to register.</param>
1919
public static void RegisterPrompt(PromptDefinition definition)
2020
{
21+
if (s_definitions.ContainsKey(definition.Prompt.Name))
22+
{
23+
throw new ArgumentException($"A prompt with the name '{definition.Prompt.Name}' is already registered.");
24+
}
25+
2126
s_definitions[definition.Prompt.Name] = definition;
2227
}
2328

2429
/// <summary>
25-
/// Gets the handler for the `Get` prompt requests.
30+
/// Handles the `Get` prompt requests.
2631
/// </summary>
2732
/// <param name="context">The request context.</param>
2833
/// <param name="cancellationToken">The cancellation token.</param>
2934
/// <returns>The result of the `Get` prompt request.</returns>
30-
public static async Task<GetPromptResult> GetHandlerForGetPromptRequestsAsync(RequestContext<GetPromptRequestParams> context, CancellationToken cancellationToken)
35+
public static async Task<GetPromptResult> HandlerGetPromptRequestsAsync(RequestContext<GetPromptRequestParams> context, CancellationToken cancellationToken)
3136
{
3237
// Make sure the prompt name is provided
3338
if (context.Params?.Name is not string { } promptName || string.IsNullOrEmpty(promptName))
@@ -46,12 +51,12 @@ public static async Task<GetPromptResult> GetHandlerForGetPromptRequestsAsync(Re
4651
}
4752

4853
/// <summary>
49-
/// Gets the handler for the `List` prompt requests.
54+
/// Handles the `List` prompt requests.
5055
/// </summary>
5156
/// <param name="context">Context of the request.</param>
5257
/// <param name="cancellationToken">The cancellation token.</param>
5358
/// <returns>The result of the `List` prompt request.</returns>
54-
public static Task<ListPromptsResult> GetHandlerForListPromptRequestsAsync(RequestContext<ListPromptsRequestParams> context, CancellationToken cancellationToken)
59+
public static Task<ListPromptsResult> HandlerListPromptRequestsAsync(RequestContext<ListPromptsRequestParams> context, CancellationToken cancellationToken)
5560
{
5661
return Task.FromResult(new ListPromptsResult
5762
{

0 commit comments

Comments
 (0)