Crusader_Decomp/.github/instructions/ghidra-mcp-server-updates.instructions.md

1.6 KiB

description applyTo
Workflow rules for updating and validating the local Ghidra MCP server used by Crusader reverse-engineering tasks **

Ghidra MCP Server Update Workflow

Use these instructions when making changes in the local Ghidra MCP source at K:/mcp/GhidraMCP from this workspace.

Scope

  • Treat K:/mcp/GhidraMCP as the source of truth for server and bridge behavior.
  • Keep Crusader task notes and MCP implementation aligned.
  • Prefer small, verifiable batches of MCP changes.

Update Rules

  • Read ghidra_mcp_wishlist.md before changing the server.
  • Implement wishlist items in both layers when applicable:
  • Java plugin endpoint in src/main/java/com/lauriewired/GhidraMCPPlugin.java.
  • Python MCP bridge wrapper in bridge_mcp_ghidra.py.
  • Keep backward compatibility for endpoint naming when practical by adding aliases instead of removing old routes.
  • Keep xref and analysis outputs machine-friendly and evidence-rich (addresses, ref type, classification, function context).

Verification Rules

  • After server edits, run a Maven validation from K:/mcp/GhidraMCP.
  • Minimum validation command: mvn test.
  • If packaging changes are involved, also run mvn clean package assembly:single.
  • Report failures with the exact failing phase and first actionable error.

Crusader Workflow Tie-In

  • If a missing MCP operation forced a fallback to PyGhidra, append a concise entry to ghidra_mcp_wishlist.md.
  • When a wishlist item is completed, update its status note so open gaps remain accurate.
  • Keep changes minimal and focused on concrete reverse-engineering workflow needs.