Skip to main content
Glama

omni_native_tls_tracer

Intercepts native Windows x64 TLS plaintext and audits SChannel/OpenSSL targets for Ed25519 prologues, branch checks, IAT integrity, and timebombs, then exports a C++ tracer SDK.

Instructions

Native Windows x64 TLS Plaintext Interceptor (SChannel DecryptMessage / OpenSSL SSL_read), VMProtect-safe Hardware Breakpoint (DR0/DR1 + VEH + NtGetContextThread Cloak), RIP-relative LEA + CALL/TEST/Jcc Branch Scanner, libsodium/Ed25519 Prologue Auditor & C++ Tracer SDK Exporter.

Input Schema

NameRequiredDescriptionDefault
queryNoOptional target string needle for 'scan_lea_xrefs'.
actionYesAction: 'audit_target' (full PE/source TLS, Ed25519 prologue, 4-stage verifier, IAT/Self-CRC/Timebomb & LEA branch audit), 'scan_lea_xrefs' (locate strings, RIP-relative LEA refs & 4-pattern JE/JNE branches), 'scan_crypto_prologues' (detect libsodium Ed25519 prologues, wrappers & .vmp sections), 'scan_verify_4stage' (Priority 0/1/2/3 hierarchical verifier & 512B backward CALL+TEST scanner), 'audit_iat_integrity' (IAT FirstThunk slot VAs, MsvcString SSO scan, Self-CRC MapViewOfFile, Anti-HWBP NtGetContextThread, TLS coalescing, 0xC0DEBABE NTP timebomb & mshta adware audit), 'ed25519_self_test' (RFC 8032 Ed25519 + SHA-512 detached sign/verify test), 'export_tracer_sdk' (export clean C++ x64 SChannel/OpenSSL plaintext dumper & HWBP/VEH SDK).audit_target
target_pathNoPath to target PE/source file or directory (for audit/scan), or output directory (for export_tracer_sdk).

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv3.2.0

TDQS

C2.2/5.0
Behavior2/5

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

With no annotations, the description carries the full behavioral burden and largely fails: it never says the actions are read-only analysis versus that 'export_tracer_sdk' writes files to disk, nor whether hardware-breakpoint/VEH instrumentation is invasive or requires attaching to a live process. Terms like 'VMProtect-safe' and 'NtGetContextThread Cloak' hint at stealth debugging but disclose no consequences, side effects, or runtime requirements.

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?

It is a single dense sentence of buzzword stacking rather than a front-loaded purpose statement; the reader must decode jargon like 'RIP-relative LEA + CALL/TEST/Jcc Branch Scanner' before learning anything actionable. Nothing is wasted in length, but the structure buries the lede entirely.

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?

For a seven-action native reverse-engineering tool with no annotations and no output schema, the description should explain workflow, prerequisites, and expected outputs; instead it only names capabilities. An agent would not know what a successful call returns or which action to chain first.

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?

Input schema coverage is 100% — every parameter and every enum value is documented in the schema itself — so the baseline of 3 applies. The description adds no additional meaning about 'query', 'target_path', or path semantics (file vs. directory vs. output dir) beyond what the schema already states.

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

Purpose2/5

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

The description is a stacked noun phrase of capabilities ('TLS Plaintext Interceptor', 'Prologue Auditor', 'Tracer SDK Exporter') with no governing verb, so it never states what a call actually does — decrypt live traffic, statically analyze a binary, or export code. The domain (Windows x64 TLS/SChannel/Ed25519) does separate it from generic siblings, but an agent cannot infer a single concrete purpose from the sentence 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?

There is no when-to-use guidance at all: no indication of which of the seven actions fits which situation, no prerequisites (Windows-only, elevated privileges, debuggee attach), and no routing toward siblings like omni_deep_reverse or omni_dynamic_probe. The only selection help lives in the enum descriptions within the schema, not in the description.

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