Skip to main content
Glama

Azure MCP Server

Official
MIT License
1,161
  • Linux
  • Apple
TestGetCommand.cs3.16 kB
// Copyright (c) Microsoft Corporation. // Licensed under the MIT License. using AzureMcp.Core.Commands; using AzureMcp.Core.Models.Option; using AzureMcp.LoadTesting.Models.LoadTest; using AzureMcp.LoadTesting.Options.LoadTest; using AzureMcp.LoadTesting.Services; using Microsoft.Extensions.Logging; namespace AzureMcp.LoadTesting.Commands.LoadTest; public sealed class TestGetCommand(ILogger<TestGetCommand> logger) : BaseLoadTestingCommand<TestGetOptions> { private const string _commandTitle = "Test Get"; private readonly ILogger<TestGetCommand> _logger = logger; private readonly Option<string> _loadTestIdOption = OptionDefinitions.LoadTesting.Test; public override string Name => "get"; public override string Description => $""" Get the Azure Load Testing test configuration for the specified load test id in the specified load test resource. This command retrieves the details of a specific load test configuration, including its parameters and settings. Based on this we can see what all parameters were set for the test configuration. """; public override string Title => _commandTitle; public override ToolMetadata Metadata => new() { Destructive = false, ReadOnly = true }; protected override void RegisterOptions(Command command) { base.RegisterOptions(command); command.AddOption(_loadTestIdOption); } protected override TestGetOptions BindOptions(ParseResult parseResult) { var options = base.BindOptions(parseResult); options.TestId = parseResult.GetValueForOption(_loadTestIdOption); return options; } public override async Task<CommandResponse> ExecuteAsync(CommandContext context, ParseResult parseResult) { var options = BindOptions(parseResult); try { // Required validation step using the base Validate method if (!Validate(parseResult.CommandResult, context.Response).IsValid) { return context.Response; } // Get the appropriate service from DI var service = context.GetService<ILoadTestingService>(); // Call service operation(s) var results = await service.GetTestAsync( options.Subscription!, options.TestResourceName!, options.TestId!, options.ResourceGroup, options.Tenant, options.RetryPolicy); // Set results if any were returned context.Response.Results = results != null ? ResponseResult.Create(new TestGetCommandResult(results), LoadTestJsonContext.Default.TestGetCommandResult) : null; } catch (Exception ex) { // Log error with context information _logger.LogError(ex, "Error in {Operation}. Options: {Options}", Name, options); // Let base class handle standard error processing HandleException(context, ex); } return context.Response; } internal record TestGetCommandResult(Test Test); }

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/Azure/azure-mcp'

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