Back to Directory/Developer Tools

io.github.daedalus/mcp-capstone

MCP server exposing Capstone 5.0.7 disassembly framework

Developer ToolsPythonv0.1.0

mcp-capstone

MCP server that exposes Capstone 5.0.7 disassembly framework functionalities as tools and resources, enabling LLMs to perform binary disassembly, reverse engineering, and instruction analysis.

PyPI Python

Install

pip install mcp-capstone

Usage

CLI

mcp-capstone

Python

from mcp_capstone import disasm, get_version

# Get version
version = get_version()
print(f"Capstone {version['major']}.{version['minor']}")

# Disassemble x86-64 code
instructions = disasm("8b440404", arch="x86", mode="64")
for insn in instructions:
    print(f"0x{insn['address']:x}: {insn['mnemonic']} {insn['op_str']}")

Supported Architectures

  • x86 (16/32/64-bit)
  • ARM (ARM, Thumb, ARM mode)
  • AArch64 (ARMv8)
  • MIPS (MIPS32/64, MIPS2/3, R6)
  • PowerPC (32/64-bit, SPE, QPX)
  • RISC-V (RV32/64GC)
  • SPARC (V8/V9)
  • SystemZ
  • M68K (68000-68060)
  • M680X (6301/6309/6800/6805/6808/6809/6811/CPU12/HCS08)
  • TriCore
  • TMS320C64X
  • WebAssembly
  • XCore
  • BPF (Classic/Extended)
  • EVM (Ethereum Virtual Machine)

Tools

ToolDescription
get_versionGet Capstone version
check_supportCheck architecture support
list_architecturesList all architectures
disasmFull disassembly with details
disasm_liteLightweight disassembly
disasm_quickQuick disassembly
get_architecturesAll architecture constants
get_modesAll mode constants
get_optionsAll option constants
get_operandsAll operand type constants
get_groupsAll instruction group constants
get_errorsAll error constants

Development

git clone https://github.com/daedalus/mcp-capstone.git
cd mcp-capstone
pip install -e ".[test]"

# run tests
pytest

# format
ruff format src/ tests/

# lint
ruff check src/ tests/

# type check
mypy src/

mcp-name: io.github.daedalus/mcp-capstone

Installation

Source-derived launch command. Check the maintainer’s required arguments and credentials before running:

bash
uvx mcp-capstone

Set up in your AI client

Merge this template into ~/Library/Application Support/Claude/claude_desktop_config.json. Keep existing servers. Add any arguments, credentials, and permissions required by the maintainer; this template has not been install-tested.

json
{
  "mcpServers": {
    "io-github-daedalus-mcp-capstone": {
      "command": "uvx",
      "args": [
        "mcp-capstone"
      ]
    }
  }
}

Restart Claude Desktop completely for changes to take effect. Confirm the server appears connected in the client’s tool list, then try a read-only example from its documentation.

Claude Desktop setup reference

Package

mcp-capstonepypi

Compatible MCP Clients

io.github.daedalus/mcp-capstone works with any MCP-compatible client. Copy the config snippet from the Configuration section above and add it to the file shown for your client, then restart the application.

  • Claude Desktop~/Library/Application Support/Claude/claude_desktop_config.jsonRestart Claude Desktop completely for changes to take effect.
  • Cursor~/.cursor/mcp.jsonRestart Cursor for changes to take effect.
  • VS Code.vscode/mcp.jsonReload VS Code window for changes to take effect.
  • Windsurf~/.codeium/windsurf/mcp_config.jsonRestart Windsurf for changes to take effect.
  • Claude Code.mcp.jsonSave at the project root, then start Claude Code in that project and review the MCP server approval prompt. Keep real credentials out of shared files.

Learn More