Skip to content

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_ROOT or the portable Agent Plugin PLUGIN_ROOT from the root MCP config, because Cursor chooses root mcp.json when both manifests are present.
  • Discover the standard mise shim location when Cursor's MCP environment omits user tool shims from PATH.
  • Remove the ignored Cursor-specific MCP config.

1.0.4 — 2026-08-16

  • Give Cursor its own thin MCP config using the CURSOR_PLUGIN_ROOT variable 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.json and skills/ so it cannot mistake Codex's .mcp.json for 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 uv runtime.
  • 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.