From 83fb9b5dbfcc559fef0b183030ba92641965ddbf Mon Sep 17 00:00:00 2001 From: John Simons Date: Thu, 9 Apr 2026 09:53:40 +1000 Subject: [PATCH 1/2] Add MCP environment data provider Reports the configuration state of the MCP server and write mode features to the licensing component. --- .../Mcp/McpEnvironmentDataProvider.cs | 14 ++++++++++++++ 1 file changed, 14 insertions(+) create mode 100644 src/ServiceControl/Mcp/McpEnvironmentDataProvider.cs diff --git a/src/ServiceControl/Mcp/McpEnvironmentDataProvider.cs b/src/ServiceControl/Mcp/McpEnvironmentDataProvider.cs new file mode 100644 index 0000000000..384a915375 --- /dev/null +++ b/src/ServiceControl/Mcp/McpEnvironmentDataProvider.cs @@ -0,0 +1,14 @@ +namespace ServiceControl.Mcp; + +using System.Collections.Generic; +using Particular.LicensingComponent.Contracts; +using ServiceBus.Management.Infrastructure.Settings; + +class McpEnvironmentDataProvider(Settings settings) : IEnvironmentDataProvider +{ + public IEnumerable<(string key, string value)> GetData() + { + yield return ("Features.Mcp", settings.EnableMcpServer ? "Enabled" : "Disabled"); + yield return ("Features.Mcp.WriteMode", settings.EnableMcpServerWriteMode ? "Enabled" : "Disabled"); + } +} From 456b9660537916c48966ee547cb6a267df730d6a Mon Sep 17 00:00:00 2001 From: John Simons Date: Thu, 9 Apr 2026 15:13:01 +1000 Subject: [PATCH 2/2] Forgot to register it! --- src/ServiceControl/HostApplicationBuilderExtensions.cs | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/ServiceControl/HostApplicationBuilderExtensions.cs b/src/ServiceControl/HostApplicationBuilderExtensions.cs index a2a26ef43c..89aaba0a07 100644 --- a/src/ServiceControl/HostApplicationBuilderExtensions.cs +++ b/src/ServiceControl/HostApplicationBuilderExtensions.cs @@ -12,6 +12,7 @@ namespace Particular.ServiceControl using global::ServiceControl.Infrastructure.Metrics; using global::ServiceControl.Infrastructure.SignalR; using global::ServiceControl.Infrastructure.WebApi; + using global::ServiceControl.Mcp; using global::ServiceControl.Notifications.Email; using global::ServiceControl.Persistence; using global::ServiceControl.Transports; @@ -56,6 +57,7 @@ public static void AddServiceControl(this IHostApplicationBuilder hostBuilder, S services.AddSingleton(); services.AddSingleton(settings); services.AddEnvironmentDataProvider(); + services.AddEnvironmentDataProvider(); services.AddHttpLogging(options => {