Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, get in touch and we’ll put it right.

Reversecore MCP

OCI · GHCR.IO/SJKIM1127/REVERSECORE_MCP · 2 COMPONENTS

Security-first MCP server for reverse engineering, malware analysis, forensics, and SAST.

0 this week 55 Trust /100

Last scanned (12 hours ago)

Scores higher than 93% of OCI servers

Category Security

Trust breakdown (7 categories)

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score → Why this is hard to score →

Supply Chain Security0
  • No malware scan is available for this kind of package: the supply-chain vendors we use do not cover it. This is a permanent gap in our coverage, not a finding about the package.Unverified
  • Known CVEs could not be checked: this image's dependency list comes from an SBOM its publisher attached, which nothing verifies, so we will not report it as a clean result. View diagnostics → Unverified
  • Install-script risk not yet assessed.Unverified
  • Dependency health could not be checked: this image's dependency list comes from an SBOM its publisher attached. It names packages and versions but not whether each is deprecated, still maintained or linked to its source, so there is nothing we can fairly grade.Unverified
Provenance & Transparency48
  • Source repository is publicly reachable at the declared URL. View diagnostics → Pass
  • Provenance check failed: no build-provenance attestation is published. See how to fix → View diagnostics → Fail
  • Clear OSI-approved license (MIT).Pass
  • Actively maintained (last published 38 days ago).Pass
  • Publishes a security disclosure policy (SECURITY.md).Pass
Schema Quality & AI Usability82
  • 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
  • AI-judged instruction clarity (good).Pass
  • Context-footprint check failed: tool/resource definitions use about 18370 tokens (~118/item across 155 items; 151 tools + 4 resources), over budget; trim descriptions and params. See how to fix → Fail
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management100
  • No destabilizing schema changes in the last 30 days.Pass
Tool Coverage97
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 90% of tool parameters carry a description.Partial
  • Structured output schemas are declared (99% of tools); any adoption earns full credit.Pass
Tool Safety75
  • No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
  • 0 of 3 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation; "cve_fuzz_target" implies "execute" and declares no destructiveHint at all, which the MCP spec reads as destructive by default. See how to fix → Fail
  • An AI judge read all 152 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
  • Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass

Unverified: 1 category

A category scored 0 because we could not verify it: a data source with nothing on this package, evidence we could not reach, or a check we could not run. We only credit what we can confirm.

Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 28 Oct 26 +1
    • Stability: 0.97 → pass security
  • 26 Oct 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 90 to 93. That category is still filling its 30-day observation window: 27 days of observed history at the previous scan, 28 at this one. The score rises as the window fills, whether or not the server changes.

  • 24 Oct 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 83 to 87. That category is still filling its 30-day observation window: 25 days of observed history at the previous scan, 26 at this one. The score rises as the window fills, whether or not the server changes.

  • 22 Oct 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 77 to 80. That category is still filling its 30-day observation window: 23 days of observed history at the previous scan, 24 at this one. The score rises as the window fills, whether or not the server changes.

  • 20 Oct 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 70 to 73. That category is still filling its 30-day observation window: 21 days of observed history at the previous scan, 22 at this one. The score rises as the window fills, whether or not the server changes.

  • 18 Oct 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 63 to 67. That category is still filling its 30-day observation window: 19 days of observed history at the previous scan, 20 at this one. The score rises as the window fills, whether or not the server changes.

  • 17 Oct 26 +8
    • Stability: unverified → 0.63 ▲ functional
  • 28 Sept 26 0

    First indexed and scored.

Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 5 Nov 2026 · Analysed oci/ghcr.io/sjkim1127/reversecore_mcp@3.0.5

Provenance No attestation

The registry publishes no build provenance for this version, so there is nothing to verify.

Result No attestation
Ecosystem oci
Reason No attestation published

Background: How many MCP packages publish verified provenance →

Vulnerabilities 180 ungraded findings

From the publisher's SBOM, not graded. These advisories match packages listed in the SBOM the publisher attached to this image. A publisher naming a vulnerable package in their own image is credible, so we show them. Nothing verifies that SBOM, though, so the Known CVEs signal does not grade the image from it.

