Skip to main content
Glama

find_commands

Search and retrieve PowerShell commands using a specific term, enabling efficient command discovery and execution on Windows systems via the PowerShell MCP Server.

Input Schema

NameRequiredDescriptionDefault
searchYesSearch term for PowerShell commands

Input Schema (JSON Schema)

{ "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "search": { "description": "Search term for PowerShell commands", "type": "string" } }, "required": [ "search" ], "type": "object" }

Implementation Reference

  • Handler function that executes PowerShell 'Get-Command' with the provided search term, formats results as JSON, and returns them via MCP content structure. Handles errors appropriately.
    async ({ search }: { search: string }) => { try { const command = ` Get-Command -Name "*${search}*" -ErrorAction SilentlyContinue | Select-Object Name, CommandType, Version, Source | Sort-Object Name | ConvertTo-Json `; const { stdout, stderr } = await execAsync( `powershell -Command "${command.replace(/"/g, '\\"')}"` ); if (stderr) { return { isError: true, content: [ { type: 'text' as const, text: `Error finding commands: ${stderr}`, }, ], }; } return { content: [ { type: 'text' as const, text: stdout || 'No commands found matching the search term.', }, ], }; } catch (error) { return { isError: true, content: [ { type: 'text' as const, text: `Error finding commands: ${(error as Error).message}`, }, ], }; } }
  • Zod input schema defining the 'search' parameter as a required string.
    { search: z.string().describe('Search term for PowerShell commands'), },
  • src/index.ts:260-310 (registration)
    MCP server tool registration for 'find_commands', including schema and inline handler.
    this.server.tool( 'find_commands', { search: z.string().describe('Search term for PowerShell commands'), }, async ({ search }: { search: string }) => { try { const command = ` Get-Command -Name "*${search}*" -ErrorAction SilentlyContinue | Select-Object Name, CommandType, Version, Source | Sort-Object Name | ConvertTo-Json `; const { stdout, stderr } = await execAsync( `powershell -Command "${command.replace(/"/g, '\\"')}"` ); if (stderr) { return { isError: true, content: [ { type: 'text' as const, text: `Error finding commands: ${stderr}`, }, ], }; } return { content: [ { type: 'text' as const, text: stdout || 'No commands found matching the search term.', }, ], }; } catch (error) { return { isError: true, content: [ { type: 'text' as const, text: `Error finding commands: ${(error as Error).message}`, }, ], }; } } );

Other Tools

Related Tools

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/posidron/mcp-powershell'

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