关于 GuardianShield
GuardianShield 是开源 MCP 服务,为代码、输入、输出和依赖项提供安全检查。它结合漏洞与密钥扫描、PII 和提示词注入检测、安全配置及审计日志。
主要功能
- 01扫描代码中的漏洞和密钥
- 02追踪跨行数据流
- 03检查依赖项中的已知 CVE
- 04检测提示词注入和 PII
- 05应用五种安全配置
- 06保存并查询审计记录
适用场景
- 01在开发过程中扫描源代码
- 02检查依赖项中的已知漏洞
- 03检查 Agent 输入和输出风险
- 04跟踪发现并执行严重性阈值
MCP 相关
GuardianShield 向 MCP 客户端提供安全扫描、依赖项审计、配置管理和审计日志工具。可注册到 Claude Code、VS Code 和 Cursor 等客户端。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
mcp.json · 通用配置
启动命令
uvx guardianshield需要配置的环境变量
GUARDIANSHIELD_PROFILEDefault safety profile (general, education, healthcare, finance, children)GUARDIANSHIELD_AUDIT_PATHPath to the SQLite audit databaseGUARDIANSHIELD_DEBUGSet to 1 for debug logging本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。
工具
27收录的工具列表 · 更新于 2 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| code | string | 是 | 要扫描的源代码。 |
| engines | array | 否 | 用于此次扫描的可选引擎名称列表。 |
| language | string | 否 | 可选的编程语言提示。 |
| file_path | string | 否 | 用于在发现结果中提供上下文的可选文件路径。 |
详细介绍
GuardianShield
通用 AI 安全层——用于代码扫描、PII 检测、提示词注入防御、密钥检测、依赖项审计和审计日志的开源 MCP 服务。
零依赖项 · 27 个 MCP 工具 · 5 种安全配置 · 108+ 种检测模式
功能
- 代码漏洞扫描 — 检测 SQL 注入、XSS、命令注入和路径遍历,提供 CWE ID 和自动修复方案
- 跨行数据流分析 — DeepEngine 使用基于 AST 的污点传播(Python)和正则表达式(JS/TS),跨多行追踪从源到汇的数据
- 依赖项安全 — 针对 PyPI、npm、Go 和 Packagist 生态系统,与 OSV.dev 进行版本感知型 CVE 匹配
- 清单解析 — 自动检测 11 种格式(requirements.txt、package.json、yarn.lock、go.mod、composer.json 等)
- 提示词注入防御 — 提供 9+ 种检测模式,用于检测指令覆盖、角色劫持和 ChatML 注入
- PII 检测 — 检测电子邮件、SSN、信用卡、电话和 IP,并自动在检测结果中隐去相关信息
- 密钥检测 — 检测 AWS 密钥、GitHub 令牌、Stripe 密钥、JWT、密码和连接字符串
- 安全配置 — 提供 5 种内置配置(通用、教育、医疗保健、金融、儿童)
- 审计日志 — 基于 SQLite 的扫描历史记录,支持检测结果检索和筛选
安装
pip install guardianshield
快速入门
# Register with Claude Code
claude mcp add guardianshield -- guardianshield-mcp
# Or run directly
guardianshield-mcp
编辑器集成
# Claude Code
claude mcp add guardianshield -- guardianshield-mcp
# VS Code (.vscode/mcp.json)
{"servers": {"guardianshield": {"type": "stdio", "command": "guardianshield-mcp"}}}
# Cursor (.cursor/mcp.json)
{"mcpServers": {"guardianshield": {"command": "guardianshield-mcp"}}}
# Claude Desktop (claude_desktop_config.json)
{"mcpServers": {"guardianshield": {"command": "guardianshield-mcp"}}}
MCP 工具
扫描
| 工具 | 说明 |
|---|---|
scan_code | 扫描源代码,查找漏洞和硬编码密钥 |
scan_file | 扫描单个文件(根据扩展名自动检测语言) |
scan_directory | 递归扫描目录,支持筛选和进度流式输出 |
scan_input | 检查用户/Agent 输入,查找提示词注入尝试 |
scan_output | 检查 AI 输出,查找 PII 泄露和内容违规 |
check_secrets | 检测硬编码密钥和凭据 |
scan_files | 在一次调用中扫描多个文件 |
scan_diff | 解析统一差异格式,仅扫描新增行 |
依赖项安全
| 工具 | 说明 |
|---|---|
check_dependencies | 通过 OSV.dev 检查软件包是否存在已知 CVE(PyPI、npm、Go、Packagist) |
sync_vulnerabilities | 同步本地 OSV 漏洞数据库 |
parse_manifest | 将任意受支持的清单文件(11 种格式)解析为依赖项对象 |
scan_dependencies | 扫描目录中的清单文件,并检查所有依赖项是否存在漏洞 |
误报管理
| 工具 | 说明 |
|---|---|
mark_false_positive | 将检测结果标记为误报(标记会应用于后续匹配) |
list_false_positives | 列出有效的误报记录,可选择筛选条件 |
unmark_false_positive | 根据指纹移除误报记录 |
引擎管理
| 工具 | 说明 |
|---|---|
list_engines | 列出可用的分析引擎及其功能 |
set_engine | 设置代码扫描使用的活动分析引擎 |
内置提供三种引擎:regex(逐行模式匹配,默认启用)、deep(跨行污点追踪)和 semantic(根据代码结构调整置信度)。
CI 与开发者工作流
| 工具 | 描述 |
|---|---|
export_sarif | 将发现的问题导出为 SARIF 2.1.0 JSON,供 GitHub Code Scanning 和 CI 使用 |
save_baseline | 将当前发现的问题保存为基线,用于增量扫描 |
scan_with_baseline | 扫描代码,并仅报告相较于基线新增的问题 |
check_quality_gate | 根据严重性阈值评估发现的问题(通过/失败/警告) |
scan_files | 在一次调用中扫描多个文件 |
scan_diff | 解析统一差异,并仅扫描新增行 |
配置与实用工具
| 工具 | 描述 |
|---|---|
get_profile | 获取当前安全配置文件 |
set_profile | 切换安全配置文件(general、education、healthcare、finance、children) |
test_pattern | 使用示例代码测试正则表达式,以开发自定义模式 |
audit_log | 查询安全审计日志 |
get_findings | 使用筛选条件检索过去发现的问题 |
shield_status | 获取运行状况、配置和 OSV 缓存统计信息 |
配置
设置环境变量以自定义行为:
| 变量 | 描述 | 默认值 |
|---|---|---|
GUARDIANSHIELD_PROFILE | 默认安全配置文件 | general |
GUARDIANSHIELD_AUDIT_PATH | SQLite 审计数据库的路径 | ~/.guardianshield/audit.db |
GUARDIANSHIELD_DEBUG | 启用调试日志记录(1) | 已禁用 |
文档
完整文档:sparkvibe-io.github.io/GuardianShield
许可证
Apache 2.0
评论
支持 Markdown
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。