ID CVE Severity Vector Fix available
GHSA-6v38-4h7w-rj9h CVE-2026-96760 critical CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N yes
GHSA-7vr2-2fgp-9w7p CVE-2026-114615 high CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N yes
GHSA-8m4g-j4wp-wgcg CVE-2026-114616 high CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N yes
GHSA-c5mf-xmp2-59rc CVE-2026-114617 medium CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:L/I:L/A:N yes
GHSA-c73q-w75p-j82v CVE-2026-116672 high CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H yes
GHSA-fch4-3c6x-j4gc CVE-2026-114618 medium CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:N yes
GHSA-jj7h-c3hg-m23x CVE-2026-114614 low CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:U/C:L/I:N/A:N yes
GHSA-q686-2qmg-hqc7 CVE-2026-114619 medium CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:L/I:L/A:N yes
GHSA-x4rv-c3wx-4cr8 CVE-2026-114620 medium CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:L/I:L/A:N yes
PYSEC-2026-4354 CVE-2026-114614 low CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:L/I:N/A:N yes
PYSEC-2026-4355 CVE-2026-114615 critical CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N yes
PYSEC-2026-4356 CVE-2026-114616 critical CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N yes
PYSEC-2026-4357 CVE-2026-114617 medium CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:L/I:L/A:N yes
PYSEC-2026-4358 CVE-2026-114618 medium CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:N yes
PYSEC-2026-4359 CVE-2026-114619 medium CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:L/I:L/A:N yes
PYSEC-2026-4360 CVE-2026-114620 medium CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:L/I:L/A:N yes
GHSA-3cm8-v4mc-gppg CVE-2022-4510 high CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H no
PYSEC-2026-787 CVE-2022-4510 high CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H yes
GHSA-cg8m-r9f2-5wm2 CVE-2026-114134 high yes
GHSA-6q48-6c7w-9gw2 critical yes
PYSEC-2026-4320 none yes
GHSA-45c3-73f7-pv4m CVE-2026-114605 high CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H yes
GHSA-7xgj-8392-5q4r medium CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:N yes
GHSA-23mf-xhv8-69c2 CVE-2026-110859 high yes
GHSA-59cr-6r3x-644w CVE-2026-100689 medium yes
GHSA-83vg-56qc-22m7 CVE-2026-114145 high CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:H yes
GHSA-f9j4-qggq-h239 CVE-2026-110858 high CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H yes
GHSA-fx3j-rwgx-fr94 CVE-2026-110855 medium CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:N/A:N yes
GHSA-gq48-pqfc-9p58 CVE-2026-110860 medium yes
GHSA-m64x-33q8-m5h7 CVE-2026-110856 high yes
GHSA-w8jc-g24h-crhw CVE-2026-110857 high CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:H yes
GHSA-9pg5-8c7x-5hfx CVE-2026-119284 medium yes
GHSA-jpxq-7h8p-2q76 CVE-2026-119283 high CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H yes
GHSA-5639-2j2p-m4mx CVE-2026-102991 medium CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:L/A:N yes
PYSEC-2026-4243 CVE-2026-102991 medium CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:L/A:N yes
GHSA-5h93-6whr-6q8j CVE-2026-116685 medium CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N yes
GHSA-84m7-p3x7-pcfv CVE-2026-59951 high CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H yes
GHSA-rwrf-2pqf-9j8j CVE-2026-116686 medium CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H yes
GHSA-w4fh-qvv9-3v23 CVE-2026-116684 medium CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:N yes
GHSA-6v7p-g79w-8964 CVE-2026-57585 high CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H yes
GHSA-j586-36cw-2gc2 CVE-2026-114613 high CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H yes
PYSEC-2026-3625 CVE-2026-57585 high CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H yes
GHSA-xcq7-p3pf-p88h CVE-2026-114603 medium CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L yes
GHSA-22hg-r758-rrw9 CVE-2026-112390 high yes
GHSA-24rc-8hj2-v98c CVE-2026-96638 medium CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H yes
GHSA-254f-3936-288h CVE-2026-112391 medium yes
GHSA-27h8-gf7j-v5hc CVE-2026-112392 high yes
GHSA-332p-7hrc-92wf CVE-2026-112393 critical yes
GHSA-3j72-p6qg-6xp7 CVE-2026-96642 high yes
GHSA-4558-3h8r-v8xp CVE-2026-112394 medium yes

