Skip to main content
Glama
README.mdβ€’13.8 kB
<div align="center"> # πŸ›‘οΈ VibeDefender **Security Knowledge MCP Server for AI Coding Agents** [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT) [![Node.js Version](https://img.shields.io/badge/node-%3E%3D22.0.0-brightgreen)](https://nodejs.org/) [![MCP Compatible](https://img.shields.io/badge/MCP-Compatible-blue)](https://modelcontextprotocol.io/) [![GitHub Stars](https://img.shields.io/github/stars/yunusj/VibeDefender-MCP?style=social)](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**! [![GitHub Stars](https://img.shields.io/github/stars/yunusj/VibeDefender-MCP?style=social)](https://github.com/yunusj/VibeDefender-MCP/stargazers) **Made with πŸ›‘οΈ by security professionals, for developers** </div>

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/yunusj/VibeDefender-MCP'

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