agent-scan

扫一遍 Agent 和 MCP 配置,提前揪出权限与注入风险

开源 🏷️完全免费 🔧 仅开源项目,无在线服务,需自行部署 评测安全 🍴 复刻 295 🐛 待处理 28 👀 关注 12
GitHub ↗
GitHub 星标 ★ 3197
维护状态 活跃
是否开源 开源
定价模式 🏷️完全免费 开源免费工具,无在线服务

项目预览

agent-scan 项目界面预览图
图片来源:GitHub 官方仓库名片

项目数据

分类评测安全
开发团队snyk
定价模式🏷️完全免费
价格说明开源免费工具,无在线服务
访问状态🔧 仅开源项目,无在线服务,需自行部署
是否开源是
开源协议Apache-2.0
主要语言Python
技术栈/模型agent,ai,mcp,modelcontextprotocol,security
GitHub 星标★ 3197
上线时间2025-04-07 00:00:00
代码更新2026-11-02
仓库体积5.6 MB
本站数据更新2026-11-03
维护状态活跃
收录时间2026-09-12
浏览次数2

项目介绍

agent-scan 是一款面向 AI Agent 生态的安全扫描器,主要针对 AI 智能体、MCP(Model Context Protocol)服务器以及 Agent 技能(skills)进行安全检测。随着 Agent 应用大量接入外部工具、文件和网络资源,提示注入、恶意工具描述、越权访问、敏感数据泄露等风险显著上升,而传统 SAST/DAST 工具并不理解 Agent 与 MCP 的交互语义。agent-scan 通过解析 Agent 配置、MCP 服务端声明与技能定义,识别危险权限、可疑工具行为、不安全的数据流和配置缺陷,并给出可读的扫描报告。它适合在开发、CI 和上线前阶段作为一道自动化安全闸门,帮助团队在引入第三方 MCP 或技能时快速评估风险,降低 Agent 被滥用或数据外泄的概率。

Star 增长趋势

本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整

数据来源:GitHub API 逐日快照 · 收录于 2026-09-12 · 当前星标 ★ 3197

使用教程

难度:入门 约 10 分钟 部署方式:命令行工具 7 步

环境要求

  • 已安装 uv(Python 包运行器,见 https://docs.astral.sh/uv/getting-started/installation/)
  • 已注册 Snyk 账号,并从 https://app.snyk.io/account 获取 API Token
  • 已设置 SNYK_TOKEN 环境变量
  • 本地存在待扫描的 MCP 配置文件(如 ~/.vscode/mcp.json)

安装与启动步骤

  1. 1获取 Snyk Token

    注册 Snyk 账号后进入账号页面,在 API Token → KEY 处点击显示并复制 Token。

  2. 2设置环境变量

    运行任何扫描前必须先设置 SNYK_TOKEN,否则扫描无法进行。

    export SNYK_TOKEN=your-api-token-here
  3. 3安装 uv

    uvx 方式依赖 uv,请按其官方文档在系统上完成 uv 安装。

  4. 4用 uvx 扫描 MCP

    通过 uvx 运行 snyk-agent-scan,参数为要扫描的 MCP 配置文件路径。

    uvx snyk-agent-scan@latest ~/.vscode/mcp.json
  5. 5锁定版本运行

    如需可复现结果,可改用固定版本 0.5.17 代替 latest。

    uvx snyk-agent-scan@0.5.17 ~/.vscode/mcp.json
  6. 6使用独立二进制

    也可从 GitHub Releases 下载对应系统的二进制运行,发布页含 SBOM 与校验和。

  7. 7源码方式运行

    在仓库源码目录下安装为可编辑包,再以模块方式运行 CLI。

    uv run pip install -e .
    uv run -m src.agent_scan.cli

关键配置

配置项必填说明示例
SNYK_TOKEN是运行扫描前必须设置的环境变量,填写 Snyk 账号中获取的 API Token。your-api-token-here

如何确认成功

扫描命令正常执行并输出扫描报告,且未出现缺少或无效 SNYK_TOKEN 的报错。

常见问题

Q:可以用 npm 安装吗?

A:不行。官方明确不为 Agent Scan 发布 npm 包,只能通过 uvx 或独立二进制安装运行。

Q:使用前需要什么账号?

A:需要先在 snyk.io 注册账号,并在账号页面 API Token → KEY 处获取 Token,然后设置 SNYK_TOKEN。

Q:CLI 输出能用于生产自动化吗?

A:不建议。CLI 原始输出为实验性,issue code、字段名、严重级别、风险名称和响应结构都可能随版本变化。

Q:企业用户在 Evo 平台看到的结果为何不同?

A:企业部署由稳定的集成、发现与风险评估能力支撑,CLI 输出可能不反映实际发送并在 Evo 平台展示的内容。

注意事项

  • CLI 输出为实验性(0.5.x 与 0.6+ 均如此),不要依赖具体字段或 issue code 构建生产流程。
  • 不发布 npm 包,请使用 uvx 或 GitHub Releases 的独立二进制。
  • 独立二进制下载页同时提供 SBOM、校验和及签名校验文件,可据其验证下载内容。

核心亮点

  • 专门针对 Agent/MCP/skills 的安全语义检测,填补传统扫描器盲区
  • Python 实现,便于集成到现有开发与 CI 流程中
  • 能识别工具权限、配置缺陷等可落地风险,输出可读报告

不足之处

  • 项目较新,规则库和误报/漏报表现仍需更多真实场景验证
  • 对非 MCP 类 Agent 框架的覆盖程度可能有限

适用场景

  • 上线前对 Agent 及其 MCP 服务器做安全体检
  • CI 中自动扫描第三方技能与工具描述,拦截高风险依赖
  • 安全团队评估引入外部 MCP 服务时的权限与数据流风险

替代项目

garak、promptfoo

上一篇:deepteam

下一篇:SREGym

同类项目推荐

PyRIT 开源

像红队一样自动攻击自家大模型,提前挖出安全漏洞

Open-source AI red teaming toolkit from Microsoft. Test generative AI systems with a···

★ 4731 2026-10-20
absent-author 开源

用证据清单和 AI agent 揪出没人负责的 AI 论文

Research and writing can be automated. Authorship cannot. Evidence list + agent skil···

★ 146 2026-10-22
confabulations 开源

测出RAG系统胡说八道,用人工验证问答对量化幻觉

Hallucinations (Confabulations) Document-Based Benchmark for RAG. Includes human-ver···

★ 251 2026-08-09
uncheatable_eval 开源

用最新网络数据动态出题,防止模型背答案刷分

Evaluating LLMs with Dynamic Data

★ 130 2026-10-23
UltraText_Bench 开源

给文生图模型做中英文写字能力体检

[Preprint] UltraText Bench: A Comprehensive Bilingual Benchmark for Evaluating Visua···

★ 114 2026-10-23
watchtower 开源

用 LLM 编排本地网站渗透测试,自动出报告

Watchtower is a simple AI-powered penetration testing automation CLI tool that lever···

★ 220 2026-10-21
xFinder 开源

用AI自动评估AI,让模型评测更可靠、更省力

[ICLR 2025] xFinder: Large Language Models as Automated Evaluators for Reliable Eval···

★ 178 2026-08-09
evaluate 开源

一行代码加载指标,快速评测模型效果

Evaluate: A library for easily evaluating machine learning models and datasets.

★ 2490 2026-09-21