
agent-bom
io.github.msaad00由 GitHub 账号 msaad00 发布v0.109.0更新于 Nov 1, 2026
Scan AI/MCP dependencies, descriptor injection, risky tool inputs and authentication configuration.
概览
本地 MCP 服务器,向助手开放 agent-bom 安全扫描能力:AI/MCP 供应链 BOM、依赖漏洞通告、代理暴露面与 CVE 影响查询。
- 可以做什么
- 按漏洞编号查询已保存扫描中的受影响资产,含修复目标与影响范围
- 生成并查看 SBOM、AI-BOM 与 Agent-BOM 清单,串联代理、MCP 服务器、工具、凭据与软件包
- 关联代理、MCP 服务器与软件包,追踪每个代理可触及的资源与相关发现
- 对比扫描前后结果,查看暴露证据与证据缺口
- 通过命令行或 CI 运行依赖检查与扫描,导出 SARIF、CycloneDX、SPDX、JSON 与 HTML
- 适用场景
- 适合应用安全与平台工程师,让编码助手直接回答项目是否可发布、新 CVE 是否影响已扫描资产、代理的 MCP 配置能触及什么等问题,无需人工阅读报告。
- 运行要求
- 以 Python 包形式通过 uvx 在本机运行(需安装 uv);本地扫描无需账号。可选设置 NVD_API_KEY 环境变量以提高漏洞信息补充的速率上限。漏洞数据来自 OSV、NVD、KEV 与 EPSS,更新时需要网络访问。
安装
在 SourceWeft 中
- 打开 控制台中的 agent-bom,将其添加到工作区。
- 为需要使用其工具的对话启用该服务。
Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。
其他 MCP 客户端
参照 仓库 中的启动说明。
README
[Build] [PyPI] [Python 3.11 through 3.14]
[Apache-2.0 license] [OpenSSF Scorecard]
AI supply-chain BOM: every agent, MCP server and AI package, and what each one can reach.
For AppSec and platform engineers. Self-host free; local scans need no account.
Quick start · All integrations · Sample graph · Self-host · Product tour · Docs
Quick start
From the repository you want to inspect, with uv installed:
Measured on real repositories: 299 of 299 OSV advisories matched across seven real repositories, no false positives.
Open agent-bom-report.html to review inventory, findings, coverage and fix
guidance. This command scans the selected project, including its recorded MCP
configuration; --no-discover excludes workstation-wide discovery.
No MCP configuration in the project? Package findings still apply. Agent/tool relationships require discovered configuration or an explicit inventory; their absence is a coverage limit. Review gaps beside the verdict: incomplete evidence is not a clean assessment. What this scan does and does not establish.
No project handy? Run uvx agent-bom scan --demo --offline for a bundled sample.
Exit 1 is expected: the sample trips the security gate. A non-zero exit
can mean a security gate or incomplete assessment; inspect the report and coverage.
See the exit codes.
Verify fixes, export reports, and add a CI gate
Apply a reviewed fix, update the lockfile, then rerun uvx agent-bom scan .
against the same repository to verify the finding changed.
Save a report with uvx agent-bom scan . -f sarif -o findings.sarif, then
upload it and gate CI.
Run uvx agent-bom doctor if setup fails. See the first-run guide
for pip installation, or ask your coding agent with the checkup skill.
In GitHub Actions, the same scan uploads SARIF to code scanning and fails on high or critical findings, the same default gate as the CLI:
[Recorded agent-bom CLI showing sample findings and remediation guidance; no fix executed]
The recording uses labeled sample data and bundled advisories. Credential references are names, not secret values. Recorded relationships do not prove exploitation or successful data access.
What it covers
Generate a BOM from a project, or inspect an agent inventory with sample data:
Open the artifact to inspect the collected components and relationships. Model metadata appears when the selected source supplies it; a BOM is an inventory, not proof of safe execution or complete collection.
All supported sources and evidence destinations
Discovery and scanning read from these sources; the last row lists evidence destinations.
Product names and logos are trademarks of their owners, used only to identify supported evidence sources. Their use does not imply endorsement or partnership.
Investigate context and exposure
Which agent uses the vulnerable component? What could it reach? What evidence supports that path? Correlate retained scans by exact, tenant-scoped identities; trace the recorded blast radius from each agent through its MCP servers to packages, findings, credentials and data stores. Inspect each relationship's source and evidence kind, then rescan the same scope to check what changed. Agent kind, platform association, execution host and model links are separate facts; an environment badge does not establish where an agent runs or which model endpoint it calls.
Fictional sample estate. Dashed use, credential and access links are configured or modeled, not observed at runtime; path analysis covers the collected snapshot only. The AWS badge describes environment membership. These generic sample agents have no recorded execution host or model endpoint. Open the full-size environment graph. Read agent, hosting and model context.
From agent to verified fix: select Document Intake Agent → inspect CVE-2023-4863 (high, KEV-listed) and the evidence on each arrow → take the proposed remediation → rescan the changed pin and compare snapshots. The comparison verifies the changed input, not a running deployment.
Inspect the evidence: one package, three parsed inputs
Supporting evidence: one package, three parsed inputs. A repository pin, an
image SBOM and a modeled Kubernetes workload resolve to one [email protected]. The
image inventory and the deployment occurrence stay separate nodes; the advisory
receipt is open.
Real parsers, modeled infrastructure; a graph path does not prove exploitation. Open the full-size relationship graph.
Explore context, correlation and reachability · Run the reference lab · Reproduce these screenshots
Explain a finding to your team: create an impact brief with affected assets, source receipts, evidence gaps and the next action to review.
Am I affected by a new CVE? Match it against stored scans, including CVEs only NVD has published, and get affected assets with their patch target, possibly affected distro packages to verify, and the blast radius (walkthrough):
From an MCP client, the read-only affected_assets tool (graph and full
profiles) takes the same advisory_id. In CI, run uvx agent-bom db update
before the GitHub Action step above (its auto-update-db default only
refreshes feeds older than seven days); the rescan then fails on the new
advisory at the configured severity.
Repository and cloud investigations
Trace source imports, deployment configuration and CI to a published container and its vulnerable packages:
Follow a public API gateway into a vulnerable workload, its role and a PII bucket:
Open the sample graph
Try the demo in your browser: a read-only copy of the UI on labelled sample data, with no install and no backend. Scans, settings and sign-in are turned off there. To open the same graph locally:
Run the server command it prints, then open its graph URL. Offline quickstart skips package-CVE lookup, so zero CVEs is not a clean verdict; use the bundled demo for advisory-backed findings or populate the advisory database.
Self-host in your environment
Your infrastructure, identity, database, and audit boundary. Start a local pilot from a published release checkout:
Open http://localhost:3000, then Connections or New Scan. The pilot binds to loopback and retains state in a Docker volume. For cloud accounts, add a scoped read-only connection, verify access, then start a scan. Use the authenticated deployment.
- Scan with CLI or CI; export findings, SBOMs and reports.
- Centralize inventory, graph evidence, remediation and compliance in your own control plane.
- Enforce policy on selected live MCP tool calls through the proxy or gateway.
Deployment types and operating modes
Choose where to run the product, then enable the collection or runtime modes needed for your environment.
Operating modes can be combined:
- Scan: collect inventory and findings on demand or in CI; retain reports and graph evidence.
- Fleet inventory: endpoints or collectors sync inventory to the control plane. Start with the fleet sync command, then review endpoint inventory and last-seen evidence.
- MCP server:
agent-bom mcp serverexposes security tools to an MCP client. Configure the client and tool profile, then query scan evidence. - Runtime proxy: wrap selected local stdio MCP servers to inspect tool calls. Follow the proxy setup and verify policy decisions in the audit trail.
- Runtime gateway: relay selected remote MCP traffic through a shared service. Follow the gateway setup and validate client authentication, policy and upstream connectivity.
The dashboard's Sources indicator describes recorded evidence: local scans, fleet inventory, cluster scans, CI/CD, imported evidence, or mixed sources. It does not select a deployment type or enable runtime enforcement. Demo data identifies labelled sample inventory. Preview and community deployment paths have separate support boundaries.
In the console, Assets are inventoried resources, Findings are detections on those resources, and Issues group related findings for investigation or remediation. Affected assets counts distinct resources only when that count is available. One finding may belong to several security areas, so area counts must not be summed. Repeated observations across scans are shown separately.
Docker pilot guide · Compose with PostgreSQL · Choose a deployment · Enterprise controls · Connect cloud accounts
Work with your existing tools
Use CLI or GitHub Action, REST API, or MCP; export SARIF, CycloneDX, SPDX, JSON and HTML. Cloud connectors and fleet sync collect inventory; proxy and gateway deployments add runtime evidence.
For other MCP clients, run agent-bom mcp server.
Start with eight focused tools in the default profile.
Choose an MCP profile for graph, cloud, runtime or audit work.
Try three investigations: affected agents, exposure receipts and a before/after scan comparison.
Import existing scanner reports without replacing their source evidence.
Check a dependency before installing it with
uvx agent-bom check [email protected] --ecosystem pypi. Add
pre-commit and CI setup for repeated checks.
Proxy, gateway and fleet · Integration capability matrix · MCP client setup · Smithery setup and manifest
Integrations
Claude Code and Codex plugins: ask your coding agent instead of reading a report
Ask your coding agent instead of reading a report. In Claude Code:
In Codex, run codex plugin marketplace add koda-ai-studio/agent-bom, then
install agent-bom-local from the Plugins Directory. Both plugins run the
pinned agent-bom release locally and send nothing to an agent-bom service.
Add /plugin install agent-bom-guard@agent-bom to block malicious and
typosquatted package installs before Claude runs them.
All skills and their permissions ·
Guard details
Trust and evidence
Discovery uses read-only access by default. Explicit disk side-scans create temporary cloud resources. Missing evidence stays unavailable or partial; control mappings are not audit certification.
Runtime evidence and MITRE mapping boundaries
Persisted runtime, proxy and gateway activity retains source receipts and bounded time windows in the graph. Exact inventory references can bind records; unresolved identities and collection gaps remain explicit. Recorded activity does not prove execution or grant access. See the runtime evidence boundaries.
MITRE technique associations provide investigation context, not proof of an attack. ATLAS mapping receipts retain the weakness association and source catalog hashes; modeled graph paths do not establish observed execution or effective access.
Measured matcher proof · Product boundaries · Permissions · Threat model · Release verification · Graph data model
Contributing and support
Start with the first PR guide
or a good first issue.
Ask in GitHub Discussions (or Discord), share feedback,
or follow the maintainer path (review owners).
Contributing · Capabilities and roadmap · Support · Report an inaccurate finding · Apache-2.0
Source version: v0.112.1 · Latest release: v0.112.1 · Changelog
来源:README.md,提交 e61d112
工具
0版本历史
10- v0.109.0最新Oct 18, 2026
- v0.108.4Oct 10, 2026
- v0.108.3Oct 9, 2026
- v0.108.2Oct 8, 2026
- v0.108.1Oct 6, 2026
- v0.108.0Oct 4, 2026
- v0.107.2Oct 2, 2026
- v0.107.0Oct 1, 2026
- v0.106.1Sep 27, 2026
- v0.82.3Sep 16, 2026
评分
已满足适用检查项的 50%
该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。
- 近 30 天内可连通25 分
请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。
- 已声明认证方式10 分
请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。
- 已列出工具15 分
请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。
- 描述必需15 分
- 图标10 分
- 文档15 分
- 许可证10 分