Showing 50 of 180 vulnerabilities.

Background: What a vulnerability scan can and cannot prove →

MCP tools · 151 exposed · ~18,314 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →

Tool Tokens
generate_poc_exploit ~238

Generate and verify a pwntools proof-of-concept exploit script. Converts the output of ``vulnerability_hunter`` (symbolic execution concrete input + crash metadata) into a runnable Python POC script using pwntools. Automatically verifies the POC by executing it against the binary and checking for fatal crash signals.

NameTypeReqDescription
concrete_inputstring–Raw exploit input bytes as a string — typically the ``concrete_input`` field from ``vulnerability_hunter`` output. If empty, a cyclic De Bruijn sequence is used for offset discovery.
crash_offsetinteger–Byte offset from the start of the input buffer to the saved return address (RIP/EIP). Set to 0 if unknown — the generated script will use ``cyclic()`` to probe for it. Default: 0.
file_pathstringyesPath to the target binary inside the workspace.
vulnerability_classstring–Category of vulnerability to exploit. Supported values: ``"buffer_overflow"`` (default), ``"format_string"``, ``"command_injection"``.
NameTypeReqDescription
result–yes–

No examples provided.

generate_sigma_rule ~146

Generate a Sigma rule (YAML) for SIEM integration based on extracted IOCs or API calls.

NameTypeReqDescription
api_calls––List of API functions to detect (e.g., VirtualAlloc, CreateRemoteThread)
categorystring–Logsource category (e.g., process_creation, network_connection)
descriptionstring–Description of the rule
iocs––List of IP addresses, URLs, or file hashes to detect
levelstring–Severity level (low, medium, high, critical)
productstring–Logsource product (e.g., windows, linux)
titlestringyesTitle of the Sigma rule
NameTypeReqDescription
result–yes–

No examples provided.

generate_signature ~227

Generate a YARA signature from opcode bytes at a specific address. This tool extracts opcode bytes from a function or code section and formats them as a YARA rule, enabling automated malware detection. It attempts to mask variable values (addresses, offsets) to create more flexible signatures. **Use Cases:** - Generate detection signatures for malware samples - Create YARA rules for threat hunting - Automate IOC (Indicator of Compromise) generation - Build malware family signatures **Workflow:** 1. Extract opcode bytes from specified address 2. Apply basic masking for variable values (optional) 3. Format as YARA rule template 4. Return ready-to-use YARA rule

NameTypeReqDescription
addressstringyesStart address for signature extraction (e.g., 'main', '0x401000')
file_pathstringyesPath to the binary file (must be in workspace)
lengthinteger–Number of bytes to extract (default 32, recommended 16-64)
timeoutinteger–Execution timeout in seconds (default 300)
NameTypeReqDescription
result–yes–

No examples provided.

generate_vex_report ~183

Generate a CSAF 2.0 VEX JSON report from vulnerability findings. VEX (Vulnerability Exploitability eXchange) is a format for sharing the exploitability status of a software product in a machine-readable way.

NameTypeReqDescription
document_titlestring–Title of the generated document.
product_namestringyesName of the analyzed binary or product.
product_versionstringyesVersion, hash, or build identifier of the product.
vulnerabilitiesstringyesJSON string containing a list of vulnerability objects. Each object should have: - id: str (e.g., "CVE-2023-1234") - description: str - confidence: str ("confirmed", "likely", "false_positive", etc.)…
NameTypeReqDescription
resultstringyes–

No examples provided.

generate_yara_rule ~144

Generate a YARA rule from function bytes. This tool extracts bytes from a function and generates a ready-to-use YARA rule for malware detection and threat hunting.

NameTypeReqDescription
byte_lengthinteger–Number of bytes to extract (default 64, max 1024)
file_pathstringyesPath to the binary file (must be in workspace)
function_addressstringyesFunction address to extract bytes from (e.g., 'main', '0x401000')
rule_namestring–Name for the YARA rule (default 'auto_generated_rule')
timeoutinteger–Execution timeout in seconds (default 300)
NameTypeReqDescription
result–yes–

No examples provided.

get_job_result ~39

