From 33ff6aff7e85cef7a9de761920e514b93a09d852 Mon Sep 17 00:00:00 2001 From: Stephen Halter Date: Thu, 31 Jul 2025 14:33:50 -0700 Subject: [PATCH 1/4] Remove 'Sse' from AspNetCoreSseServer sample name --- ModelContextProtocol.slnx | 2 +- .../AspNetCoreServer.csproj} | 0 samples/{AspNetCoreSseServer => AspNetCoreServer}/Program.cs | 0 .../Properties/launchSettings.json | 4 ++-- .../Resources/SimpleResourceType.cs | 0 .../Tools/EchoTool.cs | 0 .../Tools/SampleLlmTool.cs | 0 .../appsettings.Development.json | 0 .../appsettings.json | 0 9 files changed, 3 insertions(+), 3 deletions(-) rename samples/{AspNetCoreSseServer/AspNetCoreSseServer.csproj => AspNetCoreServer/AspNetCoreServer.csproj} (100%) rename samples/{AspNetCoreSseServer => AspNetCoreServer}/Program.cs (100%) rename samples/{AspNetCoreSseServer => AspNetCoreServer}/Properties/launchSettings.json (84%) rename samples/{AspNetCoreSseServer => AspNetCoreServer}/Resources/SimpleResourceType.cs (100%) rename samples/{AspNetCoreSseServer => AspNetCoreServer}/Tools/EchoTool.cs (100%) rename samples/{AspNetCoreSseServer => AspNetCoreServer}/Tools/SampleLlmTool.cs (100%) rename samples/{AspNetCoreSseServer => AspNetCoreServer}/appsettings.Development.json (100%) rename samples/{AspNetCoreSseServer => AspNetCoreServer}/appsettings.json (100%) diff --git a/ModelContextProtocol.slnx b/ModelContextProtocol.slnx index 5ed8ba0d6..fef3775cd 100644 --- a/ModelContextProtocol.slnx +++ b/ModelContextProtocol.slnx @@ -9,7 +9,7 @@ - + diff --git a/samples/AspNetCoreSseServer/AspNetCoreSseServer.csproj b/samples/AspNetCoreServer/AspNetCoreServer.csproj similarity index 100% rename from samples/AspNetCoreSseServer/AspNetCoreSseServer.csproj rename to samples/AspNetCoreServer/AspNetCoreServer.csproj diff --git a/samples/AspNetCoreSseServer/Program.cs b/samples/AspNetCoreServer/Program.cs similarity index 100% rename from samples/AspNetCoreSseServer/Program.cs rename to samples/AspNetCoreServer/Program.cs diff --git a/samples/AspNetCoreSseServer/Properties/launchSettings.json b/samples/AspNetCoreServer/Properties/launchSettings.json similarity index 84% rename from samples/AspNetCoreSseServer/Properties/launchSettings.json rename to samples/AspNetCoreServer/Properties/launchSettings.json index c789fb474..274cab440 100644 --- a/samples/AspNetCoreSseServer/Properties/launchSettings.json +++ b/samples/AspNetCoreServer/Properties/launchSettings.json @@ -7,7 +7,7 @@ "applicationUrl": "http://localhost:3001", "environmentVariables": { "ASPNETCORE_ENVIRONMENT": "Development", - "OTEL_SERVICE_NAME": "sse-server", + "OTEL_SERVICE_NAME": "aspnetcore-server", } }, "https": { @@ -16,7 +16,7 @@ "applicationUrl": "https://localhost:7133;http://localhost:3001", "environmentVariables": { "ASPNETCORE_ENVIRONMENT": "Development", - "OTEL_SERVICE_NAME": "sse-server", + "OTEL_SERVICE_NAME": "aspnetcore-server", } } } diff --git a/samples/AspNetCoreSseServer/Resources/SimpleResourceType.cs b/samples/AspNetCoreServer/Resources/SimpleResourceType.cs similarity index 100% rename from samples/AspNetCoreSseServer/Resources/SimpleResourceType.cs rename to samples/AspNetCoreServer/Resources/SimpleResourceType.cs diff --git a/samples/AspNetCoreSseServer/Tools/EchoTool.cs b/samples/AspNetCoreServer/Tools/EchoTool.cs similarity index 100% rename from samples/AspNetCoreSseServer/Tools/EchoTool.cs rename to samples/AspNetCoreServer/Tools/EchoTool.cs diff --git a/samples/AspNetCoreSseServer/Tools/SampleLlmTool.cs b/samples/AspNetCoreServer/Tools/SampleLlmTool.cs similarity index 100% rename from samples/AspNetCoreSseServer/Tools/SampleLlmTool.cs rename to samples/AspNetCoreServer/Tools/SampleLlmTool.cs diff --git a/samples/AspNetCoreSseServer/appsettings.Development.json b/samples/AspNetCoreServer/appsettings.Development.json similarity index 100% rename from samples/AspNetCoreSseServer/appsettings.Development.json rename to samples/AspNetCoreServer/appsettings.Development.json diff --git a/samples/AspNetCoreSseServer/appsettings.json b/samples/AspNetCoreServer/appsettings.json similarity index 100% rename from samples/AspNetCoreSseServer/appsettings.json rename to samples/AspNetCoreServer/appsettings.json From c145ed33b0dc3b0bde76b345b2b775d3c2f96bda Mon Sep 17 00:00:00 2001 From: Stephen Halter Date: Thu, 31 Jul 2025 14:35:39 -0700 Subject: [PATCH 2/4] Add 'Mcp' to AspNetCoreServer sample name --- ModelContextProtocol.slnx | 2 +- .../AspNetCoreMcpServer.csproj} | 0 samples/{AspNetCoreServer => AspNetCoreMcpServer}/Program.cs | 0 .../Properties/launchSettings.json | 4 ++-- .../Resources/SimpleResourceType.cs | 0 .../Tools/EchoTool.cs | 0 .../Tools/SampleLlmTool.cs | 0 .../appsettings.Development.json | 0 .../appsettings.json | 0 9 files changed, 3 insertions(+), 3 deletions(-) rename samples/{AspNetCoreServer/AspNetCoreServer.csproj => AspNetCoreMcpServer/AspNetCoreMcpServer.csproj} (100%) rename samples/{AspNetCoreServer => AspNetCoreMcpServer}/Program.cs (100%) rename samples/{AspNetCoreServer => AspNetCoreMcpServer}/Properties/launchSettings.json (83%) rename samples/{AspNetCoreServer => AspNetCoreMcpServer}/Resources/SimpleResourceType.cs (100%) rename samples/{AspNetCoreServer => AspNetCoreMcpServer}/Tools/EchoTool.cs (100%) rename samples/{AspNetCoreServer => AspNetCoreMcpServer}/Tools/SampleLlmTool.cs (100%) rename samples/{AspNetCoreServer => AspNetCoreMcpServer}/appsettings.Development.json (100%) rename samples/{AspNetCoreServer => AspNetCoreMcpServer}/appsettings.json (100%) diff --git a/ModelContextProtocol.slnx b/ModelContextProtocol.slnx index fef3775cd..b576aa71b 100644 --- a/ModelContextProtocol.slnx +++ b/ModelContextProtocol.slnx @@ -9,7 +9,7 @@ - + diff --git a/samples/AspNetCoreServer/AspNetCoreServer.csproj b/samples/AspNetCoreMcpServer/AspNetCoreMcpServer.csproj similarity index 100% rename from samples/AspNetCoreServer/AspNetCoreServer.csproj rename to samples/AspNetCoreMcpServer/AspNetCoreMcpServer.csproj diff --git a/samples/AspNetCoreServer/Program.cs b/samples/AspNetCoreMcpServer/Program.cs similarity index 100% rename from samples/AspNetCoreServer/Program.cs rename to samples/AspNetCoreMcpServer/Program.cs diff --git a/samples/AspNetCoreServer/Properties/launchSettings.json b/samples/AspNetCoreMcpServer/Properties/launchSettings.json similarity index 83% rename from samples/AspNetCoreServer/Properties/launchSettings.json rename to samples/AspNetCoreMcpServer/Properties/launchSettings.json index 274cab440..a5b8a22f6 100644 --- a/samples/AspNetCoreServer/Properties/launchSettings.json +++ b/samples/AspNetCoreMcpServer/Properties/launchSettings.json @@ -7,7 +7,7 @@ "applicationUrl": "http://localhost:3001", "environmentVariables": { "ASPNETCORE_ENVIRONMENT": "Development", - "OTEL_SERVICE_NAME": "aspnetcore-server", + "OTEL_SERVICE_NAME": "aspnetcore-mcp-server", } }, "https": { @@ -16,7 +16,7 @@ "applicationUrl": "https://localhost:7133;http://localhost:3001", "environmentVariables": { "ASPNETCORE_ENVIRONMENT": "Development", - "OTEL_SERVICE_NAME": "aspnetcore-server", + "OTEL_SERVICE_NAME": "aspnetcore-mcp-server", } } } diff --git a/samples/AspNetCoreServer/Resources/SimpleResourceType.cs b/samples/AspNetCoreMcpServer/Resources/SimpleResourceType.cs similarity index 100% rename from samples/AspNetCoreServer/Resources/SimpleResourceType.cs rename to samples/AspNetCoreMcpServer/Resources/SimpleResourceType.cs diff --git a/samples/AspNetCoreServer/Tools/EchoTool.cs b/samples/AspNetCoreMcpServer/Tools/EchoTool.cs similarity index 100% rename from samples/AspNetCoreServer/Tools/EchoTool.cs rename to samples/AspNetCoreMcpServer/Tools/EchoTool.cs diff --git a/samples/AspNetCoreServer/Tools/SampleLlmTool.cs b/samples/AspNetCoreMcpServer/Tools/SampleLlmTool.cs similarity index 100% rename from samples/AspNetCoreServer/Tools/SampleLlmTool.cs rename to samples/AspNetCoreMcpServer/Tools/SampleLlmTool.cs diff --git a/samples/AspNetCoreServer/appsettings.Development.json b/samples/AspNetCoreMcpServer/appsettings.Development.json similarity index 100% rename from samples/AspNetCoreServer/appsettings.Development.json rename to samples/AspNetCoreMcpServer/appsettings.Development.json diff --git a/samples/AspNetCoreServer/appsettings.json b/samples/AspNetCoreMcpServer/appsettings.json similarity index 100% rename from samples/AspNetCoreServer/appsettings.json rename to samples/AspNetCoreMcpServer/appsettings.json From 936db6855b592e492364f78d4ef61c0bb4b1c09a Mon Sep 17 00:00:00 2001 From: Stephen Halter Date: Thu, 31 Jul 2025 15:37:27 -0700 Subject: [PATCH 3/4] Fix namespaces --- samples/AspNetCoreMcpServer/Program.cs | 4 ++-- samples/AspNetCoreMcpServer/Resources/SimpleResourceType.cs | 3 +-- samples/AspNetCoreMcpServer/Tools/EchoTool.cs | 2 +- samples/AspNetCoreMcpServer/Tools/SampleLlmTool.cs | 2 +- 4 files changed, 5 insertions(+), 6 deletions(-) diff --git a/samples/AspNetCoreMcpServer/Program.cs b/samples/AspNetCoreMcpServer/Program.cs index c21b328f6..824cd9997 100644 --- a/samples/AspNetCoreMcpServer/Program.cs +++ b/samples/AspNetCoreMcpServer/Program.cs @@ -1,8 +1,8 @@ using OpenTelemetry; using OpenTelemetry.Metrics; using OpenTelemetry.Trace; -using TestServerWithHosting.Tools; -using TestServerWithHosting.Resources; +using AspNetCoreMcpServer.Tools; +using AspNetCoreMcpServer.Resources; var builder = WebApplication.CreateBuilder(args); builder.Services.AddMcpServer() diff --git a/samples/AspNetCoreMcpServer/Resources/SimpleResourceType.cs b/samples/AspNetCoreMcpServer/Resources/SimpleResourceType.cs index e73ce133c..aaf6d11a5 100644 --- a/samples/AspNetCoreMcpServer/Resources/SimpleResourceType.cs +++ b/samples/AspNetCoreMcpServer/Resources/SimpleResourceType.cs @@ -1,8 +1,7 @@ -using ModelContextProtocol.Protocol; using ModelContextProtocol.Server; using System.ComponentModel; -namespace TestServerWithHosting.Resources; +namespace AspNetCoreMcpServer.Resources; [McpServerResourceType] public class SimpleResourceType diff --git a/samples/AspNetCoreMcpServer/Tools/EchoTool.cs b/samples/AspNetCoreMcpServer/Tools/EchoTool.cs index 7913b73e4..a9dc0a665 100644 --- a/samples/AspNetCoreMcpServer/Tools/EchoTool.cs +++ b/samples/AspNetCoreMcpServer/Tools/EchoTool.cs @@ -1,7 +1,7 @@ using ModelContextProtocol.Server; using System.ComponentModel; -namespace TestServerWithHosting.Tools; +namespace AspNetCoreMcpServer.Tools; [McpServerToolType] public sealed class EchoTool diff --git a/samples/AspNetCoreMcpServer/Tools/SampleLlmTool.cs b/samples/AspNetCoreMcpServer/Tools/SampleLlmTool.cs index 247619dbb..3ac7f567d 100644 --- a/samples/AspNetCoreMcpServer/Tools/SampleLlmTool.cs +++ b/samples/AspNetCoreMcpServer/Tools/SampleLlmTool.cs @@ -2,7 +2,7 @@ using ModelContextProtocol.Server; using System.ComponentModel; -namespace TestServerWithHosting.Tools; +namespace AspNetCoreMcpServer.Tools; /// /// This tool uses dependency injection and async method From 3aacd45ed37389029d6b9e62e753083db5139c81 Mon Sep 17 00:00:00 2001 From: Stephen Halter Date: Thu, 31 Jul 2025 15:52:32 -0700 Subject: [PATCH 4/4] Fix capitalization of 'ProtectedMCP' samples --- ModelContextProtocol.slnx | 4 ++-- .../Program.cs | 0 .../ProtectedMcpClient.csproj} | 0 .../README.md | 10 +++++----- .../Program.cs | 2 +- .../Properties/launchSettings.json | 2 +- .../ProtectedMcpServer.csproj} | 0 .../README.md | 6 +++--- .../Tools/HttpClientExt.cs | 0 .../Tools/WeatherTools.cs | 2 +- tests/ModelContextProtocol.TestOAuthServer/Program.cs | 2 +- 11 files changed, 14 insertions(+), 14 deletions(-) rename samples/{ProtectedMCPClient => ProtectedMcpClient}/Program.cs (100%) rename samples/{ProtectedMCPClient/ProtectedMCPClient.csproj => ProtectedMcpClient/ProtectedMcpClient.csproj} (100%) rename samples/{ProtectedMCPClient => ProtectedMcpClient}/README.md (92%) rename samples/{ProtectedMCPServer => ProtectedMcpServer}/Program.cs (99%) rename samples/{ProtectedMCPServer => ProtectedMcpServer}/Properties/launchSettings.json (89%) rename samples/{ProtectedMCPServer/ProtectedMCPServer.csproj => ProtectedMcpServer/ProtectedMcpServer.csproj} (100%) rename samples/{ProtectedMCPServer => ProtectedMcpServer}/README.md (96%) rename samples/{ProtectedMCPServer => ProtectedMcpServer}/Tools/HttpClientExt.cs (100%) rename samples/{ProtectedMCPServer => ProtectedMcpServer}/Tools/WeatherTools.cs (98%) diff --git a/ModelContextProtocol.slnx b/ModelContextProtocol.slnx index b576aa71b..abf6c644b 100644 --- a/ModelContextProtocol.slnx +++ b/ModelContextProtocol.slnx @@ -12,8 +12,8 @@ - - + + diff --git a/samples/ProtectedMCPClient/Program.cs b/samples/ProtectedMcpClient/Program.cs similarity index 100% rename from samples/ProtectedMCPClient/Program.cs rename to samples/ProtectedMcpClient/Program.cs diff --git a/samples/ProtectedMCPClient/ProtectedMCPClient.csproj b/samples/ProtectedMcpClient/ProtectedMcpClient.csproj similarity index 100% rename from samples/ProtectedMCPClient/ProtectedMCPClient.csproj rename to samples/ProtectedMcpClient/ProtectedMcpClient.csproj diff --git a/samples/ProtectedMCPClient/README.md b/samples/ProtectedMcpClient/README.md similarity index 92% rename from samples/ProtectedMCPClient/README.md rename to samples/ProtectedMcpClient/README.md index 977331a04..81ae67cee 100644 --- a/samples/ProtectedMCPClient/README.md +++ b/samples/ProtectedMcpClient/README.md @@ -14,7 +14,7 @@ The Protected MCP Client sample shows how to: - .NET 9.0 or later - A running TestOAuthServer (for OAuth authentication) -- A running ProtectedMCPServer (for MCP services) +- A running ProtectedMcpServer (for MCP services) ## Setup and Running @@ -31,10 +31,10 @@ The OAuth server will start at `https://localhost:7029` ### Step 2: Start the Protected MCP Server -Next, start the ProtectedMCPServer which provides the weather tools: +Next, start the ProtectedMcpServer which provides the weather tools: ```bash -cd samples\ProtectedMCPServer +cd samples\ProtectedMcpServer dotnet run ``` @@ -45,7 +45,7 @@ The protected server will start at `http://localhost:7071` Finally, run this client: ```bash -cd samples\ProtectedMCPClient +cd samples\ProtectedMcpClient dotnet run ``` @@ -90,4 +90,4 @@ Once authenticated, the client can access weather tools including: ## Key Files - `Program.cs`: Main client application with OAuth flow implementation -- `ProtectedMCPClient.csproj`: Project file with dependencies \ No newline at end of file +- `ProtectedMcpClient.csproj`: Project file with dependencies \ No newline at end of file diff --git a/samples/ProtectedMCPServer/Program.cs b/samples/ProtectedMcpServer/Program.cs similarity index 99% rename from samples/ProtectedMCPServer/Program.cs rename to samples/ProtectedMcpServer/Program.cs index ef70fe731..a36e0367f 100644 --- a/samples/ProtectedMCPServer/Program.cs +++ b/samples/ProtectedMcpServer/Program.cs @@ -1,7 +1,7 @@ using Microsoft.AspNetCore.Authentication.JwtBearer; using Microsoft.IdentityModel.Tokens; using ModelContextProtocol.AspNetCore.Authentication; -using ProtectedMCPServer.Tools; +using ProtectedMcpServer.Tools; using System.Net.Http.Headers; using System.Security.Claims; diff --git a/samples/ProtectedMCPServer/Properties/launchSettings.json b/samples/ProtectedMcpServer/Properties/launchSettings.json similarity index 89% rename from samples/ProtectedMCPServer/Properties/launchSettings.json rename to samples/ProtectedMcpServer/Properties/launchSettings.json index 31b04db83..dbc9a1147 100644 --- a/samples/ProtectedMCPServer/Properties/launchSettings.json +++ b/samples/ProtectedMcpServer/Properties/launchSettings.json @@ -1,6 +1,6 @@ { "profiles": { - "ProtectedMCPServer": { + "ProtectedMcpServer": { "commandName": "Project", "launchBrowser": true, "environmentVariables": { diff --git a/samples/ProtectedMCPServer/ProtectedMCPServer.csproj b/samples/ProtectedMcpServer/ProtectedMcpServer.csproj similarity index 100% rename from samples/ProtectedMCPServer/ProtectedMCPServer.csproj rename to samples/ProtectedMcpServer/ProtectedMcpServer.csproj diff --git a/samples/ProtectedMCPServer/README.md b/samples/ProtectedMcpServer/README.md similarity index 96% rename from samples/ProtectedMCPServer/README.md rename to samples/ProtectedMcpServer/README.md index f0ac708a0..ecbfee633 100644 --- a/samples/ProtectedMCPServer/README.md +++ b/samples/ProtectedMcpServer/README.md @@ -34,7 +34,7 @@ The OAuth server will start at `https://localhost:7029` Run this protected server: ```bash -cd samples\ProtectedMCPServer +cd samples\ProtectedMcpServer dotnet run ``` @@ -42,10 +42,10 @@ The protected server will start at `http://localhost:7071` ### Step 3: Test with Protected MCP Client -You can test the server using the ProtectedMCPClient sample: +You can test the server using the ProtectedMcpClient sample: ```bash -cd samples\ProtectedMCPClient +cd samples\ProtectedMcpClient dotnet run ``` diff --git a/samples/ProtectedMCPServer/Tools/HttpClientExt.cs b/samples/ProtectedMcpServer/Tools/HttpClientExt.cs similarity index 100% rename from samples/ProtectedMCPServer/Tools/HttpClientExt.cs rename to samples/ProtectedMcpServer/Tools/HttpClientExt.cs diff --git a/samples/ProtectedMCPServer/Tools/WeatherTools.cs b/samples/ProtectedMcpServer/Tools/WeatherTools.cs similarity index 98% rename from samples/ProtectedMCPServer/Tools/WeatherTools.cs rename to samples/ProtectedMcpServer/Tools/WeatherTools.cs index 7c8c08514..477463c8d 100644 --- a/samples/ProtectedMCPServer/Tools/WeatherTools.cs +++ b/samples/ProtectedMcpServer/Tools/WeatherTools.cs @@ -4,7 +4,7 @@ using System.Globalization; using System.Text.Json; -namespace ProtectedMCPServer.Tools; +namespace ProtectedMcpServer.Tools; [McpServerToolType] public sealed class WeatherTools diff --git a/tests/ModelContextProtocol.TestOAuthServer/Program.cs b/tests/ModelContextProtocol.TestOAuthServer/Program.cs index 3970394b6..bb251035d 100644 --- a/tests/ModelContextProtocol.TestOAuthServer/Program.cs +++ b/tests/ModelContextProtocol.TestOAuthServer/Program.cs @@ -14,7 +14,7 @@ public sealed class Program private const int _port = 7029; private static readonly string _url = $"https://localhost:{_port}"; - // Port 5000 is used by tests and port 7071 is used by the ProtectedMCPServer sample + // Port 5000 is used by tests and port 7071 is used by the ProtectedMcpServer sample private static readonly string[] ValidResources = ["http://localhost:5000/", "http://localhost:7071/"]; private readonly ConcurrentDictionary _authCodes = new();