<div align="center">
# π‘οΈ VibeDefender
**Security Knowledge MCP Server for AI Coding Agents**
[](https://opensource.org/licenses/MIT)
[](https://nodejs.org/)
[](https://modelcontextprotocol.io/)
[](https://github.com/yunusj/VibeDefender-MCP/stargazers)
*Guide your AI agents through professional security assessments with methodology, documentation, and step-by-step workflows covering OWASP Top 10 and beyond.*
[Installation](#-installation) β’ [Features](#-features) β’ [Quick Start](#-quick-start) β’ [Configuration](#-configuration) β’ [Documentation](#-available-resources)
</div>
---
## π Why VibeDefender?
Your AI coding agent (Claude Code, Cursor, etc.) already knows how to run commands. **VibeDefender teaches it WHEN, WHY, and HOW to run security tools like a professional pentester.**
Instead of guessing which security tools to run, your AI gets:
- π **Step-by-step security methodology** - Professional assessment workflows
- π― **Plain English guidance** - No security expertise required
- π§ **Tool installation guides** - Automated setup assistance
- π **Always-current documentation** - Live tool documentation proxy
- β
**OWASP Top 10 coverage** - Industry-standard vulnerability detection
> **β If you find VibeDefender useful, please star this repo! It helps others discover professional security testing for AI agents.**
## π¦ Installation
### Direct from GitHub (Recommended)
```bash
npx github:yunusj/VibeDefender-MCP
```
This automatically clones, installs dependencies, builds, and runs the MCP server.
### Global Installation
```bash
npm install -g github:yunusj/VibeDefender-MCP
vibedefender-mcp
```
## β¨ Features
### π― What Makes VibeDefender Different
β
**Knowledge-First Approach** - Guides AI agents instead of executing tools directly
β
**5 Pre-Built Security Workflows** - Setup, full scan, pre-push check, live testing, URL scanning
β
**OWASP Top 10 Coverage** - Comprehensive vulnerability detection (injection, XSS, auth, etc.)
β
**Mandatory Runtime Analysis** - Not just static analysis - tests your running application
β
**Artifact Generation** - Saves all scan results as JSON + markdown reports
β
**Zero Security Knowledge Required** - Plain English explanations for non-security developers
β
**Tool Agnostic** - Works with any MCP-compatible AI editor (Claude Code, Cursor, etc.)
### π§ Integrated Security Tools
- **Trivy** - CVE and dependency vulnerability scanning
- **Semgrep** - Static code analysis with 2000+ security rules
- **Nuclei** - Runtime security testing with template-based scanning
- **Metasploit** - Optional integration for discovery and exploitation
### π€ Supported AI Editors
| Editor | Status | Notes |
|--------|--------|-------|
| Claude Code | β
Fully Supported | Native MCP support |
| Cursor | β
Fully Supported | MCP configuration required |
| Claude Desktop | β
Fully Supported | Config in `claude_desktop_config.json` |
| Google Antigravity | β
Fully Supported | Same config as Claude Desktop |
## π§ Philosophy
**The MCP GUIDES, not executes.**
Your AI agent (Claude Code, Cursor, etc.) already has the ability to run CLI commands. This MCP provides:
- π Step-by-step methodology for security assessments
- π§ Installation guides for required tools
- π¬ Plain English explanations for non-technical users
- π Documentation proxy for always-current tool docs
## β‘ Quick Start
1. **Install and configure** (one-time setup):
```json
{
"mcpServers": {
"vibedefender": {
"command": "npx",
"args": ["github:yunusj/VibeDefender-MCP"]
}
}
}
```
2. **Talk to your AI agent in plain English:**
| What You Say | What Happens |
|--------------|--------------|
| π¬ *"Help me set up security scanning"* | π§ AI installs Trivy, Semgrep, Nuclei with guided steps |
| π¬ *"Scan my code for security issues"* | π Full scan: dependencies + code + runtime + artifacts |
| π¬ *"Check my code before I push"* | β‘ Fast critical-only check (< 30 seconds) |
| π¬ *"Test my app on localhost"* | π Starts dev server + runs live security tests |
| π¬ *"Check this URL for vulnerabilities"* | π― Tests specific URL with authorization check |
3. **Get professional security reports** with actionable fixes:
```
β
All scans saved to: security-scan-20241220-143022/
βββ trivy-results.json (Dependency vulnerabilities)
βββ semgrep-results.json (Code security issues)
βββ nuclei-results.json (Runtime vulnerabilities)
βββ REPORT.md (Human-readable summary)
```
## βοΈ Configuration
### Claude Code
Add to your Claude Code MCP settings:
```json
{
"mcpServers": {
"vibedefender": {
"command": "npx",
"args": ["github:yunusj/VibeDefender-MCP"]
}
}
}
```
### Claude Desktop
Add to `~/Library/Application Support/Claude/claude_desktop_config.json`:
```json
{
"mcpServers": {
"vibedefender": {
"command": "npx",
"args": ["github:yunusj/VibeDefender-MCP"]
}
}
}
```
### Cursor
Add to Cursor's MCP settings (Settings β Features β MCP):
```json
{
"mcpServers": {
"vibedefender": {
"command": "npx",
"args": ["github:yunusj/VibeDefender-MCP"]
}
}
}
```
### Google Antigravity
Same configuration as Claude Desktop.
## π§ͺ Testing with MCP Inspector
Test the server before configuring in your editor:
```bash
npm install -g @modelcontextprotocol/inspector
npx @modelcontextprotocol/inspector npx github:yunusj/VibeDefender-MCP
```
Expected: Web UI shows "Connected", lists all `security://` resources and 5 workflow prompts.
## π― Available Workflows
| Workflow | Trigger Phrase | What It Does |
|----------|----------------|--------------|
| π§ `setup` | "Help me set up security scanning" | Checks installed tools, guides installation |
| π `scan` | "Scan my code for security issues" | **Full scan**: static + runtime + artifacts |
| β‘ `pre-push` | "Check my code before I push" | **Fast check**: critical issues only (< 30s) |
| π `scan-live` | "Test my app on localhost" | Starts dev server + runs live tests |
| π― `scan-url` | "Check this URL for vulnerabilities" | Tests specific URL (requires authorization) |
## π οΈ Required Tools
The MCP guides you through installing these (just say *"help me set up"*):
| Tool | Purpose | Install (macOS) |
|------|---------|-----------------|
| π Trivy | CVE/dependency scanning | `brew install aquasecurity/trivy/trivy` |
| π Semgrep | Static code analysis | `brew install semgrep` |
| π Nuclei | Runtime testing (**mandatory**) | `brew install nuclei` |
## ποΈ Metasploit Integration
Metasploit Framework is integrated for both **discovery** (reconnaissance) and **exploitation** phases.
### Setup
1. **Install external Metasploit MCP server:**
```bash
# Clone the Metasploit MCP repository
git clone https://github.com/your-org/MetasploitMCP ~/MetasploitMCP
```
2. **Set environment variable** (add to `~/.bashrc` or `~/.zshrc`):
```bash
export METASPLOIT_MCP_PATH="$HOME/MetasploitMCP/start_mcp.sh"
```
3. **Verify installation:**
```bash
npm run mcp:metasploit
# Should output: "Metasploit MCP Proxy running on stdio"
```
### Usage
**Discovery Phase (Automatic):**
- Runs safe auxiliary modules for service detection
- Port scanning and version detection
- Correlates findings with CVE database
- No exploitation attempts
**Exploitation Phase (Requires Approval):**
- Executes exploits against validated vulnerabilities
- Requires explicit human approval
- Full session management and post-exploitation
- Evidence gathering only (read-only)
### Safety
β οΈ **CRITICAL: Authorization Required**
- Only use on systems you **own** OR have **written permission** to test
- Unauthorized access to computer systems is **illegal**
- Discovery phase: Basic authorization sufficient
- Exploitation phase: Explicit approval required
### π Documentation
- See `security://methodology/exploitation` for complete exploitation workflow
- See `security://docs/metasploit` for detailed tool usage
- Includes safety guidelines, workflow examples, and troubleshooting
## π Available Resources
### π Methodology Guides
| Resource | Description |
|----------|-------------|
| `security://methodology/discovery` | π How to find attack surface |
| `security://methodology/scanning` | π What to scan, in what order |
| `security://methodology/validation` | β
How to validate on live targets |
| `security://methodology/reporting` | π How to structure reports |
### π Reference Documentation
| Resource | Description |
|----------|-------------|
| `security://reference/severity` | π¨ What CRITICAL/HIGH/MEDIUM/LOW mean |
| `security://reference/cwe-top-25` | π Common weakness types |
| `security://reference/owasp-top-10` | π‘οΈ OWASP vulnerability categories |
| `security://reference/browser-options` | π Browser automation choices |
### π§ Tool Documentation
| Resource | Description |
|----------|-------------|
| `security://docs/overview` | π Overview of all tools |
| `security://docs/trivy` | π Trivy quick start |
| `security://docs/semgrep` | π Semgrep quick start |
| `security://docs/nuclei` | π Nuclei quick start |
| `security://docs/playwright` | π Playwright MCP info |
| `security://docs/metasploit` | ποΈ Metasploit basics |
## π‘ Example Workflows
### First Time Setup
```
You: Help me set up security scanning
AI: I'll check what tools you have installed...
[Runs version checks]
You're missing Trivy and Semgrep. Let me help you install them.
Trivy checks your dependencies for known vulnerabilities.
Run this to install: brew install aquasecurity/trivy/trivy
...
```
### Before Pushing Code
```
You: Check my code before I push
AI: Running quick pre-push security check...
[Runs trivy + semgrep for CRITICAL issues only]
β
All clear! No critical security issues found. Safe to push.
For a comprehensive scan including runtime testing, use the 'scan' workflow.
```
### Full Security Scan
```
You: Scan my code for security issues
AI: I see this is a Node.js project using Express.
First, checking for known vulnerabilities in dependencies...
[Runs trivy]
Found 3 critical issues in your packages:
1. lodash < 4.17.21 - allows prototype pollution
Fix: npm update lodash
...
```
## π Project Structure
```
src/
βββ index.ts # Main MCP server entry point
βββ resources/
β βββ static.ts # Bundled methodology & references
β βββ dynamic.ts # Tool documentation with search guidance
βββ prompts/
βββ workflows.ts # 5 user-friendly workflow prompts
```
## π¨ Design Decisions
1. **π« No execution tools** - AI agents already have CLI access. We provide knowledge.
2. **π¬ Plain English** - Everything explained for non-technical users.
3. **π Step-by-step** - Prompts tell the AI exactly what to do at each step.
4. **π Documentation proxy** - Search patterns for always-current tool docs.
5. **π¦ Minimal files** - 4 files total, easy to understand and maintain.
6. **π GitHub-based distribution** - No npm publish, direct from source via npx.
## π Browser Automation Options
For live testing that needs a browser:
| Option | When to Use |
|--------|-------------|
| Playwright MCP | Claude Code, Cursor, most IDEs |
| Browser Agent | Google Antigravity IDE (built-in) |
| Puppeteer | If already in project |
## π§ Troubleshooting
### Build Errors
If you see TypeScript compilation errors when installing from GitHub:
```bash
npm cache clean --force
npx github:yunusj/VibeDefender-MCP
```
### MCP Server Not Connecting
1. Test with MCP Inspector first (see "Testing" section above)
2. Check Node.js version: `node --version` (requires >= 22.0.0)
3. Verify the server runs standalone:
```bash
npx github:yunusj/VibeDefender-MCP
# Should output: "Security Knowledge MCP server running on stdio"
```
4. Check editor configuration file syntax (valid JSON)
5. Restart your AI editor after configuration changes
### Permission Errors
If you get EACCES errors:
```bash
# On Unix-like systems, the shebang should make it executable
# If not, manually set permissions on global install:
chmod +x $(which vibedefender-mcp)
```
### Update to Latest Version
```bash
npm cache clean --force
npx github:yunusj/VibeDefender-MCP
# Or for global install
npm uninstall -g vibedefender-mcp
npm install -g github:yunusj/VibeDefender-MCP
```
## β οΈ Security Notice
- β
Only scan systems you are **authorized** to test
- π Live validation (scan-url, scan-live) requires **explicit authorization**
- π€ The AI will ask for confirmation before testing URLs
- π Always get **written permission** before security testing
- π‘οΈ Follow **responsible disclosure** practices
---
<div align="center">
## π€ Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
## π License
MIT License - see [LICENSE](LICENSE) for details
## β Show Your Support
If VibeDefender helps secure your code, please **star this repository**!
[](https://github.com/yunusj/VibeDefender-MCP/stargazers)
**Made with π‘οΈ by security professionals, for developers**
</div>