Skip to main content
Glama
31Benzi

IDA Pro MCP Server

by 31Benzi

disassemble_function

Retrieve the assembly listing of a function by specifying its name or hexadecimal address.

Instructions

Get the assembly listing of a function. Pass a function name or hex address (e.g. '0x401000' or 'main').

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
identifierYes

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes
Behavior2/5

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

No annotations are provided, so the description must disclose all behavioral traits. It states only that the tool returns an 'assembly listing' but does not describe the listing's structure (e.g., whether it includes addresses, bytes, mnemonics, or raw text), nor any side effects, error conditions, or prerequisites (e.g., requiring an open database). The output schema may cover return format, but the description adds minimal transparency beyond the basic purpose.

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 concise (one sentence) and front-loaded with the core purpose. It includes an example inline without being verbose. However, splitting the example into a separate sentence or list could improve readability slightly, but current format is efficient and earns its place.

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?

Given the tool's simplicity (single parameter, likely read-only), the description is minimally adequate. It covers purpose and input format. However, it omits error handling (e.g., what if the function is not found or address is invalid), disambiguation of overloaded symbols, and any output description (though an output schema exists). An agent might need to experiment to understand edge cases.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With 0% schema coverage, the description compensates well by explaining the parameter's acceptable values: 'function name or hex address (e.g. '0x401000' or 'main').' This adds format guidance and concrete examples, making the parameter's intended usage clear. The only shortcoming is lack of details on how the tool resolves names (e.g., whether it requires exact symbol name or supports partial matches).

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's purpose: 'Get the assembly listing of a function.' It uses a specific verb ('Get') and resource ('assembly listing of a function'). However, it does not explicitly differentiate from sibling tools like disassemble_range or decompile_function, which could cause ambiguity for an agent.

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 minimal usage guidance: 'Pass a function name or hex address (e.g. '0x401000' or 'main').' This tells how to format the input but offers no comparative guidance on when to use this tool versus alternatives (e.g., decompile_function for source code, disassemble_range for arbitrary byte ranges). The agent is left to infer usage context from the tool name alone.

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