Skip to main content

Python security scanner with Model Context Protocol (MCP) integration for AI assistants

Project description

MCP Security Scanner ๐Ÿ›ก๏ธ

PyPI version Python 3.12+ License: MIT Version

A powerful Model Context Protocol (MCP) agent for automated Python code quality and security scanning. Integrates seamlessly with AI assistants like Claude Code while providing comprehensive security analysis and professional reporting.

๐Ÿค– For Claude Code Sessions: This project has automatic startup protocol. When starting a new session, Claude will automatically read project context, activate virtual environment, and present development options. See CLAUDE.md for details.

๐Ÿš€ Key Features

๐Ÿ” Comprehensive Code Analysis

  • 10+ integrated tools: Ruff, MyPy, Bandit, Safety, Pylint, Black, isort, pytest, Coverage
  • Custom security scanners: FastAPI security, AI/LLM security analysis
  • Real vulnerability detection: SQL injection, XSS, SSTI, prompt injection, and more

๐Ÿ›ก๏ธ Enterprise Security

  • OWASP compliance mapping: Top 10 2021, API Top 10, LLM Top 10, Mobile Top 10
  • Professional reporting: Executive summaries, technical reports, SARIF format
  • Risk scoring: Automated compliance scoring and risk assessment

๐Ÿค– AI Assistant Integration

  • MCP server: Native integration with Claude Code and other AI assistants
  • JSON-RPC protocol: Standardized communication via stdio
  • 8 specialized tools: From basic scanning to enterprise reporting

๐Ÿ”ง Developer Experience

  • CLI and programmatic APIs: Use standalone or integrate into workflows
  • Multiple output formats: JSON, Markdown, YAML, text, SARIF
  • Configuration presets: default, strict, security, fast
  • Auto-fixing: Safe automatic resolution of code quality issues

๐Ÿ“ฆ Installation

Quick Start (End Users)

# Install from PyPI
pip install mcp-for-code-quality-security

# Verify installation
mcpcqs --version

# Start scanning
mcpcqs scan ./your-project

Development Setup

# Clone and setup virtual environment
git clone https://github.com/lgtkgtv/mcp_agent--code_quality_security_tools.git
cd mcp_agent--code_quality_security_tools
uv venv .venv --python 3.12
source .venv/bin/activate
uv pip install -e ".[dev]"

๐Ÿ“š Documentation:

๐ŸŽฏ Usage

CLI Commands: Use either mcp-for-code-quality-security (full name) or mcpcqs (short alias)

CLI Usage

# Basic project scan
mcpcqs scan ./your-project

# Security-focused scan
mcpcqs scan ./your-project --config security

# Quick scan with JSON output
mcpcqs scan ./your-project --config fast --output json

# Auto-fix safe issues
mcpcqs scan ./your-project --fix --safe-only

# Generate enterprise security report
mcpcqs security ./your-project --output-dir ./reports --company "Acme Corp"

# Get project information
mcpcqs info ./your-project

MCP Server Integration

Claude Code Integration

Add to your Claude Code configuration:

{
  "mcpServers": {
    "mcp-for-code-quality-security": {
      "command": "mcpcqs",
      "args": ["serve"]
    }
  }
}

Start MCP Server

# Start MCP server
mcpcqs serve

# With custom configuration
mcpcqs serve --config strict

Programmatic Usage

from mcp_code_scanner import CodeScanner, ScanConfig

# Basic scanning
scanner = CodeScanner()
results = await scanner.scan_project("./your-project")

# Custom configuration
config = ScanConfig.get_preset("security")
results = await scanner.scan_project("./your-project", config)

# Security-focused scan
security_results = await scanner.security_scan("./your-project")

๐Ÿ“Š Professional Reporting

Executive Reports

Perfect for C-level stakeholders with business impact analysis:

  • Overall risk assessment and compliance scoring
  • ROI expectations and investment recommendations
  • Strategic security roadmap and timeline
  • Regulatory compliance status

Technical Reports

Detailed analysis for development teams:

  • Vulnerability analysis by tool and category
  • Code-level security findings with line numbers
  • OWASP mappings and remediation guidance
  • Priority-based action plans

SARIF Integration

Industry-standard format for security dashboards:

  • GitHub Security tab integration
  • Azure DevOps security reports
  • GitLab security dashboards
  • Third-party SIEM compatibility

๐Ÿ›ก๏ธ Security Capabilities

FastAPI Security Analysis

Vulnerability Type Detection OWASP Mapping Severity
SQL Injection โœ… A03:2021 Critical
NoSQL Injection โœ… A03:2021 Critical
SSTI โœ… A03:2021 High
Path Traversal โœ… A01:2021 High
Missing Authentication โœ… A07:2021 High
Insecure Dependencies โœ… A06:2021 Medium

AI/LLM Security Analysis

Vulnerability Type Detection OWASP LLM Severity
Prompt Injection โœ… LLM01 Critical
Model Extraction โœ… LLM06 High
Training Data Poisoning โœ… LLM03 High
Unsafe Plugin Execution โœ… LLM07 High
Model Denial of Service โœ… LLM04 Medium

๐Ÿ”„ CI/CD Integration

GitHub Actions Example

name: Security Scan
on: [push, pull_request]

jobs:
  security:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v4
    - name: MCP Security Scan
      run: |
        pip install mcp-for-code-quality-security
        mcp-scanner comprehensive-scan . --save-reports
    - name: Upload SARIF
      uses: github/codeql-action/upload-sarif@v3
      with:
        sarif_file: security_results.sarif

Pre-commit Hooks

repos:
- repo: https://github.com/your-org/mcp-for-code-quality-security
  rev: v2.0.0
  hooks:
  - id: mcp-security-scan
    args: [--config, security, --critical-only]