Retrieve the status and result of a background job from the task queue.

NameTypeReqDescription
job_idstringyesThe ID of the queued job to check.
NameTypeReqDescription
result–yes–

No examples provided.

get_memory_session_detail ~54

Get complete details and context for a specific session. Use this when resuming an analysis or reviewing past work. Returns all memories and patterns associated with the session.

NameTypeReqDescription
session_idstringyesSession ID to retrieve

Structured output declared, but exposes no named fields.

No examples provided.

get_relevant_context ~72

Get relevant context from past analyses for current work. Use this proactively when analyzing something new to check if there's relevant knowledge from previous sessions.

NameTypeReqDescription
current_session_id––Current session to exclude
descriptionstringyesDescription of what you're currently analyzing
limitinteger–Maximum relevant items

Structured output declared, but exposes no named fields.

No examples provided.

get_report_session_status ~36

Get current session information and collected data.

NameTypeReqDescription
session_idstring–Session ID to query (uses current if not specified)
NameTypeReqDescription
resultstringyes–

No examples provided.

get_server_health ~91

Get the current health status and resource usage of the MCP server. Use this to monitor the server's uptime, memory consumption, and tool execution statistics. Returns: ToolResult containing: - uptime_seconds: Server uptime - memory_usage_mb: Current memory usage in MB - status: 'healthy' or 'degraded' - tool_stats: Summary of tool execution success/failure

Input schema present but exposes no named parameters.

NameTypeReqDescription
result–yes–

No examples provided.

get_system_time ~61

Get accurate system timestamp from the server. Returns OS-level time data to prevent AI date hallucination. Includes multiple formats (ISO, Unix, human-readable) and timezone info. Returns: JSON with report_id, date formats, time formats, timezone info

Input schema present but exposes no named parameters.

NameTypeReqDescription
resultstringyes–

No examples provided.

get_timezone_info ~33

Get current timezone configuration and available options. Returns: JSON with current timezone, offset, and all available timezones

Input schema present but exposes no named parameters.

NameTypeReqDescription
resultstringyes–

No examples provided.

get_tool_metrics ~31

Get detailed execution metrics for specific or all tools.

NameTypeReqDescription
tool_name––Optional tool name to filter results
NameTypeReqDescription
result–yes–

No examples provided.

hunt_cve_vulnerabilities ~169

One-click automated CVE hunting pipeline for C/C++ libraries, parsers, and codecs. Performs end-to-end vulnerability discovery: 1. Harness & Dictionary auto-synthesis 2. Hybrid Fuzzing + angr concolic branch solving 3. ASan crash triage, CWE mapping, and CVSS v3.1 scoring 4. Testcase minimization & standalone PoC generation 5. Vendor-ready Security Advisory Markdown report draft

NameTypeReqDescription
options––Optional configuration dictionary (e.g. fuzz_duration, target_function).
sample_file_path––Optional path to a valid sample file.
target_pathstringyesPath to target header (.h), source (.c/.cpp), or compiled binary.
timeout––Maximum execution timeout in seconds.
NameTypeReqDescription
result–yes–

No examples provided.

list_memory_sessions ~67

List all analysis sessions with timestamps and status. Use this to see what analyses have been done before, or to find a session to resume.

NameTypeReqDescription
limitinteger–Maximum number of sessions to return
status––Filter by status ('in_progress', 'completed', 'paused')

Structured output declared, but exposes no named fields.

No examples provided.

list_report_sessions ~30

List all analysis sessions with their status and duration. Returns: List of all sessions with summary information

Input schema present but exposes no named parameters.

NameTypeReqDescription
resultstringyes–

No examples provided.

list_workspace ~28

List all files in the workspace directory. Returns: ToolResult with list of files in workspace

Input schema present but exposes no named parameters.

NameTypeReqDescription
result–yes–

No examples provided.

match_libraries ~279

