#119 by GitHub stars

mrexodia/ida-pro-mcp

IDA Pro Python scripting for reverse engineering. Use when writing IDAPython scripts, analyzing binaries, working with IDA's API for disassembly, decompilation (Hex-Rays), type systems, cross-references, functions, segments, or any IDA database manipulation. Covers ida_* modules (50+), idautils iter

History

Review weekly changes to SKILL.md before updating. Dates mark the weeks in which we observed each version; checks apply to the recorded commits.

View weekly changes

skills/idapython/SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Instructions only → After Local scripts

c133c3853faa → c133c3853faa

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Instructions only

First observation → c133c3853faa

No earlier version was observed for comparison.

Compare on GitHub

View on GitHubAdd to my skills

Verified commit c133c3853faa111a9b00ee615c013b720d0c4acd

git clone --filter=blob:none --no-checkout https://github.com/mrexodia/ida-pro-mcp.git .hotskills/mrexodia-ida-pro-mcp && git -C .hotskills/mrexodia-ida-pro-mcp checkout --detach c133c3853faa111a9b00ee615c013b720d0c4acd # Copy each selected skill directory from .hotskills/mrexodia-ida-pro-mcp into .claude/skills/<skill-name>/
13.4kGitHub stars
161stars in 7 days
1skill in this repository
0commits in 30 days

Heat

5.9
  • Star growth, last 7 daysAhead of 87% of tracked repositories
  • Star growth, last 24 hoursAhead of 70% of tracked repositories
  • Rank movement, last 7 daysAhead of 74% of tracked repositories
  • Commits, last 30 daysAhead of 0% of tracked repositories
  • Accounts asking about it through MCP, last 7 daysNot available
  • Hot votes this weekAhead of 0% of tracked repositories

Heat never changes the order by stars, and sponsorship never touches it. How heat works

Stars over time

Aug 2, 2026Nov 6, 202613,384

Individual skills in this repository

How it works

idapython

When your agent uses it

IDA Pro Python scripting for reverse engineering. Use when writing IDAPython scripts, analyzing binaries, working with IDA's API for disassembly, decompilation (Hex-Rays), type systems, cross-references, functions, segments, or any IDA database manipulation. Covers ida_* modules (50+), idautils iterators, and common patterns.

What it loads into context

Frontmatter

82 tokens

Always available to the agent

SKILL.md

1,547 tokens

When the skill is activated

Reference documents

39,608 tokens

Loaded on request

Token counts are estimates. Scripts run separately; they are not counted as reference context.

The playbook

  1. Module Router
  2. Core Patterns
  3. Key Constants
  4. Critical Rules
  5. Anti-Patterns
  6. Detailed API Reference

