存储库指南
概述
此存储库为OWASP依赖性跟踪提供了一个MCP(模型上下文协议)服务器。上面写着 openapi.yaml 用于您的依赖跟踪实例和自动生成工具(默认情况下为GET操作),以及一些用于常见项目查询的精选工具。
由Vinnter AB创建(https://www.vinnter.se).根据MIT许可证获得许可(见 LICENSE).
先决条件
- Node.js 18+
- 访问Dependency-Track实例和API密钥
- 本地
openapi.yaml对于您的实例(将其复制到repo根目录),或依赖于自动获取DEPTRACK_BASE_URL/openapi.yaml在启动时。
设置
- 安装依赖项(仅限本地):\
npm install
- 配置环境:
export DEPTRACK_API_KEY=""
export DEPTRACK_BASE_URL="https:///api" # required- 构建并运行:
npm run build
node dist/index.js对于TypeScript开发模式: npm run dev (如果与MCP stdio一起使用,stdout必须保持干净)。
MCP工具
精选工具(示例):
dependency-track-versiondependency-track-list-projectsdependency-track-get-projectdependency-track-get-project-by-name-versiondependency-track-list-childrendependency-track-list-children-by-classifierdependency-track-list-children-by-tag
自动生成的工具:
- 源自
openapi.yaml(所有GET操作)。工具名称已从中清除operationId.在中调整生成默认值src/openapiTools.ts如果你想过滤方法、标签或路径。
配置说明
- 秘密存在于环境变量中;永远不要提交密钥。
- 如果
openapi.yaml如果本地不存在,服务器将从中获取它DEPTRACK_BASE_URL/openapi.yaml启动时(git会忽略该文件)。 - 对于MCP stdio客户端,避免使用
npm run保持stdout干净(使用node dist/index.js).
快速检查
轻量化集成烟雾测试(要求 DEPTRACK_API_KEY 可选 CHECK_PROJECT_UUID):
npm run check贡献
- 保持工具名称与MCP正则表达式兼容(
^[a-zA-Z0-9_-]+$). - 更喜欢具有输入验证(Zod)和简洁输出的小型、专注的工具。
- 记录对生成过滤器或添加端点的任何更改。