Match and filter known library functions to focus on user code. This tool uses radare2's zignatures (FLIRT-compatible signature matching) to: - **Reduce Analysis Noise**: Skip analysis of known library functions (strcpy, malloc, etc.) - **Focus on User Code**: Identify which functions are original vs library code - **Save Time & Tokens**: Reduce analysis scope by 80% by filtering out standard libraries - **Improve Accuracy**: Focus AI analysis on the actual malicious/interesting code Common use cases: - Analyzing large binaries (>25MB) where most code is OpenSSL, zlib, MFC, etc. - Game client reverse engineering (filter out Unreal Engine / Unity standard library) - Malware analysis (focus on custom malware code, skip Windows API wrappers) The tool automatically uses built-in signature databases for common libraries and can optionally use custom signature databases for specialized analysis.

NameTypeReqDescription
file_pathstringyesPath to the binary file to analyze
max_output_sizeinteger–Maximum output size in bytes (default: 10MB)
signature_db––Optional path to custom signature database file (.sig format). If None, uses radare2's built-in signature databases.
timeoutinteger–Timeout in seconds (default: 600s)
NameTypeReqDescription
result–yes–

No examples provided.

memory_analyze ~182

Run a Volatility3 plugin against a memory dump file. Supports Windows, Linux, and macOS memory dumps. Heavy plugin operations (malfind, psscan, netscan) are queued via ARQ for non-blocking execution.

NameTypeReqDescription
_bypass_queueboolean–Internal — set True to skip ARQ queueing.
dump_pathstringyesPath to the memory dump file (.raw, .vmem, .mem, .dmp).
extra_args––Additional plugin arguments as a space-separated string (e.g., "--pid 1234").
pluginstring–Volatility3 plugin name. Run ``memory_analyze`` with plugin='help' to see all supported plugins.
symbol_path––Optional path to an ISF symbol table file. Required for some plugins on unknown OS versions.
NameTypeReqDescription
result–yes–

No examples provided.

memory_detect_injections ~86

Detect process injection and suspicious memory regions using Volatility3 malfind. Uses the ``malfind`` plugin to identify memory regions with executable permissions that contain suspicious patterns (MZ headers, shellcode signatures).

NameTypeReqDescription
_bypass_queueboolean–Internal — set True to skip ARQ queueing.
dump_pathstringyesPath to the memory dump file.
NameTypeReqDescription
result–yes–

No examples provided.

memory_dump_module ~104

Dump a loaded module or DLL from a memory dump via Volatility3.

NameTypeReqDescription
dump_pathstringyesPath to the memory dump file.
module_name––Name of the module/DLL to dump. If None, dumps all modules for the specified process.
output_dir––Directory to save the dumped module. Defaults to the workspace directory.
process_namestringyesName of the target process (e.g., 'explorer.exe').
NameTypeReqDescription
result–yes–

No examples provided.

memory_extract_strings ~69

Extract ASCII and Unicode strings from a memory dump.

NameTypeReqDescription
dump_pathstringyesPath to the memory dump file.
limitinteger–Maximum number of strings to return (default: 500).
min_lengthinteger–Minimum string length to include (default: 6).
NameTypeReqDescription
result–yes–

No examples provided.

memory_list_processes ~65

List all running processes from a memory dump.

NameTypeReqDescription
dump_pathstringyesPath to the memory dump file.
include_hiddenboolean–If True, also run psscan to detect hidden/unlinked processes. Hidden processes may indicate rootkits or process injection.
NameTypeReqDescription
result–yes–

No examples provided.

memory_list_symbols ~95

List available Volatility3 symbol tables for a memory dump. Volatility3 requires OS-specific symbol tables (ISF files) to run most plugins. Use this tool to inspect which symbol tables are currently available, then load the appropriate one using ``memory_load_symbols`` before running analysis plugins.

NameTypeReqDescription
dump_pathstringyesPath to the memory dump file (e.g., .raw, .vmem, .mem).
NameTypeReqDescription
result–yes–

No examples provided.

packer_fingerprint ~124

Deep fingerprinting of binary packers, cryptors, protectors, and compilers. Computes whole-file & block-level Shannon entropy, checks for known packer signatures (UPX, Themida, VMProtect, ASPack, PyInstaller, ConfuserEx, etc.), identifies section anomalies (e.g., W+X violations, 0-raw size sections, entrypoint in last section), and inspects appended overlays.

NameTypeReqDescription
file_pathstringyesPath to the binary file to analyze.
timeoutinteger–Execution timeout in seconds.
NameTypeReqDescription
result–yes–

