Skip to main content
Glama
schwarztim

feroxbuster-mcp

by schwarztim

Feroxbuster MCP Server

A Model Context Protocol (MCP) server for feroxbuster - a fast, simple, recursive content discovery tool written in Rust.

Overview

This MCP server enables AI assistants to control feroxbuster scans on a remote Kali Linux system via SSH. It provides a complete interface for web content discovery with support for:

  • Directory and file brute-forcing with customizable wordlists

  • Recursive scanning with configurable depth

  • Flexible filtering (status codes, response size, word count, line count)

  • Rate limiting, auto-tuning, and auto-bail features

  • Background scans with real-time progress monitoring

  • Resume capability from state files

  • Multiple output formats (text, JSON, URLs)

Prerequisites

  • Node.js 18+

  • SSH access to a Kali Linux system (or any system with feroxbuster installed)

  • SSH key authentication configured for passwordless access (recommended)

  • feroxbuster installed on the remote system

Installation

git clone https://github.com/schwarztim/sec-feroxbuster-mcp.git
cd sec-feroxbuster-mcp
npm install
npm run build

Configuration

Claude Desktop / Claude Code

Add the server to your MCP configuration:

Claude Desktop (~/Library/Application Support/Claude/claude_desktop_config.json on macOS):

{
  "mcpServers": {
    "feroxbuster": {
      "command": "node",
      "args": ["/path/to/sec-feroxbuster-mcp/dist/index.js"],
      "env": {
        "KALI_HOST": "kali"
      }
    }
  }
}

Claude Code (~/.claude/user-mcps.json):

{
  "feroxbuster": {
    "command": "node",
    "args": ["/path/to/sec-feroxbuster-mcp/dist/index.js"],
    "env": {
      "KALI_HOST": "kali"
    }
  }
}

Environment Variables

Variable

Description

Default

KALI_HOST

SSH hostname for the remote system with feroxbuster

kali

SSH Setup

Ensure SSH key authentication is configured:

# Generate key if needed
ssh-keygen -t ed25519 -C "feroxbuster-mcp"

# Copy to remote host
ssh-copy-id kali

# Test connection
ssh kali "feroxbuster --version"

Available Tools

feroxbuster_scan

Start a directory/file discovery scan against a target URL.

Parameters:

Parameter

Type

Description

url

string

(required) Target URL to scan

wordlist

string

Path to wordlist on remote system

extensions

string[]

File extensions to check (e.g., ["php", "html", "js"])

recursion_depth

number

Maximum recursion depth (0 = infinite, default: 4)

threads

number

Concurrent threads (default: 50)

timeout

number

Request timeout in seconds (default: 7)

rate_limit

number

Max requests per second per directory

filter_status

number[]

Status codes to exclude from results

status_codes

number[]

Status codes to include

filter_size

number[]

Response sizes to exclude

filter_words

number[]

Word counts to exclude

filter_lines

number[]

Line counts to exclude

headers

object

Custom headers (e.g., {"Authorization": "Bearer token"})

proxy

string

Proxy URL (HTTP or SOCKS5)

insecure

boolean

Disable TLS certificate validation

no_recursion

boolean

Disable recursive scanning

force_recursion

boolean

Force recursion on all discovered paths

auto_tune

boolean

Automatically reduce rate on errors

auto_bail

boolean

Automatically stop on excessive errors

silent

boolean

Only output URLs (for piping)

json

boolean

Output results as JSON

background

boolean

Run scan in background

dont_scan

string[]

URLs to exclude from recursion

time_limit

string

Maximum scan time (e.g., "10m", "1h")

scan_limit

number

Maximum concurrent directory scans

user_agent

string

Custom User-Agent string

cookies

string

Cookie string to include

data

string

POST request body

methods

string[]

HTTP methods to use (default: GET)

query

string

Query parameters to append

feroxbuster_config

Configure default settings for subsequent scans. Accepts same filtering and connection parameters as feroxbuster_scan.

feroxbuster_status

Check the status of a running or completed scan.

Parameter

Type

Description

tail_lines

number

Number of output lines to show (default: 50)

feroxbuster_stop

Stop a running scan gracefully. Preserves state file for potential resume.

feroxbuster_resume

Resume a previously interrupted scan from its state file.

Parameter

Type

Description

state_file

string

Path to state file (optional, uses last scan)

background

boolean

Run resumed scan in background

feroxbuster_wordlists

List available wordlists on the remote system.

Parameter

Type

Description

search

string

Filter wordlists by search term

category

string

Category: "common", "directory", "web", "api", "all"

feroxbuster_results

Retrieve and format results from the last completed scan.

Parameter

Type

Description

format

string

Output format: "text", "json", "urls"

filter_status

number[]

Filter results by status codes

feroxbuster_version

Get feroxbuster version information from the remote system.

Usage Examples

Basic Scan

Scan http://target.com for directories and files

Scan with Extensions and Filtering

Scan http://target.com looking for php, html, and txt files.
Exclude 404 and 500 responses. Limit recursion to 3 levels.

Background Scan with Rate Limiting

Start a background scan of http://target.com with rate limiting
at 100 requests/second and auto-tune enabled.

Check Scan Progress

What's the status of my feroxbuster scan?

Resume an Interrupted Scan

Resume the last feroxbuster scan in the background

List Available Wordlists

Show me API-related wordlists on the Kali system

State Management

Scan state is persisted in ~/.feroxbuster-mcp/state.json:

  • Active scan information (PID, URL, output file, state file)

  • Last scan results for retrieval

  • Default configuration settings

This enables scan resumption and result retrieval across sessions.

Security Considerations

  • This tool is designed for authorized security testing only

  • Always obtain proper authorization before scanning any systems

  • Use rate limiting to avoid overwhelming target servers

  • Consider using the auto_bail option to stop on errors

  • Proxy support enables routing through Burp Suite or other tools

License

MIT License - see LICENSE for details.

Acknowledgments

A
license - permissive license
-
quality - not tested
C
maintenance

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/schwarztim/sec-feroxbuster-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server