mcpField
W
Web Application Penetration Testing MCP

Web Application Penetration Testing MCP

Local
github.com/yallasecSecurity4Updated 80w ago

About Web Application Penetration Testing MCP

Web Application Penetration Testing MCP maps web applications and analyzes potential business-logic security issues for penetration testers. It supports authenticated scanning and produces a sitemap and analysis results.

Key features

  1. 01Map pages and interactive elements
  2. 02Handle authentication with credentials or tokens
  3. 03Identify IDOR and access-control issues
  4. 04Analyze calculation edge cases and workflows
  5. 05Generate a visual sitemap in DOT format

Use cases

  1. 01Map application areas behind authentication
  2. 02Find potential flaws in business workflows
  3. 03Use a sitemap to spot complex pages
  4. 04Review input fields and potential edge cases

MCP support

The project is named MCP and provides application analysis, but the README does not describe an MCP client interface or how it exposes capabilities.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

No install method listed yet

We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.

Repository

Tools

No tool list yet

Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.

Details

From the project README

Web Application Penetration Testing MCP

A comprehensive tool for analyzing web applications with a focus on business logic security vulnerabilities. This Master Control Program (MCP) systematically crawls, analyzes, and identifies potential security issues beyond what standard scanners detect.

Overview

Web Application Penetration Testing MCP helps you understand the business context of web applications by building a complete map of the application structure and identifying potential security weak points, particularly in business logic implementation.

Key Features

Comprehensive Discovery
  • Automatically builds a tree structure of the entire web application
  • Maps all links, forms, and interactive elements
  • Identifies input fields with their types and expected values
Authentication Handling
  • Automatically detects login/logout pages
  • Can authenticate using credentials to access protected areas
  • Supports both cookie-based and bearer token authentication
Business Logic Analysis
  • Identifies potential IDOR (Insecure Direct Object Reference) vulnerabilities
  • Detects mathematical/calculation edge cases
  • Maps multi-step workflows that could be manipulated
  • Discovers permission and access control issues
Advanced Input Analysis
  • Identifies input field types (even when not explicitly defined)
  • Generates appropriate test values based on field type
  • Detects hidden fields that might contain sensitive values
Visualization Support
  • Creates a visual sitemap using DOT format (viewable with Graphviz)
  • Highlights complex pages requiring more attention

Installation

# Clone the repository
git clone https://github.com/yourusername/web-app-penetration-testing-mcp.git

# Navigate to the directory
cd web-app-penetration-testing-mcp

# Install dependencies - using uv
pip install -r requirements.txt

Usage

at the moment other.py is the continued tool version

Basic Operation
# Basic usage
python web_app_mcp.py https://example.com

# With authentication
python web_app_mcp.py https://example.com --username [email protected] --password mysecretpassword

# Create visual sitemap
python web_app_mcp.py https://example.com --visual

# Control crawl speed and depth
python web_app_mcp.py https://example.com --delay 1.0 --max-pages 200
Command Line Arguments
ArgumentDescription
urlTarget web application URL (required)
--usernameUsername for authenticated scanning
--passwordPassword for authenticated scanning
--visualGenerate visual sitemap in DOT format
--delayDelay between requests in seconds (default: 0.5)
--max-pagesMaximum number of pages to scan (default: 100)
--outputOutput file name (default: mcp_results.json)
--cookiesCookie string for authenticated scanning
--headersAdditional headers in JSON format

Output

The tool generates a mcp_results.json file containing:

  • Complete application structure
  • Identified input fields and their types
  • Detected authentication mechanisms
  • Multi-step workflows
  • Potential edge cases and vulnerabilities
  • Business logic analysis results

Workflow for Testing

  1. Review the generated mcp_results.json file to understand the application structure
  2. Focus on the "potential_edge_cases" section for high-value test targets
  3. Use the visual sitemap to identify complex areas of the application
  4. Leverage the generated test cases to find business logic vulnerabilities

Example Output

{
  "application_map": {
    "https://example.com/": {
      "type": "page",
      "links": ["https://example.com/login", "https://example.com/about"],
      "forms": []
    },
    "https://example.com/login": {
      "type": "authentication",
      "links": [],
      "forms": [
        {
          "action": "/process-login",
          "method": "POST",
          "inputs": [
            {"name": "username", "type": "email"},
            {"name": "password", "type": "password"}
          ]
        }
      ]
    }
  },
  "potential_edge_cases": [
    {
      "url": "https://example.com/user/profile",
      "type": "IDOR",
      "description": "User ID parameter may allow access to other profiles"
    }
  ]
}

Visualization

When using the --visual flag, the tool generates a sitemap.dot file that can be converted to an image using Graphviz:

dot -Tpng sitemap.dot -o sitemap.png

Advanced Usage

Scanning with Custom Headers
python web_app_mcp.py https://example.com --headers '{"X-API-Key": "your-api-key"}'
Rate Limited Scanning
python web_app_mcp.py https://example.com --delay 2.0 --max-pages 50
Focusing on Specific Areas
python web_app_mcp.py https://example.com/admin --max-depth 3

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.