Loading...
Loading...
IDA Pro Reverse Analysis Assistant Skill. Use this skill whenever the user mentions reverse engineering, decompilation, analyzing binary/PE/ELF/APK/DLL/SO files, cracking, password finding, vulnerability analysis, malware analysis, firmware analysis, or needs to analyze files such as exe/dll/so/elf/macho/sys. Ensure to use this skill when the user wants to analyze any binary file, regardless of whether they explicitly mention "IDA" or "reverse engineering". This includes requests like "Check this exe", "Analyze this dll", "Help me crack it", "Find the password", "How to register this software", etc. Use the bundled scripts (scripts/start.ps1, scripts/open.ps1) for deterministic server management and file opening — do NOT write ad-hoc PowerShell commands for these operations.
npx skill4agent add zhaoxuya520/reverse-skill ida-reverseNOW../field-journal/precedent-reverse.mdNOWNEXT../tool-index.mdNEXTACTidalib_openidalib_openStructured content does not match the tool's output schemascripts/open.ps1idapro_*C:\Windows\System32\open.ps1idalib-mcpscripts/start.ps1-WindowStyle Hiddenida-pro-mcpidaproidapro_*type:"local"idalib_opentype:"remote"mainopen.ps1.id0.id1.namstart.ps1taskkill /F /Topen.ps1idalib_open(run_auto_analysis=true)open.ps1-TimeoutSecondsOK:filename:session_idERR:open_timeout_xxs| Step | What to Do | Tools to Use |
|---|---|---|
| 1 | Ensure the HTTP server is running | |
| 2 | Open the target binary file | |
| 3 | Use all 72 MCP tools | Directly call |
| 4 | Analysis completed | Tools are automatically available |
scripts/start.ps1taskkill /F /Tidalib-mcpOK:72ERR:timeoutpowershell -File "<skill-root>\ida-reverse\scripts\start.ps1"scripts/open.ps1idalib_open.id0.id1.nam.til.i64-TimeoutSecondsERR:open_timeout_xxsINFO:opening:elapsed/timeout secondsOK:filename:session_id(temp copy)powershell -File "<skill-root>\ida-reverse\scripts\open.ps1" -Path "C:\path\to\file.exe"# Specify SessionId
powershell -File "scripts\open.ps1" -Path "file.exe" -SessionId "my_session"
# Skip auto-analysis (recommended for large files)
powershell -File "scripts\open.ps1" -Path "large.exe" -NoAutoAnalysis
# Set timeout to avoid long no-return when opening with auto-analysis
powershell -File "scripts\open.ps1" -Path "file.exe" -TimeoutSeconds 600# Analysis in progress (output every 10 seconds)
INFO:opening:11/600s
# Opened successfully
OK:sample.exe:abcd1234
# Opened successfully, but downgraded to Temp copy due to locked file
OK:1234abcd-sample.exe:abcd1234 (temp copy)
# Reached timeout limit
ERR:open_timeout_600sSnipaste.exe324s-TimeoutSeconds 600idapro_survey_binary(detail_level="minimal")idapro_list_funcs(queries)idapro_list_globals(queries)idapro_entity_query(kind, filter)idapro_decompile(addr)idapro_disasm(addr, max_instructions=N)idapro_analyze_function(addr, include_asm=false)idapro_func_profile(queries)idapro_xrefs_to(addrs)idapro_xref_query(addr, direction)idapro_callees(addrs)idapro_callgraph(roots, max_depth)idapro_trace_data_flow(addr, direction, max_depth)idapro_find_regex(pattern, limit)idapro_search_text(pattern)idapro_find_bytes(patterns, limit)idapro_find(type, targets)idapro_get_bytes(addrs)idapro_get_string(addrs)idapro_get_int(queries)idapro_get_global_value(queries)idapro_read_struct(queries)idapro_search_structs(filter)idapro_set_comments(items)idapro_append_comments(items)idapro_rename(batch)idapro_patch_asm(items)idapro_patch(patches)idapro_define_func(items)idapro_undefine(items)idapro_define_code(items)idapro_declare_type(decls)idapro_set_type(edits)idapro_infer_types(addrs)idapro_type_query(queries)idapro_type_inspect(queries)idapro_stack_frame(addrs)idapro_declare_stack(items)idapro_delete_stack(items)idapro_make_signature(addrs)idapro_make_signature_for_function(addrs)idapro_find_xref_signatures(addrs)idapro_open_file(file_path)?ext=dbgidapro_idalib_open(input_path)open.ps1idapro_idalib_list()idapro_idalib_current()idapro_idalib_switch(session_id)idapro_idalib_close(session_id)idapro_idalib_save(path)idapro_idalib_health(session_id)idapro_int_convert(inputs)idapro_export_funcs(addrs, format)idapro_py_eval(code)idapro_server_health()idapro_server_warmup()powershell -File "scripts/start.ps1"OK:72powershell -File "scripts/open.ps1" -Path "C:\target.exe" -TimeoutSeconds 600OK:filename:session_id(temp copy)INFO:opening:...ERR:open_timeout_xxsidapro_survey_binary(detail_level="minimal")E-importsidapro_entity_query(kind="imports")E-exportsE-iat-repair-failidapro_analyze_function(addr="key_function_name")idapro_decompile(addr="function_name")
idapro_disasm(addr="function_name", max_instructions=50)idapro_xrefs_to(addrs="key_address/string")
idapro_callgraph(roots=["key_function"], max_depth=3)
idapro_trace_data_flow(addr="key_address", direction="backward", max_depth=5)idapro_set_comments(items=[{"addr": "0x140001000", "comment": "Your understanding"}])
idapro_rename(batch={"func": [{"addr": "function_address", "name": "meaningful_name"}]})report.mdidapro_int_convertxrefs_toopen.ps1open.ps1(temp copy)-TimeoutSeconds 600INFO:opening:...skills/SKILL.mdrouting.mdradare2/reverse-engineering/tools-dynamic.mdreverse-engineering/tools-dynamic.mdreverse-engineering/SKILL.mdradare2/| Tool | Auto-installable | Installation Method | Notes |
|---|---|---|---|
| idalib-mcp | ✓ | pip install (from GitHub) | Automatically installed when |
| IDA Pro本体 | ✗ | Commercial software, manual installation required | Set |
# 1. Set IDA path (replace with your actual IDA installation directory)
setx IDADIR "<your-ida-installation-directory>"
# 2. Install ida-pro-mcp from GitHub (ida-mcp on PyPI is another project, do not install it by mistake!)
pip install git+https://github.com/mrexodia/ida-pro-mcp.git
# 3. Install IDA plugin (select Streamable HTTP + Global + all clients)
ida-pro-mcp --install
# 4. Restart IDA Pro and open the target file
# The plugin automatically listens on 127.0.0.1:13337
# 5. Verify
ida-pro-mcp --config⚠️ Note: Thepackage on PyPI (author jtsylve) is another project, not what we need. Must installida-mcpfrom GitHub.mrexodia/ida-pro-mcp
scripts/start.ps1bootstrap-reverse.ps1idalib-mcpidaproIDADIRtool-index