Skip to main content
Glama

omni_bsim_vault

Index stripped or reference library function signatures and binary fingerprints to match unknown functions across binaries and search signatures with full-text queries.

Instructions

Local SQLite FTS5 Function Signature & Binary Fingerprint Vault (FLIRT / Ghidra BSim style): index stripped or reference library prologues, match unknown functions across binaries, and full-text search signatures.

Input Schema

NameRequiredDescriptionDefault
actionYesVault operation to execute.
target_pathNoBinary path (for index_binary / match_functions) or search query.
query_or_label_prefixNoOptional library prefix when indexing (e.g. 'openssl_3') or FTS5 search keyword.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv3.2.0

TDQS

B3.2/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full behavioral burden. It mentions local SQLite FTS5 storage and FLIRT/Ghidra BSim style, but it does not state that index_binary writes or updates a vault, whether indexing overwrites or is incremental, what match_functions returns, or what side effects or permissions are involved.

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?

The description is a single front-loaded sentence with no filler, and each clause maps directly to the vault's storage style or one of its capabilities. It is dense but appropriately sized for a short tool description.

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 three-action tool with no annotations and no output schema, the description is too high-level. It omits result formats, indexing side effects, matching criteria or output, and search semantics, so an agent can infer the broad purpose but lacks details needed for confident invocation.

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 schema already documents all three parameters and the action enum. The description restates the broad operations but adds little semantic detail beyond the schema, such as how target_path is interpreted differently for search versus indexing or how query_or_label_prefix is applied in each action.

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 the resource precisely as a local SQLite FTS5 function-signature and binary-fingerprint vault and lists the three capabilities: indexing prologues, matching unknown functions across binaries, and full-text searching signatures. It is clear about what it does, but it does not explicitly distinguish itself from sibling reverse-engineering tools such as omni_inspect_symbol.

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?

The description implies usage contexts, such as indexing stripped or reference library prologues and matching unknown functions across binaries. However, it gives no explicit when-to-use versus when-not guidance, no alternatives among the many sibling tools, and no prerequisites for indexing or matching.

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