Skip to main content
Glama

omni_patch_cfg_memory

Inspect binary hex/ASCII, apply non-destructive x86/x64 patches, generate control-flow graphs, and scan live process memory or 64-bit pointers for reverse engineering.

Instructions

Visual CFG, Binary Patcher & Live Memory/Pointer Scanner: Hex + ASCII inspector, non-destructive x86/x64 binary patcher (NOP, RET, Jcc->JMP, raw hex), Basic-Block Control Flow Graph (JSON + inline SVG), and Cheat-Engine-style live process memory value & 64-bit pointer scanner.

Input Schema

NameRequiredDescriptionDefault
actionYesVisual CFG, binary patching, or live RAM scanning action.
targetYesTarget binary path (for hex_view/binary_patch/visual_cfg) or live process PID (for memory_scan/pointer_scan).
scan_typeNoData type for live memory_scan.ascii
patch_or_valueNoPatch spec ('nop:5', 'ret_true', 'ret_false', 'force_jmp', or hex bytes) OR memory value to scan.
address_or_offsetNoFile offset or VA (e.g. '0x400' or '0x140001000'), or target pointer VA for pointer_scan.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv3.2.0

TDQS

C2.8/5.0
Behavior2/5

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

No annotations are supplied, so the description carries the full disclosure burden, and it leaves key behaviors unexplained. 'Non-destructive' binary patching is asserted but never clarified (does it write in place, make a backup, or operate on a copy?), and live memory/pointer scanning raises obvious questions the text ignores: required debug privileges, whether the target process is paused, stability/detection risk, and per-action return shapes. The single word 'non-destructive' is the only behavioral context offered.

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

Conciseness3/5

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

It is a single compact sentence with no filler, which is good, but it is a dense comma-blob of five features with no front-loaded guidance about what to do first. Every clause earns its place as a capability claim, yet the structure gives the agent no hierarchy or decision aid.

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

Completeness2/5

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

This is a complex five-action tool with no annotations and no output schema, so the description should explain what each action produces and what preconditions apply. Instead it only lists features, leaving output formats (e.g. what the CFG JSON/SVG contains, what a scan returns) and prerequisites for live process access entirely unstated.

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 100%, so the baseline is 3. The description's mention of patch modes (NOP, RET, Jcc->JMP, raw hex) and scan targets largely restates what the enum and the patch_or_value description already specify, adding little semantic detail beyond the schema.

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 five specific capabilities with concrete verbs and resources (hex/ASCII inspector, x86/x64 binary patcher, control flow graph, live memory value scanner, 64-bit pointer scanner), so an agent can tell this is a binary-analysis and memory-scanning tool. It does not differentiate itself from the many reverse-engineering siblings, and the compressed comma-list makes the mapping between features and the five enum actions slightly implicit.

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?

There is no guidance on when to pick this tool over siblings such as omni_dynamic_probe, omni_deep_reverse, or omni_modern_unpacker, nor any when-not-to-use condition. The only routing hint lives in the schema (actions map to file path vs PID), not in the description, so the agent must open the schema to learn usage context.

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