Files

  • ../../.claude-plugin/plugin.jsonasset367 bytes
  • SKILL.mdcore5,007 bytes
  • SKILL.mdcore5,007 bytes
  • SKILL.mdcore5,007 bytes
  • SKILL.mdcore5,007 bytes
  • SKILL.mdcore5,007 bytes
  • SKILL.mdcore5,007 bytes
  • SKILL.mdcore5,007 bytes
  • SKILL.mdcore5,007 bytes
  • SKILL.mdcore5,007 bytes
  • SKILL.mdcore5,007 bytes
  • SKILL.mdcore5,007 bytes
  • SKILL.mdcore5,007 bytes
  • docs/ida_auto.mddoc1,722 bytes
  • docs/ida_auto.rstasset10,451 bytes
  • docs/ida_bitrange.mddoc652 bytes
  • docs/ida_bitrange.rstasset2,043 bytes
  • docs/ida_bytes.mddoc4,094 bytes
  • docs/ida_bytes.rstasset95,367 bytes
  • docs/ida_dbg.mddoc3,891 bytes
  • docs/ida_dbg.rstasset76,519 bytes
  • docs/ida_dirtree.mddoc1,983 bytes
  • docs/ida_dirtree.rstasset16,884 bytes
  • docs/ida_diskio.mddoc2,303 bytes
  • docs/ida_diskio.rstasset7,178 bytes
  • docs/ida_entry.mddoc1,030 bytes
  • docs/ida_entry.rstasset3,867 bytes
  • docs/ida_expr.mddoc3,573 bytes
  • docs/ida_expr.rstasset19,676 bytes
  • docs/ida_fixup.mddoc2,859 bytes
  • docs/ida_fixup.rstasset9,765 bytes
  • docs/ida_fpro.mddoc1,687 bytes
  • docs/ida_fpro.rstasset3,578 bytes
  • docs/ida_frame.mddoc4,895 bytes
  • docs/ida_frame.rstasset21,758 bytes
  • docs/ida_funcs.mddoc7,691 bytes
  • docs/ida_funcs.rstasset33,777 bytes
  • docs/ida_gdl.mddoc1,556 bytes
  • docs/ida_gdl.rstasset12,043 bytes
  • docs/ida_graph.mddoc2,078 bytes
  • docs/ida_graph.rstasset41,979 bytes
  • docs/ida_hexrays.mddoc5,605 bytes
  • docs/ida_hexrays.rstasset380,345 bytes
  • docs/ida_ida.mddoc2,651 bytes
  • docs/ida_ida.rstasset70,118 bytes
  • docs/ida_idaapi.mddoc1,284 bytes
  • docs/ida_idaapi.rstasset14,777 bytes
  • docs/ida_idc.mddoc381 bytes
  • docs/ida_idc.rstasset439 bytes
  • docs/ida_idd.mddoc1,485 bytes
  • docs/ida_idd.rstasset66,321 bytes
  • docs/ida_idp.mddoc1,419 bytes
  • docs/ida_idp.rstasset136,247 bytes
  • docs/ida_ieee.mddoc1,041 bytes
  • docs/ida_ieee.rstasset5,248 bytes
  • docs/ida_kernwin.mddoc2,088 bytes
  • docs/ida_kernwin.rstasset233,636 bytes
  • docs/ida_libfuncs.mddoc966 bytes
  • docs/ida_libfuncs.rstasset3,090 bytes
  • docs/ida_lines.mddoc1,095 bytes
  • docs/ida_lines.rstasset16,344 bytes
  • docs/ida_loader.mddoc3,635 bytes
  • docs/ida_loader.rstasset21,740 bytes
  • docs/ida_merge.mddoc1,361 bytes
  • docs/ida_merge.rstasset25,877 bytes
  • docs/ida_mergemod.mddoc740 bytes
  • docs/ida_mergemod.rstasset3,873 bytes
  • docs/ida_moves.mddoc2,770 bytes
  • docs/ida_moves.rstasset7,591 bytes
  • docs/ida_nalt.mddoc9,519 bytes
  • docs/ida_nalt.rstasset53,610 bytes
  • docs/ida_name.mddoc7,202 bytes
  • docs/ida_name.rstasset28,608 bytes
  • docs/ida_netnode.mddoc1,158 bytes
  • docs/ida_netnode.rstasset12,385 bytes
  • docs/ida_offset.mddoc996 bytes
  • docs/ida_offset.rstasset7,895 bytes
  • docs/ida_pro.mddoc1,341 bytes
  • docs/ida_pro.rstasset32,639 bytes
  • docs/ida_problems.mddoc1,206 bytes
  • docs/ida_problems.rstasset4,171 bytes
  • docs/ida_range.mddoc1,881 bytes
  • docs/ida_range.rstasset10,795 bytes
  • docs/ida_regfinder.mddoc2,745 bytes
  • docs/ida_regfinder.rstasset16,527 bytes
  • docs/ida_registry.mddoc1,740 bytes
  • docs/ida_registry.rstasset6,169 bytes
  • docs/ida_search.mddoc1,421 bytes
  • docs/ida_search.rstasset3,201 bytes
  • docs/ida_segment.mddoc4,998 bytes
  • docs/ida_segment.rstasset38,823 bytes
  • docs/ida_segregs.mddoc1,862 bytes
  • docs/ida_segregs.rstasset6,432 bytes
  • docs/ida_srclang.mddoc1,475 bytes
  • docs/ida_srclang.rstasset4,343 bytes
  • docs/ida_strlist.mddoc1,049 bytes
  • docs/ida_strlist.rstasset2,036 bytes
  • docs/ida_tryblks.mddoc1,457 bytes
  • docs/ida_tryblks.rstasset7,582 bytes
  • docs/ida_typeinf.mddoc7,824 bytes
  • docs/ida_typeinf.rstasset207,037 bytes
  • docs/ida_ua.mddoc2,257 bytes
  • docs/ida_ua.rstasset44,630 bytes
  • docs/ida_undo.mddoc768 bytes
  • docs/ida_undo.rstasset1,179 bytes
  • docs/ida_xref.mddoc1,900 bytes
  • docs/ida_xref.rstasset15,328 bytes
  • docs/idaapi.mddoc317 bytes
  • docs/idaapi.rstasset270 bytes
  • docs/idadex.mddoc2,062 bytes
  • docs/idadex.rstasset4,035 bytes
  • docs/idautils.mddoc3,227 bytes
  • docs/idautils.rstasset10,017 bytes
  • docs/idc.mddoc11,096 bytes
  • docs/idc.rstasset121,975 bytes
  • docs/init.mddoc752 bytes
  • docs/init.rstasset1,542 bytes
