Minecraft-Console-Client/MinecraftClient/Mcp/MccMcpConfig.cs

46 lines
1.6 KiB
C#

using Tomlet.Attributes;
namespace MinecraftClient.Mcp;
public sealed class MccMcpConfig
{
public bool Enabled { get; set; }
public MccMcpTransportConfig Transport { get; set; } = new();
public MccMcpCapabilityToggles Capabilities { get; set; } = new();
}
public sealed class MccMcpTransportConfig
{
[TomlInlineComment("$ChatBot.McpServer.Transport.BindHost$")]
public string BindHost { get; set; } = "127.0.0.1";
[TomlInlineComment("$ChatBot.McpServer.Transport.Port$")]
public int Port { get; set; } = 33333;
[TomlInlineComment("$ChatBot.McpServer.Transport.Route$")]
public string Route { get; set; } = "/mcp";
[TomlInlineComment("$ChatBot.McpServer.Transport.RequireAuthToken$")]
public bool RequireAuthToken { get; set; }
[TomlInlineComment("$ChatBot.McpServer.Transport.AuthTokenEnvVar$")]
public string AuthTokenEnvVar { get; set; } = "MCC_MCP_AUTH_TOKEN";
}
public sealed class MccMcpCapabilityToggles
{
[TomlInlineComment("$ChatBot.McpServer.Capabilities.SessionStatus$")]
public bool SessionStatus { get; set; } = true;
[TomlInlineComment("$ChatBot.McpServer.Capabilities.ChatAndCommands$")]
public bool ChatAndCommands { get; set; } = true;
[TomlInlineComment("$ChatBot.McpServer.Capabilities.Movement$")]
public bool Movement { get; set; } = true;
[TomlInlineComment("$ChatBot.McpServer.Capabilities.Inventory$")]
public bool Inventory { get; set; } = true;
[TomlInlineComment("$ChatBot.McpServer.Capabilities.EntityWorld$")]
public bool EntityWorld { get; set; } = true;
}