ida-mcp-server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Server capabilities have not been inspected yet.
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| ida_get_function_assembly_by_nameC | Get assembly code for a function by name |
| ida_get_function_assembly_by_addressC | Get assembly code for a function by address |
| ida_get_function_decompiled_by_nameC | Get decompiled pseudocode for a function by name |
| ida_get_function_decompiled_by_addressC | Get decompiled pseudocode for a function by address |
| ida_get_global_variable_by_nameC | Get information about a global variable by name |
| ida_get_global_variable_by_addressC | Get information about a global variable by address |
| ida_get_current_function_assemblyB | Get assembly code for the function at the current cursor position |
| ida_get_current_function_decompiledB | Get decompiled pseudocode for the function at the current cursor position |
| ida_rename_local_variableC | Rename a local variable within a function in the IDA database |
| ida_rename_global_variableC | Rename a global variable in the IDA database |
| ida_rename_functionB | Rename a function in the IDA database |
| ida_rename_multi_local_variablesC | Rename multiple local variables within a function at once in the IDA database |
| ida_rename_multi_global_variablesC | Rename multiple global variables at once in the IDA database |
| ida_rename_multi_functionsC | Rename multiple functions at once in the IDA database |
| ida_add_assembly_commentC | Add a comment at a specific address in the assembly view of the IDA database |
| ida_add_function_commentC | Add a comment to a function in the IDA database |
| ida_add_pseudocode_commentC | Add a comment to a specific address in the function's decompiled pseudocode |
| ida_execute_scriptC | Execute a Python script in IDA Pro and return its output. The script runs in IDA's context with access to all IDA API modules. |
| ida_execute_script_from_fileB | Execute a Python script from a file path in IDA Pro and return its output. The file should be accessible from IDA's process. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 19 tools
Most tools have distinct purposes targeting specific resources (assembly, pseudocode, comments, renaming) with clear boundaries, though the two script execution tools (ida_execute_script and ida_execute_script_from_file) could be confused as they differ only in input source but serve the same core function. Other tools are well-differentiated by action and target.
All tools follow a consistent 'ida_verb_noun' pattern with snake_case throughout, using clear verbs like 'add', 'get', 'rename', and 'execute'. The naming is predictable and readable, making it easy to understand each tool's function at a glance.
With 19 tools, the count is slightly high but reasonable for an IDA Pro server covering analysis tasks like comments, code retrieval, script execution, and renaming. It avoids bloat by focusing on core functionalities, though some tools could potentially be consolidated (e.g., the multiple rename variants).
The tool set provides comprehensive coverage for IDA Pro interaction, including CRUD-like operations for comments, retrieval of assembly and pseudocode by various identifiers, renaming of functions and variables (single and batch), and script execution. No obvious gaps exist for typical reverse engineering workflows.