安全扫描服务

一个提供Trivy安全扫描功能的MCP服务器,通过标准化接口实现项目安全漏洞扫描和自动修复。

  • by norbinsh
  • Python
  • 本地部署
  • 10 星标
  • 更新于
在 GitHub 查看 norbinsh/cursor-mcp-trivy

使用说明

Trivy安全扫描器MCP服务器

一种模型上下文协议(MCP)服务器,通过标准化接口提供Trivy安全扫描功能。

⚠️ 备注:这是一个概念验证项目,旨在演示MCP、Cursor IDE和Trivy之间的集成能力。它仅用于实验和学习目的,尚未准备好投入生产。使用风险自负。

特性

  • 🔍 项目扫描:使用Trivy自动扫描项目目录以查找安全漏洞
  • 🛠️ 自动修复:自动将易受攻击的依赖项更新为安全版本
  • 📦 多包支持:处理多个包管理器(Python、Node.js、Ruby、Go)

演示

建筑

┌─────────────┐     ┌──────────────┐     ┌─────────────┐
│  Cursor IDE │ --> │   MCP Server │ --> │    Trivy    │
│  (Composer) │     │              │     │             │
└─────────────┘     └──────────────┘     └─────────────┘

先决条件

  • Python 3.12或更高版本
  • Trivy已安装在您的系统上:
    # macOS
    brew install trivy
    

安装

# Create and activate virtual environment
python -m venv .venv
source .venv/bin/activate

# Install dependencies
pip install -r requirements.txt

用法

使用SSE传输启动服务器:

# Using SSE transport (default)
python server.py --transport sse --port 54321

服务器公开了两个工具:

  1. scan_project:扫描目录以查找安全漏洞

    • 必需参数: workspace -要扫描的目录路径
  2. fix_vulnerability:将易受攻击的软件包更新为安全版本

    • 必需参数:
      • workspace -要修改的目录
      • pkg_name -要更新的包的名称
      • target_version -要更新的版本

与Cursor IDE一起使用

  1. 使用SSE传输启动服务器:

    python server.py --transport sse --port 54321
    
  2. 在游标中配置:

    • 打开设置
    • 转到功能>MCP服务器
    • 添加: http://127.0.0.1:54321/sse
  3. 将以下内容添加到.cursorules文件中,如果还没有,请创建它:

    After making changes in any of the package dependency/manifest files, scan the project for security vulnerabilities.
    Fixes should only be according to the desired version reported by the scanner.
    If the scanner reports a fix unrelated to our change, ignore it.
    After performing the fix, scan the project for security vulnerabilities again.
    

    此配置将:

    • 修改任何依赖文件时自动触发安全扫描
    • 一旦添加新的依赖关系,帮助识别漏洞
    • 确保您的项目在整个开发过程中保持安全

    如果您想手动使用该工具,可以通过composer界面使用prompt the agent使用该工具并显示以下提示:

    Please scan my project for security vulnerabilities
    

为什么选择MCP?

MCP(模型上下文协议)的存在是为了解决使用大型语言模型(LLM)时的一个基本问题:如何高效一致地将这些模型连接到外部数据源和工具。

了解更多信息,请访问 模型上下文协议.io.

贡献

欢迎投稿!请随时提交拉取请求。

许可证

MIT许可证

致谢