MCPwner
Integrates Checkmarx KICS for infrastructure-as-code security scanning, enabling detection of misconfigurations in Terraform, Kubernetes, Docker, and more.
Integrates GitHub CodeQL for static application security testing (SAST) to identify vulnerabilities in source code across multiple languages.
Integrates Google's Atheris (Python fuzzing) and OSV-Scanner (dependency vulnerability scanning) for source fuzzing and software composition analysis.
Integrates OWASP Amass for reconnaissance, including subdomain enumeration and network mapping, as well as other OWASP tools for security testing.
Provides source fuzzing for PHP applications using PHP-Fuzzer to discover memory corruption and other bugs.
Integrates PyCQA Bandit for static application security testing of Python code to find common security issues.
Supports Python security analysis through Bandit for SAST and Atheris for fuzzing.
Integrates Brakeman for static security analysis of Ruby on Rails applications.
Integrates Yelp's detect-secrets for scanning repositories and files for secrets and credentials.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@MCPwnerscan example.com for subdomains and open ports"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Compatible with:
Table of Contents
Related MCP server: MCP Vulnerability Checker Server
Overview
MCPwner is an MCP server that gives your LLM agent a full offensive-security toolkit. It exposes 55+ containerized tools through a single MCP interface - SAST, SCA, secrets, IaC, reconnaissance, DAST, coverage-guided fuzzing, CodeQL (builtin and custom queries), a headless browser, an OOB callback server, a PoC-script sandbox with deterministic oracles, and a persistent findings ledger.
The architecture is designed for agent-driven vulnerability research: a single agent session - model-agnostic (Claude, Cursor, Kiro, Gemini, or any MCP-capable coding agent) - works through the research phases (recon, code audit, PoC validation, adversarial review), recording every step in the shared findings ledger. Each finding progresses from hypothesis through empirical proof to verified report - "no exploit, no report."
Note: This project is under active development. Learn more about MCPs here.
Workflow
MCPwner is the tool server; your LLM agent is the brain. A typical deep-research engagement:
Phase | What happens | MCPwner tools used |
Workspace | Clone target, detect stack |
|
Discover | Broad scan for known patterns |
|
Triage | Kill false positives, prove reachability |
|
Research | Hunt novel bugs via diffs and variant analysis |
|
Prove | Empirical validation with deterministic oracles |
|
Report | Only oracle-verified findings ship |
|
The ledger uses deep-merge upserts, so a later phase's review verdict never clobbers the earlier poc data (and vice-versa) - and it stays consistent if the agent's context is reset mid-engagement.
Integrated Tools
Reconnaissance
Static Application Security Testing (SAST)
Source Fuzzing
Secrets Scanning
Software Composition Analysis (SCA)
Infrastructure & IaC Security
Dynamic Application Security Testing (DAST)
Utilities
PoC Validation
PoC-Script Sandbox |
Deterministic oracle runner |
The PoC sandbox runs agent-authored Python/bash exploit scripts inside the target network and returns a deterministic oracle verdict (pass/fail based on exit code or explicit markers). This is how MCPwner proves logic bugs, IDOR/BOLA, race conditions, and access-control bypasses that off-the-shelf DAST cannot express.
Installation
Prerequisites
System Requirements:
Docker Engine 20.10+ and Docker Compose 2.0+
8GB RAM minimum (16GB recommended for running multiple tools)
20GB free disk space (security tool images are large)
Supported platforms: Linux, macOS, Windows (with WSL2)
MCP Client:
Claude Desktop, Cursor, Kiro, or any MCP-compatible client
Setup
Clone the repository:
git clone https://github.com/nedlir/mcpwner.git cd mcpwnerConfigure the server:
cp .env.example .env cp config/config.yaml.example config/config.yamlStart the services:
docker compose up -d --buildVerify services are running:
docker compose ps
Connect Your IDE
Once Docker containers are running, add MCPwner to your MCP client.
Dynamic Tool Registration: MCPwner uses Docker Compose profiles for opt-in tool categories. The .env file's COMPOSE_PROFILES variable controls which containers start. The MCP server probes running containers at startup and registers only healthy tools - if a container is down, its tools simply don't appear. Tools in the utilities category run unconditionally.
One-Click Install (requires Docker running):
Manual Configuration:
Add to your MCP configuration file (claude_desktop_config.json, mcp.json, etc.):
{
"mcpServers": {
"mcpwner": {
"command": "docker",
"args": ["exec", "-i", "mcpwner-server", "python", "src/server.py"],
"env": {}
}
}
}Restart your MCP client to load the new server configuration.
Scanning Local Projects
Mount your projects into the container by adding a volume in docker-compose.yaml:
services:
mcpwner:
volumes:
- /path/to/your/projects:/mnt/projects:roThen use create_workspace with source_type="local" and source="/mnt/projects/my-project".
Architecture
graph LR
subgraph IDE[" "]
LLM[🤖<br/>LLM]
Client[MCP Client]
LLM -.-> Client
end
Server[MCPwner Server]
SAST[SAST Tools]
Secrets[Secrets Scanning]
SCA[SCA Tools]
Recon[Reconnaissance]
CodeQL[CodeQL Service]
Linguist[Language Detection]
Utilities[Utilities]
IaC[IaC Security]
Fuzzing[Source Fuzzing]
DAST[DAST Tools]
PoC[PoC Sandbox]
Client -->|JSON-RPC 2.0| Server
Server -->|HTTP| SAST
Server -->|HTTP| Secrets
Server -->|HTTP| SCA
Server -->|HTTP| Recon
Server -->|HTTP| CodeQL
Server -->|HTTP| Linguist
Server -->|HTTP| Utilities
Server -->|HTTP| IaC
Server -->|HTTP| Fuzzing
Server -->|HTTP| DAST
Server -->|HTTP| PoC
style LLM fill:#7C3AED,stroke:#5B21B6,stroke-width:3px,color:#fff
style Client fill:#4A90E2,stroke:#2E5C8A,stroke-width:3px,color:#fff
style Server fill:#F5A623,stroke:#C17D11,stroke-width:3px,color:#fff
style SAST fill:#E74C3C,stroke:#C0392B,stroke-width:2px,color:#fff
style Secrets fill:#9B59B6,stroke:#7D3C98,stroke-width:2px,color:#fff
style SCA fill:#1ABC9C,stroke:#16A085,stroke-width:2px,color:#fff
style Recon fill:#00BCD4,stroke:#0097A7,stroke-width:2px,color:#fff
style CodeQL fill:#E67E22,stroke:#CA6F1E,stroke-width:2px,color:#fff
style Linguist fill:#3498DB,stroke:#2874A6,stroke-width:2px,color:#fff
style Utilities fill:#6D28D9,stroke:#4C1D95,stroke-width:2px,color:#fff
style IaC fill:#059669,stroke:#047857,stroke-width:2px,color:#fff
style Fuzzing fill:#B91C1C,stroke:#7F1D1D,stroke-width:2px,color:#fff
style DAST fill:#D35400,stroke:#A04000,stroke-width:2px,color:#fff
style PoC fill:#DC2626,stroke:#991B1B,stroke-width:2px,color:#fff
style IDE fill:none,stroke:#ddd,stroke-width:2px,stroke-dasharray: 5 5Design Principles:
Container isolation for security tool execution
Standardized output (SARIF/JSON) for LLM consumption
Dynamic tool registration - only healthy containers appear as tools
Persistent findings ledger with deep-merge semantics across research phases
Deterministic oracles for PoC validation (exit code, markers, OOB callbacks, XSS execution)
Agent Workflow
MCPwner is tool infrastructure. A single agent session - model-agnostic (Claude, Cursor, Kiro, Gemini, or any MCP-capable coding agent) - drives the whole engagement, running each phase itself (recon → API mapping → environment → code audit → vulnerability research → PoC → review) and recording progress in the findings ledger. There is no separate orchestration service or configuration file: MCPwner exposes tools, the agent supplies the workflow.
For a long, isolated sub-task - canonically, standing up and driving a live target environment in a container - the agent may optionally offload to a helper session if its host supports one, but the flow never depends on it.
Data Persistence
MCPwner persists workspace metadata, CodeQL databases, and findings across container restarts using file-based storage in the shared Docker volume (/workspaces/.metadata/). The findings ledger is always available (no container health gate) - it's how the agent tracks findings across phases and recovers state after a context reset.
Workspace Cleanup:
delete_files=True, delete_metadata=False- Free disk space, preserve historydelete_files=True, delete_metadata=True- Complete removaldelete_files=False, delete_metadata=True- Remove from list, keep files
License
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseBqualityAmaintenanceA Model Context Protocol compliant server that integrates Semgrep static analysis tool with AI assistants like Anthropic Claude, enabling advanced code analysis, security vulnerability detection, and code quality improvements through a conversational interface.Last updated710728MIT
- AlicenseAqualityDmaintenanceA Model Context Protocol server providing security vulnerability intelligence tools including CVE lookup, EPSS scoring, CVSS calculation, exploit detection, and Python package vulnerability checking.Last updated89MIT
- AlicenseBqualityFmaintenanceA security-focused Model Context Protocol server that enables controlled local tool execution through strict network firewalls, filesystem protections, and rate-limiting policies. It features a plugin-based architecture for progressive tool discovery and includes reference implementations for web searching and bug tracking.Last updated15MIT
- Alicense-qualityDmaintenanceModel Context Protocol server that connects AI agents with CrowdStrike Falcon platform for intelligent security analysis and automation.Last updatedMIT
Related MCP Connectors
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…
A Model Context Protocol server for Wix AI tools
MCP server for Pentest-Tools.com: run scans, manage findings and reports via your preffered LLM.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/Pigyon/MCPwner'
If you have feedback or need assistance with the MCP directory API, please join our Discord server