No examples provided.

parse_binary_with_lief ~89

Parse binary metadata using LIEF and return structured results. Memory-safe implementation with progressive limits: - Under 100MB: Full parsing with all details - 100-500MB: Warning + reduced extraction limits - Over 500MB: Minimal parsing (headers only) - Over config limit: Rejected

NameTypeReqDescription
file_pathstringyes–
formatstring––
NameTypeReqDescription
result–yes–

No examples provided.

patch_diff_1day ~99

Analyze patch differences for 1-day vulnerability analysis. This tool focuses on identifying security fixes between two versions of a binary. It highlights changed functions, basic blocks, and potential vulnerability indicators that were patched (e.g. added bounds checks).

NameTypeReqDescription
file_path_astringyesPath to pre-patch binary.
file_path_bstringyesPath to post-patch binary.
timeoutinteger–Timeout in seconds.
NameTypeReqDescription
result–yes–

No examples provided.

pcap_analyze ~116

Summarize sessions, protocols, and packet statistics from a PCAP file. Provides a high-level overview including total packets, unique hosts, protocol distribution, top talkers, and session summary — ideal as a first-pass triage of a PCAP capture.

NameTypeReqDescription
max_packetsinteger–Maximum number of packets to process (default: 10,000). For large captures, use a smaller value or filter first.
pcap_pathstringyesPath to a PCAP or PCAPNG capture file.
NameTypeReqDescription
result–yes–

No examples provided.

pcap_extract_c2 ~123

Detect potential C2 traffic patterns in a PCAP capture. Detects: - Beaconing behavior (periodic connections to same host) - Connections to known suspicious ports - Unusually long/persistent connections - DNS-over-HTTPS (DoH) patterns

NameTypeReqDescription
beacon_threshold_secinteger–Maximum jitter window (seconds) to consider as beaconing.
max_packetsinteger–Maximum packets to process (default: 100,000).
pcap_pathstringyesPath to a PCAP or PCAPNG capture file.
NameTypeReqDescription
result–yes–

No examples provided.

pcap_extract_dns ~108

Extract DNS queries and responses from a PCAP capture. Useful for identifying C2 domain lookups, DGA patterns, DNS tunneling, and suspicious resolution activity.

NameTypeReqDescription
include_responsesboolean–If True, also extract DNS response records (A, AAAA, MX, TXT).
max_packetsinteger–Maximum packets to process (default: 50,000).
pcap_pathstringyesPath to a PCAP or PCAPNG capture file.
NameTypeReqDescription
result–yes–

No examples provided.

pcap_list_connections ~81

List all unique IP/port connections observed in a PCAP capture.

NameTypeReqDescription
max_packetsinteger–Maximum packets to process (default: 50,000).
pcap_pathstringyesPath to a PCAP or PCAPNG capture file.
protocol––Filter by protocol ('tcp', 'udp', or None for all).
NameTypeReqDescription
result–yes–

No examples provided.

pcap_reconstruct_stream ~152

Reconstruct TCP stream payload from a PCAP capture. Reassembles the raw payload of a specific TCP conversation, useful for extracting transferred files, command output, or HTTP request/response bodies.

NameTypeReqDescription
dst_ipstringyesDestination IP address of the stream.
dst_portintegeryesDestination TCP port of the stream.
max_bytesinteger–Maximum payload bytes to reconstruct (default: 1 MB).
max_packetsinteger–Maximum packets to process (default: 10,000).
pcap_pathstringyesPath to a PCAP or PCAPNG capture file.
src_ipstringyesSource IP address of the stream.
NameTypeReqDescription
result–yes–

No examples provided.

r2_add_bookmark ~53

Add (or update) an annotated bookmark at a binary address.

NameTypeReqDescription
addressstringyes–
categorystring––
commentstringyes–
file_pathstringyes–
NameTypeReqDescription
result–yes–

No examples provided.

r2_analyze_function ~96

Return full metadata for a binary function via radare2. Retrieves name, size, cyclomatic complexity, arguments, local variables, call targets, and cross-references using radare2's JSON APIs.

NameTypeReqDescription
file_pathstringyesPath to the binary (must be inside the workspace).
function_addressstringyesFunction name or hex address.
timeoutinteger–Maximum execution time in seconds.
NameTypeReqDescription
result–yes–

