OLETools Secure MCP Server

by pradeep895

4 stars
319 downloads
Not rated
GitHub

About

Secure MCP server for analyzing Excel files with oletools

Details

Author
pradeep895
GitHub stars
4
Downloads
319
Categories
Other

- Analyzes VBA Macros using olevba
- Detects XLM Macros with XLMMacroDeobfuscator
- Checks for DDE Links via msodde
- Extracts embedded OLE Objects with oleobj
- Analyzes XLL exports for suspicious functions with pefile
- Extracts IOCs (URLs, IPs, hashes, emails) using iocextract
- Provides MIME type and file size validation with python-magic
- Uses a configurable scoring system for risk classification
- Designed for MCP protocol integration with Claude Desktop

Setting up with Highlight

This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name OLETools Secure MCP Server
    Command (node, npx, python, etc.)

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

From the repository

Clone the repository, install dependencies with pip install -r requirements.txt, then edit claude_desktop_config.json to add the server. Run python config.py and python mcp_service.py. In Claude Desktop, invoke tools like analyze_vba_macros file_path:"C:\path\to\example.xlsm".

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

{
    "mcpServers": {
        "oletools secure mcp server": {
            "oletools-mcp-server": {
                "command": "python",
                "args": [
                    "config.py"
                ]
            }
        }
    }
}

McpServers

{
    "oletools-mcp-server": {
        "command": "python",
        "args": [
            "config.py"
        ]
    }
}

OLETools Secure MCP Server

This project provides a secure microservice using FastMCP to analyze Microsoft Office documents (Excel, Word, PowerPoint) and related file types (like XLL add-ins) for potential malicious content using static analysis techniques. It leverages external tools like oletools, XLMMacroDeobfuscator, and pefile.

Features

Analyzes VBA Macros (olevba)
Detects XLM Macros (XLMMacroDeobfuscator, olevba)
Checks for DDE Links (msodde)
Extracts embedded OLE Objects (oleobj)
Analyzes XLL file exports for suspicious functions (pefile)
Extracts IOCs (URLs, IPs, Hashes, Emails) using iocextract
Provides basic MIME type and file size validation (python-magic)
Uses a configurable scoring system for basic risk classification

  • Designed for integration with systems supporting the MCP protocol (like compatible versions of Claude Desktop).

Prerequisites

- Python 3.6+ - OLETools: Install via pip install oletools - XLMMacroDeobfuscator: Install via pip install XLMMacroDeobfuscator - python-magic: Install via pip install python-magic-bin (Windows) - iocextract (optional): Install via pip install iocextract for advanced IOC extraction - Claude Desktop application

Installation

1. Clone the Repository:

   git clone https://github.com/pradeep895/oletools-mcp-server.git
cd oletools-mcp-server

2. Install Dependencies:
 pip install -r requirements.txt

3. Download the "Claude Desktop" application go to the Developer settings and Edit the "claude_desktop_config.json" file and paste content in the configuration.json file.Restart the application.
4. Run the config file:
 python config.py

6. Run the server:
 python mcp_service.py

9. Go to "Claude Desktop" application and check for the "hammer symbol" it appeared means MCP tools are available.
10. type "analyze_vba_macros in <filepath\example.xlsm>" this will help you to analyze the excel file statically and gave you the findings.
 analyze_vba_macros file_path:"C:\path\to\your\example.xlsm"

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.