Skip to main content
Glama

mem_read

Read-only

Read bytes from guest physical memory in DOSBox, returning base64 data and current CPU register state for debugging or analysis.

Instructions

Read bytes from guest physical memory. Returns base64 data and current CPU register state.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
lengthYesNumber of bytes to read (max 65536).
offsetYesPhysical memory offset to read from.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.2.1

TDQS

A3.6/5.0
Behavior4/5

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

The readOnlyHint annotation already establishes the safety profile, so the description's real contribution is disclosing the return payload: base64 data plus current CPU register state. That return-shape disclosure is genuinely useful and not derivable from the schema, though nothing is said about the 64KB cap or error behavior on invalid offsets.

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

Conciseness5/5

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

Two sentences, no filler, and the core action is front-loaded ahead of the return-value detail. Every clause carries information.

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?

With no output schema, the description usefully specifies the return contents, and it covers the essential mechanics of a two-parameter read. It is nearly complete, missing only execution-context preconditions that a memory-read tool would ideally state.

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

Parameters3/5

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

Schema coverage is 100%, with both offset and length documented in the schema itself, so the baseline of 3 applies. The description adds no syntax, alignment, or address-space clarification beyond what the schema already states.

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?

States a specific verb (read) and resource (guest physical memory), which cleanly separates it from the sibling mem_write and mem_search tools. It stops short of explicitly naming those siblings, but an agent can identify the operation unambiguously from the verb+resource alone.

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?

Provides no when-to-use guidance, no prerequisites (e.g., must the guest be paused?), and no routing to alternatives like mem_search for locating values or dos_memory_map for address translation. The agent must infer all context from the tool name.

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