Skip to main content
Glama

iso_extract

Extract one file from an install ISO to a host inspection directory without mounting, using pure ISO9660/Joliet reads for reverse-engineering inspection.

Instructions

Extract ONE file from an install ISO to the host inspect dir — no mounting (pure ISO9660/Joliet read), e.g. member='/I386/NTOSKRNL.EX_' dest='~/inspect/xp/'.

Inspection only: keep extracted copies OUTSIDE the rebuilt-OS repo and keep only interface facts (RULES.md). Pair with analyze_pe / dump_api_surface.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
destYes
max_mbNo
memberYes
iso_pathYes

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.2.1

TDQS

A3.5/5.0
Behavior3/5

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

With no annotations, the description carries the full burden and does disclose the read mechanism (pure ISO9660/Joliet, no mount) and that output lands on the host inspect dir. It is silent on behavior the agent needs to trust: what happens when the member is absent, whether dest files are overwritten, and what the max_mb default of 64 does when exceeded.

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?

Three short sentences, front-loaded with the core action and its constraint, followed by hygiene and pairing advice. The path example earns its space; nothing is padded, though 'RULES.md' is a niche reference.

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?

An output schema exists, so return-value explanation is not needed, and the description covers mechanism, destination, and workflow placement. The only real gap is undocumented max_mb semantics and unspecified overwrite/error behavior for a tool that writes to the host filesystem.

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 description coverage is 0%, so the description must compensate and it partly does via the worked example for member and dest, with iso_path implied. max_mb — the size guard with a default of 64 — is never mentioned, leaving a required-for-safety parameter entirely undocumented.

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 names a specific verb and resource — extracting ONE file from an install ISO to the host inspect dir — and adds a concrete example with real member/dest values. The 'no mounting (pure ISO9660/Joliet read)' clause implicitly distinguishes it from mount-based siblings like vm_mount_iso, though it never names that alternative.

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

Usage Guidelines3/5

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

It gives workflow guidance ('Inspection only', keep copies outside the rebuilt-OS repo, keep only interface facts in RULES.md) and names downstream tools (analyze_pe, dump_api_surface), but never states when to choose this over iso_inspect, iso_verify, or vm_mount_iso, all of which read/extract ISO content. Usage is implied rather than routed.

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