36 lines
1.6 KiB
Markdown
36 lines
1.6 KiB
Markdown
---
|
|
description: 'Workflow rules for updating and validating the local Ghidra MCP server used by Crusader reverse-engineering tasks'
|
|
applyTo: '**'
|
|
---
|
|
|
|
# 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.
|