Volatility MCP
Integrates Volatility 3 memory analysis with FastAPI and MCP, exposing memory forensics plugins via REST APIs.
Your AI Assistant in Memory Forensics
Overview
Volatility MCP seamlessly integrates Volatility 3's powerful memory analysis with FastAPI and the Model Context Protocol (MCP). Experience memory forensics without barriers as plugins like pslist and netscan become accessible through clean REST APIs, connecting memory artifacts directly to AI assistants and web applications
Features
- Volatility 3 Integration: Leverages the Volatility 3 framework for memory image analysis.
- FastAPI Backend: Provides RESTful APIs to interact with Volatility plugins.
- Web Front End Support (future feature): Designed to connect with a web-based front end for interactive analysis.
- Model Context Protocol (MCP): Enables standardized communication with MCP clients like Claude Desktop.
- Plugin Support: Supports various Volatility plugins, including
pslistfor process listing andnetscanfor network connection analysis.
Architecture
The project architecture consists of the following components:
- MCP Client: MCP client like Claude Desktop that interacts with the FastAPI backend.
- FastAPI Server: A Python-based server that exposes Volatility plugins as API endpoints.
- Volatility 3: The memory forensics framework performing the analysis.
This architecture allows users to analyze memory images through MCP clients like Claude Desktop. Users can use natural language prompts to perform memory forensics analysis such as show me the list of the processes in memory image x, or show me all the external connections made
Getting Started
Prerequisites
- Python 3.7+ installed on your system
- Volatility 3 binary installed (see Volatility 3 Installation Guide) and added to your env path called VOLATILITY_BIN
Installation
-
Clone the repository:
git clone <repository_url> cd <repository_directory> -
Install the required Python dependencies:
pip install -r requirements.txt -
Start the FastAPI server to expose Volatility 3 APIs:
uvicorn volatility_fastapi_server:app -
Install Claude Desktop (see Claude Desktop
-
To configure Claude Desktop as a volatility MCP client, navigate to Claude → Settings → Developer → Edit Config, locate the claude_desktop_config.json file, and insert the following configuration details
-
Please note that the
-ioption in the config.json file specifies the directory path of your memory image file.{ "mcpServers": { "vol": { "command": "python", "args": [ "/ABSOLUTE_PATH_TO_MCP-SERVER/vol_mcp_server.py", "-i", "/ABSOLUTE_PATH_TO_MEMORY_IMAGE/<memory_image>" ] } } }
Alternatively, update this file directly:
/Users/YOUR_USER/Library/Application Support/Claude/claude_desktop_config.json
Usage
- Start the FastAPI server as described above.
- Connect an MCP client (e.g., Claude Desktop) to the FastAPI server.
- Start the prompt by asking questions regarding the memory image in scope, such as showing me the running processes, creating a tree relationship graph for process x, or showing me all external RFC1918 connections.
Future Features and Enhancements
- Native Volatility Python Integration: Incorporate Volatility Python SDK directly in the code base as opposed to subprocess volatility binary
- Yara Integration: Implement functionality to dump a process from memory and scan it with Yara rules for malware analysis.
- Multi-Image Analysis: Enable the analysis of multiple memory images simultaneously to correlate events and identify patterns across different systems.
- Adding more Volatility Plugins: add more volatility plugins to expand the scope of memory analysis
- GUI Enhancements: Develop a user-friendly web interface for interactive memory analysis and visualization.
- Automated Report Generation: Automate the generation of detailed reports summarizing the findings of memory analysis.
- Advanced Threat Detection: Incorporate advanced techniques for detecting sophisticated threats and anomalies in memory.
Contributing
Contributions are welcome! Please follow these steps to contribute:
- Fork this repository.
- Create a new branch (
git checkout -b feature/my-feature). - Commit your changes (
git commit -m 'Add some feature'). - Push to your branch (
git push origin feature/my-feature). - Open a pull request.
Servidores relacionados
Scout Monitoring MCP
patrocinadorPut performance and error data directly in the hands of your AI assistant.
Alpha Vantage MCP Server
patrocinadorAccess financial market data: realtime & historical stock, ETF, options, forex, crypto, commodities, fundamentals, technical indicators, & more
Remote Weather MCP Server
A remote, authentication-free MCP server for weather data, deployable on Cloudflare Workers or run locally via npm.
MCP Aggregator
A universal aggregator that combines multiple MCP servers into a single endpoint.
MCP Configuration Editor
Edit the mcp.json configuration file for tools like AWS Q Developer and Claude Desktop.
Deno Gemini Grounding MCP Server
A Model Context Protocol server that provides access to the connpass users API v2, utilizing Gemini for grounding.
iOS Simulator MCP Server
A Model Context Protocol (MCP) server for interacting with iOS simulators. This server allows you to interact with iOS simulators by getting information about them, controlling UI interactions, and inspecting UI elements.
MCP Memory Keeper
A server for persistent context management in Claude AI coding assistants, using a local SQLite database for storage.
Python REPL
A Python REPL with persistent sessions and automatic dependency management using uv.
SR MCP
SR MCP-server: Access Swedish Radio open data. (Sveriges Radio)
Matter AI
Provides advanced code review, implementation planning, and pull request generation using Matter AI.
Jetbrains Index Intelligence MCP Plugin
Allows AI-powered coding assistants to tap into your JetBrains IDE’s semantic code index and refactoring engine — giving them true code intelligence (symbol lookup, references, refactors, diagnostics, etc.) via MCP.
