mcpField
A
ai-inventory

ai-inventory

github.com/snyk安全68121 次安装1 周前更新
代码仓库

关于 ai-inventory

ai-inventory 是用于 Python 项目的 AI 组件清单技能,可生成并分析 AIBOM,帮助安全、合规和治理审查。它分类模型、数据集、框架、工具和服务,并提供许可证、隐私与模型风险评估。

主要功能

  1. 01生成 CycloneDX v1.6 格式 AIBOM
  2. 02识别模型、数据集、框架、工具和服务
  3. 03评估许可证、数据隐私与模型安全风险
  4. 04支持保存 JSON 清单
  5. 05生成合规文档

适用场景

  1. 01部署前核查 AI 组件与许可证
  2. 02为 EU AI Act 合规整理材料
  3. 03审查第三方 AI 组件的数据处理风险

MCP 相关

技能通过 `mcp_snyk_snyk_aibom` 工具生成 AIBOM。README 未说明其作为 MCP 服务向客户端提供的接口。

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/snyk/studio-recipes --skill ai-inventory

安装后在 Claude Code 中输入/ai-inventory确认已加载。

详细介绍

AI 组件清单

为 Python 项目生成和分析 AI 物料清单(AIBOM),跟踪 AI 模型、数据集和 ML 框架,以满足安全、合规和治理需求。

核心原则:了解软件中包含哪些 AI 组件。

注意:这是一项实验性功能。目前仅支持 Python 项目。


快速入门

# Step 1: Generate AIBOM for the project
mcp_snyk_snyk_aibom(path="/absolute/path/to/project")

# Step 2: (Optional) Save AIBOM to file for documentation
mcp_snyk_snyk_aibom(
  path="/absolute/path/to/project",
  json_file_output="/absolute/path/to/output/aibom.json"
)

# Step 3: Verify the returned JSON contains component entries before proceeding
# Step 4: Summarize findings and flag license/risk issues

前提条件

  • 包含 requirements.txt、setup.py 或 pyproject.toml 的 Python 项目
  • 互联网连接(分析所必需)
  • 已启用 Snyk 实验性功能

第 1 阶段:项目验证

目标:确保项目适合生成 AI BOM。

步骤 1.1:验证 Python 项目

检查 Python 项目标识:requirements.txt、setup.py、pyproject.toml、Pipfile 或 .py 文件。

错误 — 不是 Python 项目:如果未找到 Python 标识,请停止并报告:

  • 验证路径中是否包含 Python 文件
  • 检查是否存在 requirements.txt 或 pyproject.toml
  • 此功能仅支持 Python 项目
步骤 1.2:检查 AI/ML 标识

扫描依赖文件,查找已知的 AI/ML 包——常见示例包括 torch、tensorflow、keras、transformers、datasets、scikit-learn、jax、openai、langchain、mlflow 和 wandb。此列表仅供参考;遇到其他 AI/ML 包时,请自行判断。

步骤 1.3:报告不适用的情况

如果未检测到 AI 组件:

## AI Inventory Result
**Project**: /path/to/project
**Status**: No AI components detected
This project does not appear to use AI/ML frameworks. AI BOM generation is not applicable.

第 2 阶段:生成 AIBOM

目标:创建全面的 AI 物料清单。

步骤 2.1:运行 AIBOM 生成

调用 mcp_snyk_snyk_aibom 工具,并提供 Python 项目的绝对路径:

mcp_snyk_snyk_aibom(path="/absolute/path/to/project")

错误 — 网络错误:如果工具无法连接,请报告:

  • 检查互联网连接和防火墙(必须允许 HTTPS)
  • 几分钟后重试

错误 — 未启用实验性功能:如果访问被拒绝,请报告:

  • 联系 Snyk 支持以申请实验性功能访问权限
  • 检查组织设置,并确认 CLI 版本支持 AIBOM
步骤 2.2:验证 AIBOM 输出

