PowerShell MCP toolkit for executing PowerShell commands via MCP protocol
Two tools with basic schemas but significant quality gaps. powershell_command has proper parameter types and descriptions, but returns unstructured text strings instead of structured objects, violating pattern:response-shaper. get_powershell_info lacks parameter descriptions (empty input schema) and returns raw JSON wrapped in emoji strings. Both tools lack error categorization and recovery guidance. Descriptions are present but generic. No tool annotations (readOnlyHint/destructiveHint). powershell_command is high-risk (WRITE) but has no confirmation or dry-run pattern.
获取PowerShell版本和系统信息
Execute PowerShell command and return the result.
Unstructured text responses instead of structured objects. Both tools return emoji-prefixed strings (✅/❌/⏰) that require LLM parsing. Should return {success: bool, data: object, error?: string} with typed fields.
No error categorization or recovery guidance. Errors return raw strings like 'PowerShell not found' without actionable next steps. Should classify as retryable/user-fixable/fatal and suggest alternatives.
powershell_command (WRITE risk) lacks confirmation or dry-run pattern. Agents can execute arbitrary destructive commands without safeguards. Should support --WhatIf or require explicit confirmation.
get_powershell_info has empty input schema (no parameters) but description is in Chinese ('获取PowerShell版本和系统信息'), creating language mismatch. Description under 20 chars in English context.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 44 | 2026-07-28+ | v2 |
No tool annotations. powershell_command should have destructiveHint=true; get_powershell_info should have readOnlyHint=true. Missing annotations prevent clients from applying appropriate safety policies.