Read SKILL.md

# IDAPython

Use modern `ida_*` modules. Avoid legacy `idc` module.

## Module Router

| Task | Module | Key Items |
|------|--------|-----------|
| Bytes/memory | `ida_bytes` | `get_bytes`, `patch_bytes`, `get_flags`, `create_*` |
| Functions | `ida_funcs` | `func_t`, `get_func`, `add_func`, `get_func_name` |
| Names | `ida_name` | `set_name`, `get_name`, `demangle_name` |
| Types | `ida_typeinf` | `tinfo_t`, `apply_tinfo`, `parse_decl` |
| Decompiler | `ida_hexrays` | `decompile`, `cfunc_t`, `lvar_t`, ctree visitor |
| Segments | `ida_segment` | `segment_t`, `getseg`, `add_segm` |
View the complete source on GitHub

Skills included

  • idapython

Repository facts

License
MIT
Created
Mar 25, 2025
Last pushed
Sep 26, 2026
Forks
1,634
Open issues
36
Project activity
Active

Rank over the last 12 weeks

Now #119 · best #109 · down 3 in 30 days

  1. #119 from Oct 23 to Oct 24
  2. #120 on Oct 25
  3. #118 from Oct 28 to Oct 29
  4. #119 from Oct 30 to Nov 2
  5. #120 on Nov 3
  6. #119 since Nov 4
38 earlier periods
  1. #107 on Aug 2
  2. #107 from Aug 7 to Aug 8
  3. #106 on Aug 9
  4. #107 on Aug 10
  5. #108 on Aug 11
  6. #110 from Aug 12 to Aug 15
  7. #109 on Aug 16
  8. #110 from Aug 17 to Aug 18
  9. #111 from Aug 19 to Aug 21
  10. #110 on Aug 22
  11. #111 on Aug 23
  12. #112 from Aug 24 to Aug 28
  13. #113 on Aug 29
  14. #112 from Aug 30 to Aug 31
  15. #113 on Sep 1
  16. #112 on Sep 2
  17. #113 on Sep 3
  18. #112 on Sep 4
  19. #113 on Sep 5
  20. #112 on Sep 6
  21. #113 from Sep 7 to Sep 15
  22. #112 from Sep 16 to Sep 17
  23. #114 on Sep 18
  24. #113 on Sep 19
  25. #114 from Sep 20 to Sep 21
  26. #115 from Sep 22 to Sep 25
  27. #114 on Sep 26
  28. #115 from Sep 27 to Sep 30
  29. #116 from Oct 1 to Oct 3
  30. #115 on Oct 4
  31. #116 on Oct 5
  32. #114 on Oct 6
  33. #116 from Oct 7 to Oct 12
  34. #115 on Oct 13
  35. #116 from Oct 14 to Oct 15
  36. #115 from Oct 16 to Oct 17
  37. #117 from Oct 18 to Oct 19
  38. #118 from Oct 20 to Oct 22

Before you install

Local scripts

Automated signals, not a guarantee

Checked Nov 2, 2026

Not fully analyzed: some files were too long, unreadable or missing. This never lowers the level.

