using System;
using System.Collections.Generic;
using MCPForUnity.Editor.Helpers;
using Newtonsoft.Json.Linq;
using UnityEngine;
namespace MCPForUnity.Editor.Resources.Project
{
/// <summary>
/// Provides dictionary of layer indices to layer names.
/// </summary>
[McpForUnityResource("get_layers")]
public static class Layers
private const int TotalLayerCount = 32;
public static object HandleCommand(JObject @params)
try
var layers = new Dictionary<int, string>();
for (int i = 0; i < TotalLayerCount; i++)
string layerName = LayerMask.LayerToName(i);
if (!string.IsNullOrEmpty(layerName))
layers.Add(i, layerName);
}
return new SuccessResponse("Retrieved current named layers.", layers);
catch (Exception e)
return new ErrorResponse($"Failed to retrieve layers: {e.Message}");