name: ida-mcp description: Headless MCP server exposing IDA Pro’s analysis engine to AI assistants over the Model Context Protocol. Lets agents disassemble, decompile, and inspect binaries through an idalib session. snapcraft: ida-mcp-rs/snap/snapcraft.yaml at main · blacktop/ida-mcp-rs · GitHub upstream: GitHub - blacktop/ida-mcp-rs: Headless IDA Pro MCP Server · GitHub upstream-relation: I am the author and maintainer. supported-category: debug tools reasoning: ida-mcp dynamically links against libida.so and libidalib.so from a user-installed IDA Pro at arbitrary host paths (~/ida-pro-9.3, /opt/ida-pro-9.3, or wherever the user ran the Hex-Rays installer). These are proprietary, non-redistributable runtime libraries — they cannot be staged into the snap. The binary resolves them at runtime via a launcher script that sets LD_LIBRARY_PATH from the user’s install location.
Strict confinement cannot reach arbitrary host paths. The home interface exposes ~/snap/ida-mcp/, not the user’s actual home where IDA lives. system-files would require enumerating every possible install path at build time, which defeats the point — users install IDA wherever they want.
This matches the documented criterion “access to files on the host outside the snap’s runtime (eg, /usr)”.
- I understand that strict confinement is generally preferred over classic.
- I’ve tried the existing interfaces to make the snap work under strict confinement.