Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)
IDA Pro MCP fusion with cache queries and multi-binary headless analysis.
สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน
ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry
เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
คุณใช้แอปไหน
เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”
ลิงก์ไปที่ไฟล์ของผู้ทำเอง เราไม่ได้เก็บหรือแพ็กใหม่ เปิดไฟล์แล้ว Claude Desktop จะติดตั้งให้
พิมพ์คำสั่งนี้ใน Terminal
เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
ตัวนี้รันในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะ server บนอินเทอร์เน็ต ลองเลือกแอปอื่น
ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี
ค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 9 พ.ย. 2569
ชื่อใน registry ยืนยันด้วยบัญชี GitHub rison1337 ซึ่งเป็นเจ้าของ repo
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต
ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน
รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
registry ไม่ได้ระบุว่าต้องใช้กุญแจ แต่บางตัวจะขอให้ล็อกอินตอนใช้ครั้งแรก
รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)
repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (2.0.0) เข้า registry 4 เดือนที่ผ่านมา
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี MCPB ในเครื่องด้วย
ในหมวดเดียวกันมี Spec Driven Development, Remote Desktop Commander, erateradar
server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว
อ่านการ์ด:↓ ดาวน์โหลดต่อสัปดาห์i★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Open E-rate network bids (Form 470s) from USAC public data, near a ZIP or in a state.
ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
One MCP endpoint. Many binaries. Persistent analysis context.
Quick start · Why Fusion · Architecture · Tools · Configuration · Development
IDA Pro MCP Fusion connects MCP-compatible coding agents to IDA Pro and turns a single connection into a practical reverse-engineering workspace. It combines live IDA analysis with a persistent SQLite index and a supervisor that can keep several binaries open in isolated headless workers.
Use it to decompile and disassemble functions, trace cross-references, query types, rename symbols, patch data, create signatures, inspect multiple samples, and reuse cached analysis without repeatedly walking IDA's single-threaded APIs.
[!IMPORTANT]
This project requires a local, licensed installation of IDA Pro. IDA Free is not supported. The server does not provide IDA, Hex-Rays, or a hosted analysis service.
| Capability | What it changes | |
|---|---|---|
| ⚡ | Persistent SQLite cache | Functions, strings, globals, imports, xrefs, and call-graph edges remain queryable across repeated investigations. |
| ◈ | Multi-binary supervisor | Open, address, and close several GUI or headless databases through one MCP endpoint. |
| ⛓ | Persistent workers | A later supervisor can discover and adopt an existing worker for the same database. |
| ◎ | Batch-first workflow | Warm analysis and build caches for a collection of samples with one idb_batch_open call. |
| ⛨ | Controlled surface | Read-only profiles, opt-in unsafe tools, worker limits, timeouts, and idle cleanup keep automation bounded. |
The cache lives beside the IDB as .mcp.sqlite. Freshness is checked against the IDB modification time and cache schema, so stale rows are not silently reused.
uv / uvxInstall uv if it is not available:
python -m pip install uv
Activate IDA's headless Python environment once:
# Windows — adjust the IDA version/path if needed
uv run "C:\Program Files\IDA Professional 9.3\idalib\python\py-activate-idalib.py"
# macOS — adjust the IDA version/path if needed
uv run "/Applications/IDA Professional 9.3.app/Contents/MacOS/idalib/python/py-activate-idalib.py"
The recommended setup runs the latest code directly from this repository:
{
"mcpServers": { "ida-pro-mcp-fusion": { "command": "uvx", "args": [ "--from", "git+https://github.com/rison1337/ida-pro-mcp-fusion", "idalib-mcp", "--stdio" ] } } }
Claude Code:
claude mcp add ida-pro-mcp-fusion -- uvx --from git+https://github.com/rison1337/ida-pro-mcp-fusion idalib-mcp --stdio
Or download the packaged MCP bundle from the latest release.
Ask the connected agent to start with:
idb_open(
"C:/samples/target.exe", preferred_session_id="target", build_caches=True, init_hexrays=True, )
Every analysis call then names its database explicitly:
survey_binary(database="target")
decompile("main", database="target") xrefs_to("WinMain", database="target") cache_callgraph_hotspots(limit=25, database="target")
idalib-mcp over stdio or HTTP.database session ID, so requests are routed to the correct IDB.GUI databases can participate too. idb_open supports four routing modes:
| Mode | Behaviour |
|---|---|
prefer_headless | Use or create an idalib worker. This is the default. |
force_headless | Never adopt a running GUI instance. |
prefer_gui | Adopt a matching GUI instance, otherwise create a worker. |
force_gui | Adopt a matching GUI instance or launch IDA GUI. |
Open a small collection and keep every session available:
idb_batch_open(
[ "C:/samples/loader.exe", "C:/samples/payload.dll", "C:/samples/helper.dll", ], session_prefix="case42", refresh_cache=True, cache_include_xrefs=True, )
For a large corpus, build each cache and release its worker immediately:
idb_batch_open(
["C:/corpus/a.exe", "C:/corpus/b.exe", "C:/corpus/c.exe"], close_after_cache=True, retry_without_auto_analysis_on_timeout=True, )
Useful session controls:
idb_list()
idb_close(database="case42_1_loader")
The codebase registers 75 IDA-facing analysis tools, plus the supervisor's multi-session controls. The exact number visible to a client intentionally varies: debugger tools are an extension, dangerous operations are disabled unless explicitly enabled, and a profile can expose a smaller allowlist.
| Area | Representative tools |
|---|---|
| Sessions | idb_open, idb_batch_open, idb_list, idb_close, idb_save |
| Survey & decompilation | survey_binary, decompile, disasm, analyze_function, analyze_component |
| Search & relationships | find, find_bytes, search_text, xrefs_to, callees, callgraph, trace_data_flow |
| Persistent cache | cache_status, refresh_cache, cache_entity_query, cache_xrefs, cache_callgraph_hotspots, cache_find_regex |
| Types & stack | declare_type, type_inspect, set_type, infer_types, stack_frame, declare_stack |
| Database editing | rename, set_comments, define_func, define_code, patch_asm, make_data |
| Signatures | make_signature, make_signature_for_function, make_signature_for_range, find_xref_signatures |
| Debugger extension | dbg_start, dbg_bps, dbg_regs, dbg_stacktrace, dbg_read, dbg_write |
The nine cache-specific tools are:
cache_status refresh_cache
cache_refresh_if_stale cache_list_funcs cache_entity_query cache_xrefs cache_callgraph cache_callgraph_hotspots cache_find_regex
uvx --from git+https://github.com/rison1337/ida-pro-mcp-fusion \
idalib-mcp --stdio --max-workers 4
| Option / variable | Purpose |
|---|---|
--max-workers N | Maximum simultaneous database workers; 0 means unlimited. Default: 4. |
IDA_MCP_MAX_WORKERS | Environment default for the worker limit. |
IDA_MCP_OPEN_TIMEOUT | Maximum auto-analysis open time in seconds. Default: 1800; 0 disables the limit. |
IDA_MCP_LOAD_TIMEOUT | Maximum load-only open time in seconds. Default: 300; 0 disables the limit. |
Expose only a curated set of tools:
idalib-mcp --stdio --profile profiles/readonly.txt
Two ready-to-use profiles are included:
profiles/readonly.txt — inspection without mutation toolsprofiles/triage.txt — compact first-pass analysis surfaceManagement tools remain available so sessions can still be opened and inspected.
idalib-mcp --host 127.0.0.1 --port 8745
IDA GUI bridge:
ida-pro-mcp --transport http://127.0.0.1:8744/sse
To install the GUI plugin and generate client configuration interactively:
python -m pip install https://github.com/rison1337/ida-pro-mcp-fusion/archive/refs/heads/main.zip
ida-pro-mcp --install
Restart IDA and the MCP client after installation.
py_eval, py_exec_file, debugger controls, and patching operations can execute code or permanently change an IDB. Enable them only for trusted clients and inputs.Enable unsafe worker tools only when the workflow requires them:
idalib-mcp --stdio --unsafe
uvx is not recognized
Install uv with python -m pip install uv, open a new terminal, and confirm with uvx --version.
Python / IDA version mismatch
Run Hex-Rays idapyswitch, select a Python 3.11+ installation, then activate idalib again with py-activate-idalib.py.
A database call says that database is required
Call idb_list() and pass the returned session_id as database=. Paths and filenames are not accepted in place of a session ID.
The worker limit has been reached
Close an unused session with idb_close, raise --max-workers, or use close_after_cache=True for corpus indexing.
Clone the repository and run the platform-independent test suite:
git clone https://github.com/rison1337/ida-pro-mcp-fusion.git
cd ida-pro-mcp-fusion python -m pip install pytest jsonschema "mcp>=1.0" "tomli-w>=1.0" python -m pytest -q tests
Run the IDA-backed suite in an activated IDA environment:
uv run ida-mcp-test tests/typed_fixture.elf -q
New IDA tools live in src/ida_pro_mcp/ida_mcp/api_*.py and register through the @tool decorator. Supervisor and worker lifecycle tests live under tests/.
Fusion Edition is maintained by rison1337.
The project builds on the MIT-licensed mrexodia/ida-pro-mcp codebase. Its persistent cache
ตัดมาแค่ช่วงต้น อ่านต่อใน repo