Show 12 notes
  • skills/idapython/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/idapython/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/idapython/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/idapython/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/idapython/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/idapython/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/idapython/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/idapython/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/idapython/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/idapython/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/idapython/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/idapython/docs/ida_hexrays.rst:12725 Analysis incomplete: regex work limit reached
Show all 39 signals by file

skills/idapython/docs/ida_auto.rst

  • Network accessline 23
    .. tip::        The `IDA Domain API <https://ida-domain.docs.hex-rays.com/>`_ simplifies
  • Network accessline 24
    The `IDA Domain API <https://ida-domain.docs.hex-rays.com/>`_ simplifies

skills/idapython/docs/ida_bytes.rst

  • Network accessline 19
    .. tip::        The `IDA Domain API <https://ida-domain.docs.hex-rays.com/>`_ simplifies
  • Network accessline 20
    The `IDA Domain API <https://ida-domain.docs.hex-rays.com/>`_ simplifies

skills/idapython/docs/ida_entry.rst

  • Network accessline 16
    .. tip::        The `IDA Domain API <https://ida-domain.docs.hex-rays.com/>`_ simplifies
  • Network accessline 17
    The `IDA Domain API <https://ida-domain.docs.hex-rays.com/>`_ simplifies

skills/idapython/docs/ida_frame.rst

  • Network accessline 35
    .. tip::        The `IDA Domain API <https://ida-domain.docs.hex-rays.com/>`_ simplifies
  • Network accessline 36
    The `IDA Domain API <https://ida-domain.docs.hex-rays.com/>`_ simplifies

skills/idapython/docs/ida_funcs.rst

  • Network accessline 19
    .. tip::        The `IDA Domain API <https://ida-domain.docs.hex-rays.com/>`_ simplifies
  • Network accessline 20
    The `IDA Domain API <https://ida-domain.docs.hex-rays.com/>`_ simplifies

skills/idapython/docs/ida_gdl.rst

  • Network accessline 10
    .. tip::        The `IDA Domain API <https://ida-domain.docs.hex-rays.com/>`_ simplifies
  • Network accessline 11
    The `IDA Domain API <https://ida-domain.docs.hex-rays.com/>`_ simplifies

skills/idapython/docs/ida_hexrays.md

  • Network accessline 171
    **External resources**: - https://hex-rays.com/blog/hex-rays-decompiler-primer
  • Network accessline 172
    - https://hex-rays.com/blog/hex-rays-decompiler-primer
  • Network accessline 173
    - https://hex-rays.com/blog/microcode-in-pictures

