Skip to main content
Glama
Response.cs2.96 kB
using Newtonsoft.Json; namespace MCPForUnity.Editor.Helpers { public interface IMcpResponse { [JsonProperty("success")] bool Success { get; } } public sealed class SuccessResponse : IMcpResponse { [JsonProperty("success")] public bool Success => true; [JsonIgnore] public bool success => Success; // Backward-compatible casing for reflection-based tests [JsonProperty("message")] public string Message { get; } [JsonProperty("data", NullValueHandling = NullValueHandling.Ignore)] public object Data { get; } [JsonIgnore] public object data => Data; public SuccessResponse(string message, object data = null) { Message = message; Data = data; } } public sealed class ErrorResponse : IMcpResponse { [JsonProperty("success")] public bool Success => false; [JsonIgnore] public bool success => Success; // Backward-compatible casing for reflection-based tests [JsonProperty("code", NullValueHandling = NullValueHandling.Ignore)] public string Code { get; } [JsonIgnore] public string code => Code; [JsonProperty("error")] public string Error { get; } [JsonIgnore] public string error => Error; [JsonProperty("data", NullValueHandling = NullValueHandling.Ignore)] public object Data { get; } [JsonIgnore] public object data => Data; public ErrorResponse(string messageOrCode, object data = null) { Code = messageOrCode; Error = messageOrCode; Data = data; } } public sealed class PendingResponse : IMcpResponse { [JsonProperty("success")] public bool Success => true; [JsonIgnore] public bool success => Success; // Backward-compatible casing for reflection-based tests [JsonProperty("_mcp_status")] public string Status => "pending"; [JsonIgnore] public string _mcp_status => Status; [JsonProperty("_mcp_poll_interval")] public double PollIntervalSeconds { get; } [JsonIgnore] public double _mcp_poll_interval => PollIntervalSeconds; [JsonProperty("message", NullValueHandling = NullValueHandling.Ignore)] public string Message { get; } [JsonIgnore] public string message => Message; [JsonProperty("data", NullValueHandling = NullValueHandling.Ignore)] public object Data { get; } [JsonIgnore] public object data => Data; public PendingResponse(string message = "", double pollIntervalSeconds = 1.0, object data = null) { Message = string.IsNullOrEmpty(message) ? null : message; PollIntervalSeconds = pollIntervalSeconds; Data = data; } } }

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/CoplayDev/unity-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server