使用说明
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
服务器公开了两个工具:
-
scan_project:扫描目录以查找安全漏洞- 必需参数:
workspace-要扫描的目录路径
- 必需参数:
-
fix_vulnerability:将易受攻击的软件包更新为安全版本- 必需参数:
workspace-要修改的目录pkg_name-要更新的包的名称target_version-要更新的版本
- 必需参数:
与Cursor IDE一起使用
-
使用SSE传输启动服务器:
python server.py --transport sse --port 54321 -
在游标中配置:
- 打开设置
- 转到功能>MCP服务器
- 添加:
http://127.0.0.1:54321/sse
-
将以下内容添加到.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许可证
