Volatility-MCP-Server

Volatility-MCP-Server

1

The Volatility MCP Server is a memory forensics automation toolkit built on Volatility 3, supporting multiple operating systems. It offers plugin automation, cross-platform support, and modular architecture, making memory analysis faster and more accessible.

โ„๏ธ Volatility MCP Server

Python Volatility 3 Docker (Not) Ready FastMCP


๐Ÿ“Œ Overview

The Volatility MCP Server is a powerful memory forensics automation toolkit powered by Volatility 3. It provides a modular, extensible interface for running Volatility plugins across Windows, Linux, and macOS memory dumps.

It makes memory analysis faster and more accessible via:

โœ… Plugin automation
โœ… Cross-platform support (Windows, Linux, macOS)
โœ… Modular plugin architecture
โœ… Rich logging with beautiful formatting
โœ… Easy plugin registration and management


๐Ÿ’ก Key Features

  • ๐Ÿ” Powered by Volatility 3
  • ๐Ÿง  Supports Windows, Linux, and macOS plugins
  • โš™๏ธ Asynchronous plugin execution
  • ๐Ÿ“ค JSON output format
  • ๐Ÿ“Š Built-in error handling and validation
  • ๐Ÿ‘จโ€๐Ÿ’ป FastMCP server interface
  • ๐Ÿณ Docker-ready environment

๐Ÿ“ฆ Requirements

python 3.11+
pip install -r requirements.txt

requirements.txt:

fastmcp
rich
python-dotenv

๐Ÿ“ Project Structure

Volatility-MCP-Server/
โ”œโ”€โ”€ volatility_mcp_server.py    # Main server implementation
โ”œโ”€โ”€ plugins/                    # Plugin modules
โ”‚   โ”œโ”€โ”€ base_plugin.py         # Base plugin class
โ”‚   โ”œโ”€โ”€ plugin_factory.py      # Plugin registration
โ”‚   โ”œโ”€โ”€ windows/               # Windows plugins
โ”‚   โ”œโ”€โ”€ linux/                 # Linux plugins
โ”‚   โ”œโ”€โ”€ mac/                   # macOS plugins
โ”‚   โ””โ”€โ”€ common/                # Common plugins
โ”œโ”€โ”€ requirements.txt           # Dependencies
โ””โ”€โ”€ README.md                 # This file

๐Ÿ–ฅ๏ธ Usage

๐Ÿ”ง Local Connection

Using stdio

Create a .cursor/mcp.json file with:

{
  "mcpServers": {
    "Volatility3": {
      "command": "fastmcp",
      "args": ["run", "path/to/volatility_mcp_server.py:mcp", "--transport", "stdio"]
    }
  }
}
Using sse

Run the server using

fastmcp run volatility_mcp_server.py:mcp --transport sse

For Claude desktop

{
    "mcpServers": {
      "volatility3": {
        "command": "npx",
        "args": ["mcp-remote", "http://localhost:8000/sse"]
      }
    }
  }

For Cursor

{
  "mcpServers": {
    "Volatility3": {
      "url": "http://localhost:8000/sse"
    }
  }
}

๐Ÿ“Š Available Plugins

Windows Plugins
  • Process: PsList, PsTree, PsScan
  • Memory: Malfind, MemMap
  • Network: NetScan
  • Registry: RegistryHiveList, RegistryPrintKey
  • System: SvcScan, CmdLine, DllList, Handles, FileScan
  • Disk: ADS, MFTScan, ResidentData
Linux Plugins
  • Process: PsList, PsTree, PsScan, PsAux, PsCallStack
  • System: Bash, Boottime, Capabilities
  • Network: IpAddr, IpLink, Netfilter
  • Memory: Malfind, ModuleExtract
  • File System: Files, InodePages, RecoverFs
macOS Plugins
  • Process: PsList, PsTree, Psaux
  • System: Bash, Dmesg, Lsmod
  • Network: Ifconfig, Netstat
  • Security: Check_syscall, Check_sysctl, Check_trap_table
Common Plugins
  • Framework: Banners, ConfigWriter, FrameworkInfo, IsfInfo, LayerWriter
  • Scan: RegExScan, YaraScan, Vmscan
  • Timeline: Timeliner

๐Ÿณ Docker Usage (No idea what I wanted to do here but might be useful in the future)

โš™๏ธ 1. Build the Docker Image

From the root directory:

docker build -t volatility-mcp .

โ–ถ๏ธ 2. Run the Server

docker run --rm -it \
  -v $(pwd)/memdumps:/memdumps \
  -v $(pwd)/output:/output \
  volatility-mcp

๐Ÿ”ง Developer/Contributor Guide

๐Ÿงฑ Setup Virtual Environment

python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt

๐Ÿงช Run Locally

python volatility_mcp_server.py

โœ๏ธ Customization Tips

  • ๐Ÿ“€ Want to add a new plugin? Extend BasePlugin and register it in plugin_factory.py
  • ๐Ÿงฉ Want to add a new OS? Create a new plugin directory and implement the plugins
  • ๐Ÿ“š Want to add new features? The modular architecture makes it easy to extend

๐Ÿ™‹ FAQ

๐ŸŸ  Does this support Volatility 2.x?
๐Ÿ”ป No. This server supports Volatility 3 only for modern plugin support.

๐Ÿ”ต Can I add custom plugins?
โœ… Yes! Just extend the BasePlugin class and register it in the factory.

๐Ÿ”ด Why use FastMCP?
It provides a clean, efficient interface for running Volatility plugins with proper error handling and async support.


๐Ÿ“œ License

MIT ยฉ๏ธ 2025


๐ŸŒ More Tools?

You may also like: