From 06a562ad0bf569bb0333d0dfb7395510775aff7c Mon Sep 17 00:00:00 2001 From: anannya03 Date: Wed, 24 Sep 2025 12:40:50 -0700 Subject: [PATCH 1/6] Enhanced tool description for listing azure subscriptions --- .../Subscription/Commands/SubscriptionListCommand.cs | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/core/Azure.Mcp.Core/src/Areas/Subscription/Commands/SubscriptionListCommand.cs b/core/Azure.Mcp.Core/src/Areas/Subscription/Commands/SubscriptionListCommand.cs index 8095d8fbc5..35cb416fbd 100644 --- a/core/Azure.Mcp.Core/src/Areas/Subscription/Commands/SubscriptionListCommand.cs +++ b/core/Azure.Mcp.Core/src/Areas/Subscription/Commands/SubscriptionListCommand.cs @@ -17,11 +17,9 @@ public sealed class SubscriptionListCommand(ILogger log public override string Name => "list"; - public override string Description => - $""" - List all Azure subscriptions accessible to your account. Optionally specify {OptionDefinitions.Common.TenantName} - and {OptionDefinitions.Common.AuthMethodName}. Results include subscription names and IDs, returned as a JSON array. - """; +public override string Description => """ +List all subscriptions for my account (your account); inspect subscription metadata/status; enumerate scopes for governance, policy, access, or cost management; or discover further subscription-level commands (policies, access, settings) in multi-subscription scenarios. Azure subscription operations router. A subscription is the billing and administrative boundary above resource groups and resources. Invocation: set "command" plus its arguments inside "parameters"; set "learn=true" to list available sub-commands and their required parameters. Returns only subscriptions you are permitted to view. Not for: resource group or individual resource CRUD, tenant-wide AAD tasks, billing account administration, or directory policy management. Shows subscriptionId, displayName, state, tenantId, isDefault (current/default) to help choose a working scope. +"""; public override string Title => CommandTitle; From a753bd078bf688f25ccf5af4c9e0c8a076217200 Mon Sep 17 00:00:00 2001 From: anannya03 Date: Thu, 25 Sep 2025 14:19:53 -0700 Subject: [PATCH 2/6] modified the description --- .../Areas/Subscription/Commands/SubscriptionListCommand.cs | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/core/Azure.Mcp.Core/src/Areas/Subscription/Commands/SubscriptionListCommand.cs b/core/Azure.Mcp.Core/src/Areas/Subscription/Commands/SubscriptionListCommand.cs index 35cb416fbd..ccddbd70a0 100644 --- a/core/Azure.Mcp.Core/src/Areas/Subscription/Commands/SubscriptionListCommand.cs +++ b/core/Azure.Mcp.Core/src/Areas/Subscription/Commands/SubscriptionListCommand.cs @@ -17,10 +17,9 @@ public sealed class SubscriptionListCommand(ILogger log public override string Name => "list"; -public override string Description => """ -List all subscriptions for my account (your account); inspect subscription metadata/status; enumerate scopes for governance, policy, access, or cost management; or discover further subscription-level commands (policies, access, settings) in multi-subscription scenarios. Azure subscription operations router. A subscription is the billing and administrative boundary above resource groups and resources. Invocation: set "command" plus its arguments inside "parameters"; set "learn=true" to list available sub-commands and their required parameters. Returns only subscriptions you are permitted to view. Not for: resource group or individual resource CRUD, tenant-wide AAD tasks, billing account administration, or directory policy management. Shows subscriptionId, displayName, state, tenantId, isDefault (current/default) to help choose a working scope. -"""; - + public override string Description => """ + List all subscriptions for an account; list current subscriptions available to a user. Returns subscriptionId, displayName, state, tenantId, isDefault for scope selection in governance, policy, access, cost management, or deployment. A subscription is the billing and administrative boundary above resource groups and resources. Optional parameters: tenant, retry-* (delay/max-delay/max-retries/mode/network-timeout). Not for resource group/resource CRUD, tenant-wide AAD tasks, billing account administration, or directory policy management. + """; public override string Title => CommandTitle; public override ToolMetadata Metadata => new() From f0a7a60be2ff0d1278c3ea4a97bbba5f2b8f7d75 Mon Sep 17 00:00:00 2001 From: anannya03 Date: Sat, 27 Sep 2025 19:37:59 -0700 Subject: [PATCH 3/6] cleaned up the description --- .../Areas/Subscription/Commands/SubscriptionListCommand.cs | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/core/Azure.Mcp.Core/src/Areas/Subscription/Commands/SubscriptionListCommand.cs b/core/Azure.Mcp.Core/src/Areas/Subscription/Commands/SubscriptionListCommand.cs index ccddbd70a0..7abfce3c05 100644 --- a/core/Azure.Mcp.Core/src/Areas/Subscription/Commands/SubscriptionListCommand.cs +++ b/core/Azure.Mcp.Core/src/Areas/Subscription/Commands/SubscriptionListCommand.cs @@ -17,9 +17,10 @@ public sealed class SubscriptionListCommand(ILogger log public override string Name => "list"; - public override string Description => """ - List all subscriptions for an account; list current subscriptions available to a user. Returns subscriptionId, displayName, state, tenantId, isDefault for scope selection in governance, policy, access, cost management, or deployment. A subscription is the billing and administrative boundary above resource groups and resources. Optional parameters: tenant, retry-* (delay/max-delay/max-retries/mode/network-timeout). Not for resource group/resource CRUD, tenant-wide AAD tasks, billing account administration, or directory policy management. - """; + public override string Description => + "List all or current subscriptions for an account in Azure; returns subscriptionId, displayName, state, tenantId, and isDefault for scope selection in governance, policy, access, cost management, or deployment. " + + "Not for resource group or resource CRUD, tenant-wide AAD tasks, billing account administration, or directory policy management."; + public override string Title => CommandTitle; public override ToolMetadata Metadata => new() From ac98b59a727cf8f8615ca20721ccc99544bf79e0 Mon Sep 17 00:00:00 2001 From: anannya03 Date: Mon, 29 Sep 2025 16:03:26 -0700 Subject: [PATCH 4/6] modified description --- .../src/Areas/Subscription/Commands/SubscriptionListCommand.cs | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/core/Azure.Mcp.Core/src/Areas/Subscription/Commands/SubscriptionListCommand.cs b/core/Azure.Mcp.Core/src/Areas/Subscription/Commands/SubscriptionListCommand.cs index 7abfce3c05..08f3cf4574 100644 --- a/core/Azure.Mcp.Core/src/Areas/Subscription/Commands/SubscriptionListCommand.cs +++ b/core/Azure.Mcp.Core/src/Areas/Subscription/Commands/SubscriptionListCommand.cs @@ -18,8 +18,7 @@ public sealed class SubscriptionListCommand(ILogger log public override string Name => "list"; public override string Description => - "List all or current subscriptions for an account in Azure; returns subscriptionId, displayName, state, tenantId, and isDefault for scope selection in governance, policy, access, cost management, or deployment. " + - "Not for resource group or resource CRUD, tenant-wide AAD tasks, billing account administration, or directory policy management."; + "List all or current subscriptions for an account in Azure; returns subscriptionId, displayName, state, tenantId, and isDefault for scope selection in governance, policy, access, cost management, or deployment."; public override string Title => CommandTitle; From 69f25ee95a7d797bb15878f467aabca882daabfa Mon Sep 17 00:00:00 2001 From: anannya03 Date: Mon, 29 Sep 2025 16:15:37 -0700 Subject: [PATCH 5/6] modified description --- .../src/Areas/Subscription/Commands/SubscriptionListCommand.cs | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/core/Azure.Mcp.Core/src/Areas/Subscription/Commands/SubscriptionListCommand.cs b/core/Azure.Mcp.Core/src/Areas/Subscription/Commands/SubscriptionListCommand.cs index 08f3cf4574..9abc95bccf 100644 --- a/core/Azure.Mcp.Core/src/Areas/Subscription/Commands/SubscriptionListCommand.cs +++ b/core/Azure.Mcp.Core/src/Areas/Subscription/Commands/SubscriptionListCommand.cs @@ -18,8 +18,7 @@ public sealed class SubscriptionListCommand(ILogger log public override string Name => "list"; public override string Description => - "List all or current subscriptions for an account in Azure; returns subscriptionId, displayName, state, tenantId, and isDefault for scope selection in governance, policy, access, cost management, or deployment."; - +"List all or current subscriptions for an account in Azure; returns subscriptionId, displayName, state, tenantId, and isDefault. Use for scope selection in governance, policy, access, cost management, or deployment."; public override string Title => CommandTitle; public override ToolMetadata Metadata => new() From 76afeabea3807f26e0e22328e632b57ac8f5e4a1 Mon Sep 17 00:00:00 2001 From: anannya03 Date: Mon, 29 Sep 2025 16:41:06 -0700 Subject: [PATCH 6/6] fixed indentation --- .../src/Areas/Subscription/Commands/SubscriptionListCommand.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/Azure.Mcp.Core/src/Areas/Subscription/Commands/SubscriptionListCommand.cs b/core/Azure.Mcp.Core/src/Areas/Subscription/Commands/SubscriptionListCommand.cs index 9abc95bccf..021bb5b434 100644 --- a/core/Azure.Mcp.Core/src/Areas/Subscription/Commands/SubscriptionListCommand.cs +++ b/core/Azure.Mcp.Core/src/Areas/Subscription/Commands/SubscriptionListCommand.cs @@ -18,7 +18,7 @@ public sealed class SubscriptionListCommand(ILogger log public override string Name => "list"; public override string Description => -"List all or current subscriptions for an account in Azure; returns subscriptionId, displayName, state, tenantId, and isDefault. Use for scope selection in governance, policy, access, cost management, or deployment."; + "List all or current subscriptions for an account in Azure; returns subscriptionId, displayName, state, tenantId, and isDefault. Use for scope selection in governance, policy, access, cost management, or deployment."; public override string Title => CommandTitle; public override ToolMetadata Metadata => new()