/
CyberSys
/
unity-mcp-bridge
Обзор
Документация
Войти
/
CyberSys
/
unity-mcp-bridge
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
MCPForUnity/Editor/Services/ClientConfigurationService.cs
59 строк
2 KB
Marcus Sanatan
Simplify MCP client configs (#401)
28 ноя 2025, 01:18
Не верифицирован
28 ноя 2025, 01:18
f94cb24
Код
Авторство
О чём код?
using System; using System.Collections.Generic; using System.Linq; using MCPForUnity.Editor.Clients; using MCPForUnity.Editor.Models; namespace MCPForUnity.Editor.Services { /// <summary> /// Implementation of client configuration service /// </summary> public class ClientConfigurationService : IClientConfigurationService { private readonly List<IMcpClientConfigurator> configurators; public ClientConfigurationService() { configurators = McpClientRegistry.All.ToList(); } public IReadOnlyList<IMcpClientConfigurator> GetAllClients() => configurators; public void ConfigureClient(IMcpClientConfigurator configurator) { configurator.Configure(); } public ClientConfigurationSummary ConfigureAllDetectedClients() { var summary = new ClientConfigurationSummary(); foreach (var configurator in configurators) { try { // Always re-run configuration so core fields stay current configurator.CheckStatus(attemptAutoRewrite: false); configurator.Configure(); summary.SuccessCount++; summary.Messages.Add($"✓ {configurator.DisplayName}: Configured successfully"); } catch (Exception ex) { summary.FailureCount++; summary.Messages.Add($"⚠ {configurator.DisplayName}: {ex.Message}"); } } return summary; } public bool CheckClientStatus(IMcpClientConfigurator configurator, bool attemptAutoRewrite = true) { var previous = configurator.Status; var current = configurator.CheckStatus(attemptAutoRewrite); return current != previous; } } }