lumirth/ghidra-agent-plugin
v1.0.5MIT
Inspect and improve an existing Ghidra Program through a small local MCP interface.
Changelog
1.0.5 — 2026-08-16
- Resolve either Cursor's
CURSOR_PLUGIN_ROOTor the portable Agent PluginPLUGIN_ROOTfrom the root MCP config, because Cursor chooses rootmcp.jsonwhen both manifests are present. - Discover the standard
miseshim location when Cursor's MCP environment omits user tool shims fromPATH. - Remove the ignored Cursor-specific MCP config.
1.0.4 — 2026-08-16
- Give Cursor its own thin MCP config using the
CURSOR_PLUGIN_ROOTvariable implemented by Cursor's marketplace loader. - Keep the portable Agent Plugin config separate and standards-compliant with
PLUGIN_ROOT.
1.0.3 — 2026-08-16
- Pass the launcher as a
${PLUGIN_ROOT}-expanded argument instead of relying on Cursor to resolve a relative executable against the plugin root. - Support Python 3.9 for the bootstrap launcher, including the Xcode Python selected by Cursor on macOS; the locked analysis runtime remains Python 3.10+.
1.0.2 — 2026-08-16
- Bind Cursor explicitly to root
mcp.jsonandskills/so it cannot mistake Codex's.mcp.jsonfor its own server configuration.
1.0.1 — 2026-08-16
- Add Cursor's thin plugin and marketplace manifests so both direct local loading and the folder marketplace importer recognize the same plugin root.
1.0.0 — 2026-08-16
- Publish one plugin root for Codex and portable Agent Plugin clients including Cursor.
- Let the host own plugin installation and MCP process lifecycle.
- Replace the marketplace copier, installer, persistent configuration, and custom venv synchronization with a small launcher and a locked
uvruntime. - Keep Ghidra GUI independence, short-lived native reads, atomic saved writes, explicit Program selection, and the ten-tool surface from the mature 4.1 implementation.
- Resolve the FastMCP generic settings model before server construction, eliminating its Pydantic settings warning.