Skip to main content
Glama

read_guest_file

Read a file from a VirtualBox guest VM by VM name or UUID and path, with optional UTF-8 or Base64 encoding and a byte limit. Use it to inspect guest files without running commands.

Instructions

Read a file from the guest.

Input Schema

NameRequiredDescriptionDefault
vmYesVM name or UUID
pathYes
encodingNoutf8
maxBytesNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

C2.3/5.0
Behavior2/5

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

With no annotations provided, the description carries the full behavioral burden but only states that it reads a file. It does not disclose permission requirements, error handling, what happens when the file is too large, how encoding is applied, or whether reads are non-destructive. The read implication is useful but far from complete.

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

Conciseness2/5

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

The description is a single short sentence with no wasted words, but its brevity reflects under-specification rather than effective conciseness. There is no structure or front-loaded detail to help an agent understand the operation beyond the bare verb and resource.

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

Completeness1/5

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

For a tool with four parameters, no annotations, and no output schema, the description is completely inadequate. It omits essential context about VM prerequisites, file path semantics, encoding and size handling, and return behavior, leaving the agent unable to call the tool confidently.

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

Parameters1/5

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

Schema description coverage is only 25%, and the description does not compensate. It vaguely maps 'guest' to the vm parameter and 'file' to path, but says nothing about path format, the encoding default and base64 behavior, or what maxBytes does when a file exceeds the limit.

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

Purpose4/5

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

The description uses a specific verb and resource: 'Read a file from the guest.' It clearly indicates a read operation on a guest file, which distinguishes it from siblings such as write_guest_file and delete_guest_file. However, it does not clarify whether 'guest' means VM guest OS or something else, leaving minor ambiguity.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives like list_guest_files or execute_command. It does not mention prerequisites such as the VM needing to be running or guest tools being available, so the agent must infer usage conditions.

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