No examples provided.

r2_create_structure ~44

Save (or replace) a C struct definition in the annotation DB.

NameTypeReqDescription
fields–yes–
file_pathstringyes–
namestringyes–
NameTypeReqDescription
result–yes–

No examples provided.

r2_decompile ~177

Decompile a binary function to pseudo-C using the r2ghidra plugin. Uses the ``pdg`` command which invokes the embedded Ghidra decompiler engine inside radare2 — no separate Ghidra or JDK installation required. Includes smart line windowing and function summary header for token efficiency.

NameTypeReqDescription
file_pathstringyesPath to the binary (must be inside the workspace).
function_addressstringyesFunction to decompile — name (``main``) or hex address (``0x401000``).
line_offsetinteger–Starting line offset for windowed output (default: 0).
max_linesinteger–Maximum number of lines to return (default: 200).
timeoutinteger–Maximum execution time in seconds (default 300).
NameTypeReqDescription
result–yes–

No examples provided.

r2_get_call_graph ~115

Generate a caller/callee call graph for a function. Uses radare2's ``agCd`` (call-graph dot) and ``axtj`` (cross-reference JSON) commands to build a structured graph.

NameTypeReqDescription
depthinteger–Maximum call depth to traverse (default 2).
file_pathstringyesPath to the binary (must be inside the workspace).
function_addressstringyesRoot function name or hex address.
timeoutinteger–Maximum execution time in seconds.
NameTypeReqDescription
result–yes–

No examples provided.

r2_get_structure ~34

Retrieve a single saved struct definition by name.

NameTypeReqDescription
file_pathstringyes–
namestringyes–
NameTypeReqDescription
result–yes–

No examples provided.

r2_list_bookmarks ~49

List all saved bookmarks / address annotations for a binary.

NameTypeReqDescription
category–––
file_pathstringyes–
limitinteger––
offsetinteger––
NameTypeReqDescription
result–yes–

No examples provided.

r2_list_structures ~43

List all saved C struct definitions for a binary.

NameTypeReqDescription
file_pathstringyes–
limitinteger––
offsetinteger––
NameTypeReqDescription
result–yes–

No examples provided.

r2_list_types ~42

List all custom type definitions saved for a binary.

NameTypeReqDescription
file_pathstringyes–
limitinteger––
offsetinteger––
NameTypeReqDescription
result–yes–

No examples provided.

r2_read_memory ~44

Read raw bytes from a binary at a given virtual address.

NameTypeReqDescription
addressstringyes–
file_pathstringyes–
sizeinteger––
NameTypeReqDescription
result–yes–

No examples provided.

r2_recover_structures ~109

Recover C struct layouts from a function's memory access patterns. Analyses local variables (``afvf``), function arguments (``afvj``), and cross-references (``axtj``) to infer struct field offsets and types.

NameTypeReqDescription
file_pathstringyesPath to the binary (must be inside the workspace).
function_addressstringyesFunction whose local variables / struct usage to analyse.
timeoutinteger–Maximum execution time in seconds.
NameTypeReqDescription
result–yes–

No examples provided.

r2_simulate_patch ~156

Simulate a byte-level patch at an address and re-decompile. Copies the binary to a temporary workspace cache file, opens that copy in write mode, applies ``patch_bytes`` at ``address``, then runs r2ghidra's ``pdg``. The original file remains read-only throughout the simulation.

NameTypeReqDescription
addressstringyesTarget address (e.g. ``0x401020``).
file_pathstringyesPath to the binary (must be inside the workspace).
patch_bytesstringyesHex string of bytes to write (e.g. ``"9090"`` for 2 NOPs).
timeoutinteger–Maximum execution time in seconds.
NameTypeReqDescription
result–yes–

No examples provided.

Radare2_analyze ~176

Run binary analysis with optional depth level.

