一键导入
ghidra-mcp-headless
Start GhidraMCP headless server with the Hamsterball.exe project — always do this before any RE work
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Start GhidraMCP headless server with the Hamsterball.exe project — always do this before any RE work
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Reverse engineer and recreate the Hamsterball game (2000s Windows game by Raptisoft)
Restore all function renames from FUNCTION_MAP.md back into a fresh Ghidra project after DB loss or re-import
Complete guide to using and extending Hermes Agent — CLI usage, setup, configuration, spawning additional agents, gateway platforms, skills, voice, tools, profiles, and a concise contributor reference. Load this skill when helping users configure Hermes, troubleshoot issues, spawn agent instances, or make code contributions.
Create hand-drawn style diagrams using Excalidraw JSON format. Generate .excalidraw files for architecture diagrams, flowcharts, sequence diagrams, concept maps, and more. Files can be opened at excalidraw.com or uploaded for shareable links.
54 production-quality design systems extracted from real websites. Load a template to generate HTML/CSS that matches the visual identity of sites like Stripe, Linear, Vercel, Notion, Airbnb, and more. Each template includes colors, typography, components, layout rules, and ready-to-use CSS values.
Cross-compile D3D8-based game with MinGW, test on Wine with OpenGL translation
| name | ghidra-mcp-headless |
| description | Start GhidraMCP headless server with the Hamsterball.exe project — always do this before any RE work |
| version | "2026-04-13T00:00:00.000Z" |
export GHIDRA_HOME=/opt/ghidra_12.0.4_PUBLIC
MCP_JAR=/home/evan/.config/ghidra/ghidra_12.0.4_PUBLIC/Extensions/GhidraMCP/lib/GhidraMCP-5.12.0.jar
CLASSPATH="$MCP_JAR"
for jar in $GHIDRA_HOME/Ghidra/Framework/*/lib/*.jar; do CLASSPATH="${CLASSPATH}:${jar}"; done
for jar in $GHIDRA_HOME/Ghidra/Features/*/lib/*.jar; do CLASSPATH="${CLASSPATH}:${jar}"; done
for jar in $GHIDRA_HOME/Ghidra/Processors/*/lib/*.jar; do CLASSPATH="${CLASSPATH}:${jar}"; done
nohup java -Xmx4g -XX:+UseG1GC \
-Dghidra.home=$GHIDRA_HOME -Dapplication.name=GhidraMCP \
-classpath "$CLASSPATH" \
com.xebyte.headless.GhidraMCPHeadlessServer \
--port 8089 --bind 127.0.0.1 \
--project /home/evan/hamsterball-re/analysis/ghidra/HamsterballProject/Hamsterball.gpr \
--program /Hamsterball.exe \
> /tmp/ghidra-mcp.log 2>&1 &
echo "Started PID $!"
sleep 15
curl -s http://127.0.0.1:8089/health
Before doing ANY RE work:
curl -s http://127.0.0.1:8089/health{"status":"healthy","version":"5.2.0-headless","program_loaded":true,"program_name":"Hamsterball.exe"}mcp_ghidra_mcp_compare_programs_documentation — should be ~75% if restoredrenames.json first| Flag | Required | Notes |
|---|---|---|
--port 8089 | Yes | Default port |
--bind 127.0.0.1 | Yes | Localhost only |
--project /path/Hamsterball.gpr | Yes | Must end in .gpr |
--program /Hamsterball.exe | Yes | Leading slash required |
-Xmx4g | Recommended | Min 4GB heap |
-Dghidra.home | Yes | Ghidra installation path |
Error: program_loaded: false or Error loading program:
tail -20 /tmp/ghidra-mcp.log.gpr--program--file for direct binary load# Use analyzeHeadless to import first
export GHIDRA_HOME=/opt/ghidra_12.0.4_PUBLIC
$GHIDRA_HOME/support/analyzeHeadless \
~/hamsterball-re/analysis/ghidra/HamsterballProject \
Hamsterball \
-import ~/hamsterball-re/originals/installed/extracted/Hamsterball.exe \
-overwrite \
2>&1 | tail -10
# Then start MCP server with --program flag
# IMPORTANT: After re-import, ALL previous renames are LOST.
# Run ghidra-restore-renames skill to restore from FUNCTION_MAP.md
kill $(pgrep -f GhidraMCPHeadlessServer)tail -f /tmp/ghidra-mcp.log| Task | Tool |
|---|---|
| List functions | mcp_ghidra_mcp_list_functions_enhanced |
| Rename function | mcp_ghidra_mcp_rename_function_by_address |
| Batch rename | mcp_ghidra_mcp_batch_rename_function_components |
| Search functions | mcp_ghidra_mcp_search_functions_enhanced |
| Get function info | mcp_ghidra_mcp_analyze_function_complete |
| Decompile | mcp_ghidra_mcp_decompile_function |
| Set comment | mcp_ghidra_mcp_set_decompiler_comment |
| Batch comments | mcp_ghidra_mcp_batch_set_comments |
| Get xrefs | mcp_ghidra_mcp_get_bulk_xrefs |
| Check progress | mcp_ghidra_mcp_compare_programs_documentation |
program_loaded: true.gpr (e.g., Hamsterball.gpr not HamsterballProject)/Hamsterball.exe not Hamsterball.exeanalyzeHeadless before starting MCP server for a new binary