๐Ÿ—๏ธ Architecture

Built with proven architectural patterns from experimental projects:

  • V1 Pattern: Comprehensive error handling and tool-specific parsers
  • V2 Pattern: Simple YAML configuration per tool
  • V3 Pattern: Category-based plugin discovery with priority ordering

Key Components

mcp-for-code-quality-security/
โ”œโ”€โ”€ src/mcp_code_scanner/
โ”‚   โ”œโ”€โ”€ scanners/          # FastAPI & AI security scanners
โ”‚   โ”œโ”€โ”€ compliance/        # OWASP compliance mapping
โ”‚   โ”œโ”€โ”€ reports/           # Enterprise report generators
โ”‚   โ”œโ”€โ”€ parsers/           # Enhanced tool result processing
โ”‚   โ”œโ”€โ”€ plugins/           # Extensible plugin architecture
โ”‚   โ”œโ”€โ”€ mcp/              # MCP server integration
โ”‚   โ””โ”€โ”€ cli/              # Command-line interface
โ”œโ”€โ”€ configs/               # Tool and category configurations
โ”‚   โ”œโ”€โ”€ categories/        # Plugin category definitions
โ”‚   โ””โ”€โ”€ tools/            # Individual tool configurations
โ””โ”€โ”€ tests/                # Comprehensive test suite

โœ… Current Features vs ๐Ÿšง Planned Features

What Works Today (v0.3.1)

  • โœ… 10+ Security Tools - Integrated Ruff, MyPy, Bandit, Safety, Pylint, and more
  • โœ… MCP Server - Full integration with Claude Code and AI assistants
  • โœ… Multiple Report Formats - JSON, Markdown, YAML, SARIF
  • โœ… CLI Interface - Comprehensive command-line tools
  • โœ… Configuration Presets - default, strict, security, fast modes
  • โœ… Auto-fixing - Safe automatic issue resolution
  • โœ… FastAPI Security Scanner - Custom security analysis
  • โœ… AI/LLM Security Scanner - Prompt injection detection

On the Roadmap

  • ๐Ÿšง OWASP Compliance Dashboard - Track security scores (Q1 2025)
  • ๐Ÿšง Multi-Project Tracking - Monitor multiple projects (Q1 2025)
  • ๐Ÿšง Threat Model Profiles - Context-aware scanning (Q2 2025)
  • ๐Ÿšง Web Dashboard - Visual security status (Q2 2025)
  • ๐Ÿšง Educational Mode - Learn security as you code (Future)
  • ๐Ÿšง AI Transparency Layer - Explain security decisions (Future)

See ROADMAP.md for detailed development plans.

๐Ÿ“ˆ Performance & Scale

  • Scan Speed: 2-5 seconds for typical projects
  • Report Generation: 1-3 seconds per report type
  • File Support: Handles projects with 15,000+ lines
  • Tool Integration: 10+ security and quality tools
  • Memory Efficient: Minimal resource usage during scanning

๐Ÿค Contributing

We welcome contributions! See our Contributing Guide for details.

Plugin Development

Create custom security tools with our plugin framework:

from mcp_code_scanner.plugins.base_plugin import BasePlugin

class CustomSecurityPlugin(BasePlugin):
    async def scan(self, project_path: Path) -> PluginResult:
        # Your custom security analysis logic
        pass

Development Setup

git clone https://github.com/lgtkgtv/mcp_agent--code_quality_security_tools.git
cd mcp_agent--code_quality_security_tools
uv venv .venv --python 3.12
source .venv/bin/activate  # On Windows: .venv\Scripts\activate
uv pip install -e ".[dev]"

๐Ÿ“‹ Requirements

  • Python: 3.12 or higher
  • Dependencies: pydantic, pyyaml, click, rich, fastmcp
  • Optional: Docker for containerized scanning

๐Ÿ”— Related Projects

๐Ÿ“„ License

MIT License - see LICENSE file for details.

๐Ÿ™ Acknowledgments

  • OWASP for security frameworks and guidelines
  • Anthropic for the Model Context Protocol standard
  • FastAPI community for security best practices
  • AI/LLM Security researchers for vulnerability classifications

๐Ÿš€ Ready to secure your Python applications?

Start with pip install mcp-for-code-quality-security and integrate enterprise-grade security analysis into your workflow today!

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mcp_for_code_quality_security-0.3.2.tar.gz (2.3 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mcp_for_code_quality_security-0.3.2-py3-none-any.whl (108.9 kB view details)

Uploaded Python 3

File details

Details for the file mcp_for_code_quality_security-0.3.2.tar.gz.

File metadata

File hashes

Hashes for mcp_for_code_quality_security-0.3.2.tar.gz
Algorithm Hash digest
SHA256 878da81b9d7d01adf5b9c2a93f633be42abe607607385f337ce1ab1bded5acd7
MD5 19b5afd2ba57abf1ecc0a31b8e76ad1c
BLAKE2b-256 89b8b1c357eef5dd1dad12faa9a5f1c00e4f942e94d9acc4fd5f493817b8078a

See more details on using hashes here.

File details

Details for the file mcp_for_code_quality_security-0.3.2-py3-none-any.whl.

File metadata

File hashes

Hashes for mcp_for_code_quality_security-0.3.2-py3-none-any.whl
Algorithm Hash digest
SHA256 263262677e5b06819342e8688b5cfcfd000c4a285132301c2d73e5f39b826d23
MD5 c944a9b155472095c05cc6e597889667
BLAKE2b-256 6bc162f7277a07b8d10608c3e95b160f97100ac1a990970f1e09e94cfbafcf9d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page