Skip to content

Conversation

@praveenkuttappan
Copy link
Member

This PR adds CLI command to list all MCP tools, description and CLI command in Az SDK MCP server.

usage:
azsdk list -o json (to get json output)
azsdk list

@praveenkuttappan praveenkuttappan self-assigned this Nov 21, 2025
Copilot AI review requested due to automatic review settings November 21, 2025 17:12
@praveenkuttappan praveenkuttappan added the DevEx Agent Developer experience agent work label Nov 21, 2025
@praveenkuttappan praveenkuttappan requested a review from a team as a code owner November 21, 2025 17:12
@praveenkuttappan
Copy link
Member Author

@smw-ms @jeo02 This PR adds a tool to list MCP tools and description.

Copilot finished reviewing on behalf of praveenkuttappan November 21, 2025 17:15
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR introduces a new list command to enumerate all available MCP tools along with their descriptions and CLI command syntax. The implementation adds a custom McpCommand class that extends the standard Command class to associate each CLI command with its corresponding MCP tool name, enabling better tool discovery and documentation.

Key changes:

  • Added McpCommand class to link CLI commands with MCP tool names
  • Implemented ListCommandTool to traverse the command tree and display all available tools
  • Updated all existing tool commands to use McpCommand instead of Command

Reviewed changes

Copilot reviewed 31 out of 31 changed files in this pull request and generated 7 comments.

Show a summary per file
File Description
Commands/McpCommand.cs New command class extending System.CommandLine.Command with MCP tool name property
Models/ToolInfo.cs Data model to hold tool name, description, and CLI command information
Models/Responses/ToolListResponse.cs Formats tool list as a markdown-style table for display
Tools/Core/ListCommandTool.cs Implements list command by traversing command tree and querying registered MCP tools
Program.cs Moves MCP tool registration earlier to support both CLI and MCP server modes
Commands/SharedOptions.cs Registers ListCommandTool with the tool registry
All other tool files Updated to use McpCommand constructor with MCP tool name parameter

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

https://github.com/microsoft/mcp/blob/main/eng/tools/ToolDescriptionEvaluator/tools.json

Is this list command tool able to return metadata like options. I need the json file generated to look like this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

DevEx Agent Developer experience agent work

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants