关于 agent-security-scanner-mcp
agent-security-scanner-mcp 是面向 AI 编码 Agent 的安全扫描器,可检查项目代码、MCP 服务、提示词、Agent 动作和 AI 推荐的依赖包。适合在 Agent 信任新代码或工具前进行审查,并以 A-F 等级给出结果。
主要功能
- 01项目安全扫描并给出 A-F 等级
- 02MCP 服务审计,检测工具描述投毒等风险
- 03提示词注入与越狱尝试检测
- 04包名幻觉检测,覆盖多个包管理器
- 05SBOM 生成与 CVE 扫描
- 06可通过 MCP 工具供 Agent 调用
适用场景
- 01在合并 Agent 编写的 PR 前扫描变更文件
- 02安装第三方 MCP 服务前进行审计
- 03检查 AI 生成的 import 是否引用了不存在的包
MCP 相关
该项目以 MCP 服务形式运行,安装后 Agent 可调用 scan_mcp_server、scan_packages 等工具完成安全检查。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
7收录的工具列表 · 更新于 2 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| file_path | string | 是 | 要扫描的文件路径 |
详细介绍
agent-security-scanner-mcp
用于扫描 AI 编码 Agent、MCP 服务、提示词和 AI 推荐软件包的安全扫描器。
在 Claude Code、Cursor、Windsurf、Cline、OpenCode 或其他 Agent 信任新代码、工具、提示词或依赖项之前,运行此工具。
复制粘贴即可开始
扫描任意代码仓库,获取 A-F 级 Agent 安全评级:
npx agent-security-scanner-mcp scan-project . --verbosity compact
将扫描器安装到 AI 编码客户端:
npx agent-security-scanner-mcp init claude-code
将 claude-code 替换为 cursor、claude-desktop、windsurf、cline、kilo-code、opencode 或 cody。
将 MCP 服务添加到 Agent 之前先进行审计:
npx agent-security-scanner-mcp scan-mcp ./path/to/mcp-server --verbosity compact
检查 AI 生成的导入语句,识别虚构的软件包:
npx agent-security-scanner-mcp scan-packages ./src/app.ts npm --verbosity compact
可检测的风险
| 风险 | Agent 为何需要它 | 命令 |
|---|---|---|
| 易受攻击的生成代码 | Agent 可能引入 SQL 注入、XSS、命令注入、不安全的加密方式和机密信息 | scan-project、scan-security、scan-diff |
| MCP 服务攻击 | MCP 工具可能篡改描述、伪造名称、窃取环境变量或执行命令 | scan-mcp |
| 提示词注入 | Agent 经常处理不可信的文档、工单、网页和工具输出 | scan-prompt |
| 不安全的 Agent 操作 | 在执行前捕获危险的 Shell、文件和网络操作 | scan-action |
| 虚构的软件包 | AI 经常捏造依赖项名称,攻击者之后可能会抢注这些名称 | check-package、scan-packages |
| SBOM 和 CVE | 生成 CycloneDX SBOM,并使用 OSV.dev 扫描依赖项 | sbom-generate、sbom-vulnerabilities |
| 语义审查 | 基于 LLM 的审查会结合项目意图,查找上下文相关的问题 | cr-agent |
截图
项目扫描
MCP 服务审计
软件包虚构检测
演示
运行安全的本地演示:创建特意设置为易受攻击的测试文件,扫描它们,然后清理这些文件。
# MCP audit demo: tool poisoning, spoofed tool name, command execution, secret exposure
npx agent-security-scanner-mcp demo --type mcp --no-prompt
# Package hallucination demo: real imports mixed with fake AI-generated package names
npx agent-security-scanner-mcp demo --type packages --no-prompt
预期的演示效果:
{
"grade": "F",
"findings_count": 8,
"findings": [
{
"rule": "mcp.description-injection",
"severity": "ERROR",
"message": "Tool description contains imperative language directed at the LLM."
},
{
"rule": "mcp.tool-name-spoofing",
"severity": "ERROR",
"message": "Tool name is close to a well-known MCP tool name."
}
]
}
在 Agent 中安装
npx agent-security-scanner-mcp init claude-code
| 客户端 | 设置命令 |
|---|---|
| Claude Code | npx agent-security-scanner-mcp init claude-code |
| Cursor | npx agent-security-scanner-mcp init cursor |
| Claude Desktop | npx agent-security-scanner-mcp init claude-desktop |
| Windsurf | npx agent-security-scanner-mcp init windsurf |
| Cline | npx agent-security-scanner-mcp init cline |
| Kilo Code | npx agent-security-scanner-mcp init kilo-code |
| OpenCode | npx agent-security-scanner-mcp init opencode |
| Cody | npx agent-security-scanner-mcp init cody |
| 交互式选择器 | npx agent-security-scanner-mcp init |
然后重启客户端。你的 Agent 就可以将扫描器作为 MCP 工具调用。
Agent 操作指南
当你希望 Agent 安全地完成任务时,将以下内容粘贴到 Agent 任务中:
Before trusting new code, dependencies, prompts, or MCP tools, run:
1. npx agent-security-scanner-mcp scan-project . --verbosity compact
2. npx agent-security-scanner-mcp scan-packages ./src/app.ts npm --verbosity compact when imports change
3. npx agent-security-scanner-mcp scan-mcp ./path/to/mcp-server --verbosity compact before adding MCP servers
4. npx agent-security-scanner-mcp scan-diff --base main --target HEAD before opening a PR
Fix high-confidence security findings before continuing.
常见工作流
信任 Agent 编写的 PR 之前
npx agent-security-scanner-mcp scan-diff --base main --target HEAD --verbosity compact
npx agent-security-scanner-mcp scan-packages ./src/app.ts npm --verbosity compact
安装 MCP 服务之前
npx agent-security-scanner-mcp scan-mcp ./path/to/mcp-server --verbosity compact
添加 AI 推荐的依赖项之前
npx agent-security-scanner-mcp check-package express npm
npx agent-security-scanner-mcp scan-packages ./package.json npm --verbosity compact
添加 CI
npx agent-security-scanner-mcp init-ci github
根据实际扫描结果生成分享文案
npx agent-security-scanner-mcp scan-project . --verbosity compact > scan-result.json
npx agent-security-scanner-mcp share-kit --scan-result scan-result.json --output share-kit.md
CLI 参考
| 命令 | 用途 |
|---|---|
scan-project <dir> | 全面扫描项目并给出 A-F 评级 |
scan-security <file> | 扫描单个文件的安全性 |
scan-diff --base main --target HEAD | 仅扫描已更改的文件 |
scan-mcp <path> | 安装前审计 MCP 服务 |
scan-prompt "<text>" | 检测提示词注入和越狱尝试 |
scan-action <type> <value> | 执行 shell/文件/网络操作前进行安全检查 |
check-package <name> <ecosystem> | 验证一个包是否存在 |
scan-packages <file> <ecosystem> | 验证文件中的导入项/依赖项 |
doctor | 检查本地环境的运行状况 |
quickstart --client cursor | 生成针对当前仓库的后续步骤 |
share-kit | 生成可公开分享的安全文案 |
export-vanta | 将扫描证据导出到 ProofLayer Vanta 集成 |
所有扫描器输出都支持便于理解上下文的详细程度:
--verbosity minimal # counts only, best for CI
--verbosity compact # default, best for agents and humans
--verbosity full # audit/debug detail
面向 Agent 的 MCP 工具
安装为 MCP 服务后,Agent 可使用以下工具类别:
| 工具类别 | 用途 |
|---|---|
scan_security、fix_security、scan_git_diff、scan_project | 代码和仓库安全 |
scan_mcp_server、scan_skill | MCP 和 AI 技能安全 |
scan_agent_prompt、scan_agent_action | 提示词/操作安全 |
check_package、scan_packages | 检测虚构的包 |
sbom_generate、sbom_scan_vulnerabilities、sbom_diff、sbom_export_report | 供应链和发布证据 |
get_compliance_controls、evaluate_compliance | SOC2/GDPR/AIUC-1 技术证据 |
scanner_health | 运行时诊断 |
开发者为何安装它
- 一条
npx命令即可为 AI 编写的代码提供 A-F 安全评级。 - MCP 专项检查可发现常规 SAST 工具会遗漏的风险。
- 包虚构检测可检查 npm、PyPI、RubyGems、crates.io、pub.dev、CPAN 和 raku.land 中的 430 多万个包名。
- 默认输出简洁,编码 Agent 无需消耗上下文窗口即可读取。
- 可作为 CLI、MCP 服务、GitHub Action 工作流、Apify Actor 和语义审查 Agent 使用。
- 采用 MIT 许可证。
语义代码审查
npm 包中捆绑了 cr-agent,用于由大模型驱动的语义审查。它会读取项目意图,然后查找违反该意图的代码。
npx cr-agent analyze ./path/to/project -p claude-cli --verbose
npx cr-agent analyze ./path/to/project -p openai --format sarif
当基于规则的扫描不够用,而你想知道“这段代码是否符合项目预期用途?”时,可以使用它。
SBOM 和合规证据
npx agent-security-scanner-mcp sbom-generate .
npx agent-security-scanner-mcp sbom-vulnerabilities .
npx agent-security-scanner-mcp sbom-check-hallucinations .
npx agent-security-scanner-mcp evaluate-compliance . --framework soc2-technical
适用于发布前、收集合规证据(SOC 2)、供应商审查以及检查 AI 生成的依赖项变更。
Apify Actor
如果你需要托管 API 或定期扫描,可将扫描器作为 Apify Actor 运行:
{
"actorId": "folkloric_morale/agent-security-scanner",
"input": {
"target": "repository",
"repoUrl": "https://github.com/your-org/your-agent.git",
"repositoryScanMode": "quick",
"includeTestFiles": false,
"maxRepositoryFiles": 150,
"severityThreshold": "medium"
}
}
最新版本
v4.5.8 新增了限定于 diff 的 cr-agent 语义审查,修复了嵌套仓库的 diff 查找问题,并将语义发现结果限定于已更改的代码块,使 PR 审查聚焦于实际变更的代码。
详细的版本历史记录见 CHANGELOG.md。README 中较早嵌入的更新日志已归档至 archive/README_CHANGELOG_ARCHIVE.md。
常见问题
它只适用于 MCP 服务吗?
不适用。它可以扫描常规仓库、diff、提示词、操作、包、SBOM、MCP 服务和 AI 技能。
它会把我的源代码发送到其他地方吗?
基于规则的 CLI 和 MCP 扫描都在本地进行。cr-agent 使用你选择的提供商进行语义审查。
它能替代 npm audit 吗?
不能。它通过检测 AI 特有风险来补充 npm audit,包括虚构的包、提示词注入、MCP 工具投毒、不安全的 Agent 操作和存在漏洞的生成代码。
我应该先运行什么?
运行 npx agent-security-scanner-mcp scan-project . --verbosity compact。
链接
许可证
MIT
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。