继续之前,请验证返回的 JSON 是否有效且至少包含一个组件条目。如果响应为空或格式错误,请报告错误,不要继续第 3 阶段。

步骤 2.3:保存输出(可选)

如需将 AIBOM 保存为文件,用于文档编写或下游工具:

mcp_snyk_snyk_aibom(
  path="/absolute/path/to/project",
  json_file_output="/absolute/path/to/output/aibom.json"
)

第 3 阶段:分析组件

目标:了解并分类经验证的 AIBOM 输出中的 AI 组件。

步骤 3.1:组件类别

AIBOM 会识别五种组件类型:模型、数据集、框架、工具和服务。

步骤 3.2:生成摘要报告

根据实际扫描结果填充以下结构并展示发现:

## AI Component Inventory
**Project**: <project name>
**Scan Date**: <date>
**Format**: CycloneDX v1.6

### Component Summary
| Category  | Count |
|-----------|-------|
| AI Models | N     |
| Datasets  | N     |
| Frameworks| N     |
| Tools     | N     |
| **Total** | N     |

### AI Models Detected
| Model | Source | License | Risk |
|-------|--------|---------|------|
| <from scan results> | ... | ... | ... |

### Datasets Referenced
| Dataset | Source | License | PII Risk |
|---------|--------|---------|----------|
| <from scan results> | ... | ... | ... |

### Frameworks & Tools
| Component | Version | License |
|-----------|---------|---------|
| <from scan results> | ... | ... |

第 4 阶段:风险评估

目标:识别 AI 组件中的潜在风险。

步骤 4.1:许可证合规性

按风险级别标记组件:低(MIT、Apache)、中(专有 API——审查服务条款)、高(许可证未知或不明确,或仅限研究用途、可能禁止商业使用的条款)。

步骤 4.2:数据隐私问题

标记数据来源或 PII 处理方式不明确的数据集或模型。建议:记录数据来源、审查 PII 处理流程,并验证数据保留政策。

步骤 4.3:模型安全

评估特定于模型的风险:提示注入(基于 LLM 的模型——通过输入验证进行缓解)、模型提取(自定义/微调模型——实施访问控制)、对抗性输入(视觉模型——进行输入验证)以及偏见/公平性(考虑进行偏见测试)。


第 5 阶段:文档

目标:创建符合合规要求的文档。

步骤 5.1:生成合规报告
## AI Compliance Report
**Project**: <project name>
**Generated**: <date>
**Standard**: EU AI Act / Internal Governance

### AI System Classification
- **Risk Level**: [High/Limited/Minimal]
- **Category**: [Classification based on use case]

### Component Inventory
[Summary from Phase 3]

### License Compliance
- All components licensed: Yes/No
- Commercial use permitted: Yes/No
- Attribution required: [list components]

### Data Governance
- Data sources documented: Yes/No
- PII handling reviewed: Yes/No
- Consent verified: Yes/No

### Model Governance
- Model cards available: Yes/No
- Bias testing completed: Yes/No
- Performance benchmarks: Yes/No

### Approval Status
- [ ] Technical review
- [ ] Legal review
- [ ] Ethics review
- [ ] Deployment approved

用例

  • 部署前审计:生成 AIBOM → 审查许可证 → 检查数据/PII 处理情况 → 留存文档以备审计
  • 法规合规(EU AI Act):生成 AIBOM → 对 AI 系统风险等级进行分类 → 记录功能/局限性 → 创建合规检查清单
  • 第三方 AI 审查:生成 AIBOM → 分析许可证 → 评估数据处理情况 → 记录风险和缓解措施

限制

  1. 仅支持 Python:目前仅支持 Python 项目
  2. 实验性功能:功能可能会发生变化或存在限制
  3. 需要网络连接:分析需要互联网连接
  4. CycloneDX 输出:仅生成 CycloneDX v1.6 格式
  5. 仅反映特定时点的状态:反映当前状态,更新后需重新生成

评论

支持 Markdown