Skip to main content
Glama
PopBot

Parallels Pro MCP Server

Optimize Windows VM for automation

vm_optimize_windows
Destructive

Optimize a Windows guest VM for automated tasks and scripting by setting Defender scanning exclusions to prevent EPERM/EBUSY file locks and configuring PowerShell ExecutionPolicy to Bypass.

Instructions

Optimize a Windows guest VM for automated tasks, testing, and script execution.

Configures Windows Defender real-time scanning exclusions (preventing EPERM/EBUSY file locks) and sets PowerShell ExecutionPolicy to Bypass.

Args: vm: The Windows VM name or UUID. exclusion_paths: Optional directory paths to exclude from Defender scanning. exclusion_processes: Optional process binary names to exclude (defaults to node.exe, npm.cmd, pnpm.cmd, git.exe, python.exe).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
vmYes
exclusion_pathsNo
exclusion_processesNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
vmYes
uuidYes
messageYes
execution_policyYes
process_exclusions_addedYes
defender_exclusions_addedYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.3.0

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate destructiveHint: true and readOnlyHint: false, so the mutation is known. The description adds valuable behavioral context: it explains the purpose of the exclusions (preventing EPERM/EBUSY file locks) and the PowerShell ExecutionPolicy setting. It does not contradict annotations, and it provides reasoning for the side effects, enhancing transparency beyond the structured flags.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is structured with a summary paragraph followed by an Args list. It is front-loaded with the purpose and then details the parameters. Each sentence adds value; the inclusion of the specific error (EPERM/EBUSY) is useful context. It is slightly longer than strictly necessary but remains efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers the tool's purpose, the parameters, and the core actions. It does not mention prerequisites (e.g., VM must be running) or the return value, but an output schema exists. For a configuration tool with three simple parameters, the description is sufficiently complete for an agent to invoke it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0%, so the description is the sole source of parameter meaning. It clearly defines vm (name or UUID), exclusion_paths (directory paths), and exclusion_processes (process binary names with defaults). This fully compensates for the schema's lack of descriptions, giving an agent everything needed to fill parameters correctly.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific action (optimize) on a specific resource (Windows guest VM) for clear goals (automated tasks, testing, script execution). It explicitly lists the two main configuration changes (Defender exclusions and PowerShell ExecutionPolicy), making it distinct from any sibling tool like vm_start or vm_exec.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage: it's for preparing a VM for automation. It clearly states the context (automated tasks, testing, script execution) but does not explicitly contrast with alternatives or state when not to use it. Given the sibling tools are all about VM lifecycle and operations, this is distinct enough that the usage is clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.