skills/idapython/docs/ida_hexrays.rst

  • Network accessline 24
    See [https://hex-rays.com/blog/microcode-in-pictures](https://hex-rays.com/blog/microcode-in-pictures) for a few pictures.
  • Network accessline 33
    See [https://hex-rays.com/blog/hex-rays-decompiler-primer](https://hex-rays.com/blog/hex-rays-decompiler-primer) for more pictures and more details.

skills/idapython/docs/ida_ida.rst

  • Network accessline 18
    .. tip::        The `IDA Domain API <https://ida-domain.docs.hex-rays.com/>`_ simplifies
  • Network accessline 19
    The `IDA Domain API <https://ida-domain.docs.hex-rays.com/>`_ simplifies

skills/idapython/docs/ida_idaapi.rst

  • Network accessline 139
    For more information, see: <http://www.hexblog.com/?p=749>.

skills/idapython/docs/ida_loader.rst

  • Network accessline 31
    .. tip::        The `IDA Domain API <https://ida-domain.docs.hex-rays.com/>`_ simplifies
  • Network accessline 32
    The `IDA Domain API <https://ida-domain.docs.hex-rays.com/>`_ simplifies

skills/idapython/docs/ida_name.rst

  • Network accessline 12
    .. tip::        The `IDA Domain API <https://ida-domain.docs.hex-rays.com/>`_ simplifies
  • Network accessline 13
    The `IDA Domain API <https://ida-domain.docs.hex-rays.com/>`_ simplifies

skills/idapython/docs/ida_netnode.rst

  • Network accessline 10
    [https://en.wikipedia.org/wiki/B-tree](https://en.wikipedia.org/wiki/B-tree)

skills/idapython/docs/ida_range.rst

  • Network accessline 10
    A range is a non-empty continuous range of addresses (specified by its start and end addresses, the end address is excluded from the range).    Ranges are stored in the Btree part of the IDA database. To learn more about Btrees (Balanced Tr
  • Network accessline 11
    Ranges are stored in the Btree part of the IDA database. To learn more about Btrees (Balanced Trees): [http://www.bluerwhite.org/btree/](http://www.bluerwhite.org/btree/)

skills/idapython/docs/ida_segment.rst

  • Network accessline 37
    .. tip::        The `IDA Domain API <https://ida-domain.docs.hex-rays.com/>`_ simplifies
  • Network accessline 38
    The `IDA Domain API <https://ida-domain.docs.hex-rays.com/>`_ simplifies

skills/idapython/docs/ida_typeinf.md

  • Network accessline 263
    ## See Also Full docs: skill/docs/ida_typeinf.rst IDA Domain API: https://ida-domain.docs.hex-rays.com/ (simplified type operations)
  • Network accessline 265
    IDA Domain API: https://ida-domain.docs.hex-rays.com/ (simplified type operations)

skills/idapython/docs/ida_typeinf.rst

  • Network accessline 87
    .. tip::        The `IDA Domain API <https://ida-domain.docs.hex-rays.com/>`_ simplifies
  • Network accessline 88
    The `IDA Domain API <https://ida-domain.docs.hex-rays.com/>`_ simplifies
  • Network accessline 3621
    Size of the shadow area. explanations at: [https://stackoverflow.com/questions/30190132/what-is-the-shadow-space-in-x64-assembly](https://stackoverflow.com/questions/30190132/what-is-the-shadow-space-in-x64-assembly) examples: x64 Visual St
  • Network accessline 3629
    Size of the linkage area. explanations at: [https://www.ibm.com/docs/en/xl-fortran-aix/16.1.0?topic=conventions-linkage-area](https://www.ibm.com/docs/en/xl-fortran-aix/16.1.0?topic=conventions-linkage-area) examples: pc: 0, hppa: 0, ppc ai

skills/idapython/docs/ida_ua.rst

  • Network accessline 44
    .. tip::        The `IDA Domain API <https://ida-domain.docs.hex-rays.com/>`_ simplifies
  • Network accessline 45
    The `IDA Domain API <https://ida-domain.docs.hex-rays.com/>`_ simplifies

skills/idapython/docs/ida_xref.rst

  • Network accessline 18
    .. tip::        The `IDA Domain API <https://ida-domain.docs.hex-rays.com/>`_ simplifies
  • Network accessline 19
    The `IDA Domain API <https://ida-domain.docs.hex-rays.com/>`_ simplifies

How the signals fit together

Facts from a static read of the files at the pinned commit. They describe what the code does, not why.

Some files could not be read; the facts below still hold.

Signal confidence: 5 facts

Works with

Agent compatibility, from the files in this repository
AgentStatusEvidenceInstall to
Claude CodeNativeManifest .claude-plugin/plugin.json.claude/skills/<skill-name>/
CodexCompatibleStandard SKILL.md skills/idapython/SKILL.md.agents/skills/<skill-name>/
CursorCompatibleStandard SKILL.md skills/idapython/SKILL.md.cursor/skills/<skill-name>/
Gemini CLICompatibleStandard SKILL.md skills/idapython/SKILL.md.gemini/skills/<skill-name>/
GitHub CopilotCompatibleStandard SKILL.md skills/idapython/SKILL.md.github/skills/<skill-name>/
OpenCodeCompatibleStandard SKILL.md skills/idapython/SKILL.md.opencode/skills/<skill-name>/
  • Native The repository ships a manifest, folder or frontmatter field for this agent.
  • Compatible A standard SKILL.md that this agent can read.
  • Unknown No evidence either way.

Derived automatically from paths, manifests and frontmatter. Not tested on each agent.

Explore alternatives and comparisons

Add this badge to your README

It updates every night and links to this page.

mrexodia/ida-pro-mcp: #119 on hotskills, 13.4k stars

[![mrexodia/ida-pro-mcp on hotskills](https://hotskills.dev/badge/mrexodia-ida-pro-mcp.svg)](https://hotskills.dev/skill/mrexodia-ida-pro-mcp/)