NameTypeReqDescription
arch––Optional architecture (e.g., 'mips', 'arm64', 'riscv', 'x86_64')
bits––Optional architecture bits (e.g., 32, 64)
file_pathstringyesPath to the binary file
levelinteger–Analysis depth as an INTEGER from 0 to 4 (default: 2). IMPORTANT: Must be an integer. Do NOT pass strings like "full", "deep", or "auto" — those will be rejected. 0 = aa (basic, fastest) 1 = aaa (au…

Structured output declared, but exposes no named fields.

No examples provided.

Radare2_calculate ~80

Evaluate a math expression using radare2's number parser. Useful for: 64-bit math, resolving addresses for symbols, avoiding hallucinated results.

NameTypeReqDescription
expressionstringyesMath expression to evaluate (e.g., "0x100 + sym.flag - 4")
file_pathstringyesPath to the binary file

Structured output declared, but exposes no named fields.

No examples provided.

Radare2_close_file ~37

Close the currently open radare2 session for a file.

NameTypeReqDescription
file_pathstringyesPath to the file to close

Structured output declared, but exposes no named fields.

No examples provided.

Radare2_decompile_function ~158

Show C-like pseudocode of the function at the given address. Use this to inspect code in a function. Do not run multiple times on the same offset. Includes smart line windowing and function summary header.

NameTypeReqDescription
addressstringyesAddress of the function to decompile
cursor––Legacy pagination cursor (overridden by line_offset if provided)
file_pathstringyesPath to the binary file
line_offsetinteger–Starting line offset for windowed pseudocode (default: 0)
max_linesinteger–Maximum lines of pseudocode per window (default: 200)
page_sizeinteger–Legacy page size (overridden by max_lines if provided)

Structured output declared, but exposes no named fields.

No examples provided.

Radare2_disassemble ~91

Disassemble a specific number of instructions from an address. Use this to inspect a portion of memory as code without depending on function analysis boundaries.

NameTypeReqDescription
addressstringyesAddress to start disassembly
file_pathstringyesPath to the binary file
num_instructionsinteger–Number of instructions to disassemble (default: 10, max: 1000)

Structured output declared, but exposes no named fields.

No examples provided.

Radare2_disassemble_function ~174

Show assembly listing of the function at the specified address.

NameTypeReqDescription
addressstringyesAddress OR symbol name of the function to disassemble. Accepts hex addresses (e.g. '0x401000', '0x8d4') as well as function/symbol names (e.g. 'main', 'sym.secret_backdoor', 'sym.process_request'). S…
cursor––Pagination cursor
file_pathstringyesPath to the binary file
formatstring–Output format - 'compact' (compact instruction tuples [addr, mnemonic, ops, comment]) or 'raw' (raw visual text output). Default: 'compact'.
page_sizeinteger–Number of lines per page

Structured output declared, but exposes no named fields.

No examples provided.

Install

How do I install the Reversecore MCP server?

Reversecore MCP runs locally as a container image, launched with docker run --rm -i ghcr.io/sjkim1127/reversecore_mcp:3.0.5. Ready-made configuration for Claude, Cursor, VS Code, Codex and 3 more is on this page, copied from each client's own documentation.

oci · ghcr.io/sjkim1127/reversecore_mcp

# add to Claude Code
claude mcp add sjkim1127-reversecore-mcp -- docker run --rm -i ghcr.io/sjkim1127/reversecore_mcp:3.0.5
Common questions

What is the Reversecore MCP server?

Reversecore MCP is listed in the public MCP registry as io.github.sjkim1127/reversecore-mcp. Security-first MCP server for reverse engineering, malware analysis, forensics, and SAST. This page covers its container image (ghcr.io/sjkim1127/reversecore_mcp).

Is the Reversecore MCP server safe to use?

Reversecore MCP scores 55 out of 100 on VerifyMCP. The SBOM its publisher attached lists packages with 180 known advisories as of 5 November 2026. We do not grade that SBOM, as nothing verifies it. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

What tools does the Reversecore MCP server expose?

Reversecore MCP exposes 151 tools: generate_advanced_yara_rule, diff_binaries, analyze_variant_changes, match_libraries, patch_diff_1day, and 146 more. Their descriptions and schemas cost roughly 18,314 tokens of context every time the server is loaded.

Is the Reversecore MCP server still maintained?

Reversecore MCP is still listed as active in the MCP registry. We last reached this channel on 5 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

What licence is the Reversecore MCP server under?

Reversecore MCP declares the MIT licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.