Skip to main content
Glama
31Benzi

IDA Pro MCP Server

by 31Benzi

get_microcode

Retrieve Hex-Rays intermediate representation (microcode) for a function to inspect decompilation internals. Specify a maturity level to control which optimization stage is returned.

Instructions

Get the Hex-Rays intermediate representation (microcode) for a function. Maturity levels: generated, preoptimized, locopt, calls, glbopt1, glbopt2, glbopt3, lvars.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
maturityNopreoptimized
identifierYes

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes
Behavior3/5

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

The description adds value by listing the maturity levels, which informs the agent about the stages of microcode optimization. However, given no annotations are provided, it does not disclose any side effects, prerequisites (e.g., whether Hex-Rays is available), or performance considerations, leaving some burden unmet.

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?

The description is a single, concise paragraph that front-loads the core purpose and then lists key values for the maturity parameter. It is efficient with no filler, though it could be more structured for readability.

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

Completeness3/5

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

The tool has an output schema (not shown), which reduces the need to explain return values. However, for a tool that returns a complex IR, the description lacks context on how maturity levels affect the output and what the identifier should be (e.g., function name or address). It is minimally complete but misses critical practical details.

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?

With schema description coverage at 0%, the description does not explain the parameters beyond the schema. It mentions 'maturity' and 'identifier' per the schema, but no additional meaning; the maturity levels listed are a helpful start, but the identifier is not elaborated. Given the schema covers parameter existence but not detailed semantics, the description partially compensates.

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 clearly states the tool gets the Hex-Rays microcode for a function, which is specific and distinguishes it from sibling tools like decompile_function and disassemble_function. However, it doesn't explicitly name alternatives, so it's clear but not fully differentiated.

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?

The description provides no guidance on when to use this tool versus alternatives such as decompile_function or disassemble_function. It implies usage for obtaining microcode but does not explain scenarios where microcode is preferred over other representations.

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

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/31Benzi/IDA-PRO-MCP'

If you have feedback or need assistance with the MCP directory API, please join our Discord server