一个极简的 Python 智能体库,让 AI 智能体以代码形式编写并执行动作。
cisco-ai-defense/mcp-scanner
思科开源的 Python 工具,用 YARA 规则、LLM 分析和 AI Defense 扫描 MCP 服务器及其工具的安全风险。
- Star
- 1,094
- Fork
- 148
- 未关闭 Issue
- 74
- 最近提交
- 4天前
这是什么?
MCP Scanner 用于检测 Model Context Protocol(MCP)服务器及其工具中潜在的恶意行为和安全问题。它可以扫描远程服务器(SSE 或 streamable HTTP)、本地 stdio 服务器的工具、提示词、资源和服务器说明,也可以离线扫描预先生成的 JSON 文件,适合放进 CI/CD 流程。
扫描器整合了三种引擎:YARA 规则、基于 LLM 的分析以及 Cisco AI Defense 检测接口,可以组合使用,也可以单独使用。此外还提供 MCP 服务器源码的行为分析、用 VirusTotal 校验二进制文件哈希、通过 pip-audit 检查 Python 依赖漏洞,以及在沙箱中扫描 PyPI 和 npm 包。
项目提供命令行工具(mcp-scanner)、REST API 服务(mcp-scanner-api)和 Python SDK,输出格式包括摘要、详细、表格、按严重级别分组和原始 JSON。
核心功能
- 01扫描 MCP 的工具、提示词、资源和服务器说明中的安全问题。
- 02整合 YARA 规则、LLM 分析和 Cisco AI Defense 接口,可组合或单独使用。
- 03支持连接远程(SSE、streamable HTTP)和 stdio 类型的 MCP 服务器,也可离线读取静态 JSON 文件。
- 04对 Python、TypeScript、Go、Java、Rust 等十种语言的源码做行为分析。
- 05通过 pip-audit 检查 Python 依赖中的已知漏洞(CVE、PYSEC、GHSA)。
- 06提供命令行、REST API 和 Python SDK 三种使用方式。
适用场景
- 在将第三方 MCP 服务器接入 AI 智能体之前进行安全审查。
- 在 CI/CD 流程中加入离线的 MCP 工具定义检查,无需 API 密钥。
- 安装提供 MCP 服务的 PyPI 或 npm 包之前进行扫描。
- 审计开发者本机已有的 MCP 客户端配置文件。
快速上手
- 1
使用 uv 安装命令行工具
uv tool install --python 3.13 cisco-ai-mcp-scanner - 2
使用 YARA 扫描一个 stdio MCP 服务器
mcp-scanner --stdio-command uvx --stdio-arg=--from --stdio-arg=mcp-server-fetch --stdio-arg=mcp-server-fetch --analyzers yara --format summary
使用前须知
- 部分分析器需要 API 密钥,例如 Cisco AI Defense API、LLM 提供商或 VirusTotal。
- 未设置 VIRUSTOTAL_API_KEY 时,不会扫描二进制文件的恶意软件。
- 需要 Python 3.11 及以上版本和 uv。
标签
常见问题
- mcp-scanner 是什么?
- 思科开源的 Python 工具,用 YARA 规则、LLM 分析和 AI Defense 扫描 MCP 服务器及其工具的安全风险。 MCP Scanner 用于检测 Model Context Protocol(MCP)服务器及其工具中潜在的恶意行为和安全问题。它可以扫描远程服务器(SSE 或 streamable HTTP)、本地 stdio 服务器的工具、提示词、资源和服务器说明,也可以离线扫描预先生成的 JSON 文件,适合放进 CI/CD 流程。
- mcp-scanner 可以免费使用吗?用的什么许可证?
- mcp-scanner 以 Apache-2.0 许可证开源。用于商业产品前,请先确认许可证条款。
- mcp-scanner 还在维护吗?
- 活跃维护中。mcp-scanner 最近一次提交是在 2026年10月16日。
- mcp-scanner 适合用来做什么?
- 在将第三方 MCP 服务器接入 AI 智能体之前进行安全审查。 在 CI/CD 流程中加入离线的 MCP 工具定义检查,无需 API 密钥。 安装提供 MCP 服务的 PyPI 或 npm 包之前进行扫描。 审计开发者本机已有的 MCP 客户端配置文件。
- mcp-scanner 怎么安装和运行?
- 使用 uv 安装命令行工具: uv tool install --python 3.13 cisco-ai-mcp-scanner 使用 YARA 扫描一个 stdio MCP 服务器: mcp-scanner --stdio-command uvx --stdio-arg=--from --stdio-arg=mcp-server-fetch --stdio-arg=mcp-server-fetch --analyzers yara --format summary
- 在哪里获取 mcp-scanner?
- 源代码和安装说明在 GitHub 上:https://github.com/cisco-ai-defense/mcp-scanner
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
用于构建自主 AI 智能体的 Python 框架,支持研究、规划、编码与执行任务,内置记忆与 RAG。
开源的 Python 与 TypeScript AI 智能体开发 SDK,支持工具调用、MCP、记忆与多模型切换。
用于构建和编排多智能体系统的 Python 框架,支持顺序、并发、图和层级等工作流。
面向 AI 智能体的记忆系统,支持存储、检索与反思记忆,让智能体随时间学习而非仅回放对话历史。
一个面向知识工作与软件开发的智能体工作台,可自由选择模型并使用开源智能体框架,支持本地或托管运行。