Semgrep 服务器是一个用于在开发环境中集成 Semgrep 的模型上下文协议(MCP)服务器。它支持通过 MCP 协议执行静态代码分析和管理 Semgrep 规则,为开发者提供了便捷的代码检查和规则管理功能。
Semgrep 服务器可帮助你在开发环境中高效集成 Semgrep,实现静态代码分析和规则管理。以下是启动服务器的基本步骤。
你可以按照以下步骤完成 Semgrep 服务器的安装:
# 仓库克隆
git clone [repository-url]
cd semgrep-server
# 依赖安装
npm install
# 服务器构建
npm run build
服务器可以按以下方式启动:
# 生产模式
npm start
# 开发模式
npm run dev
服务器提供了一系列 MCP 工具,可满足不同场景下的代码分析和规则管理需求:
scan_directory
: 在指定目录中执行 Semgrep 扫描list_rules
: 列出可用的 Semgrep 规则analyze_results
: 分析扫描结果create_rule
: 创建新的 Semgrep 规则filter_results
: 根据不同条件过滤扫描结果export_results
: 将扫描结果导出为多种格式compare_results
: 比较两个扫描结果该项目的结构如下:
semgrep-server/
├── src/ # 源代码目录
├── build/ # 编译后的JavaScript文件
├── test.js # 测试文件
└── test-rule.yaml # 示例Semgrep规则
项目的正常运行依赖以下工具和库:
该项目使用 TypeScript 编写,并基于 MCP SDK 实现服务器端。
该项目根据 ISC 许可证发布。更多细节请参见LICENSE文件。