mcpField
M
MCP Server For Garak LLM Vulnerability Scanner

MCP Server For Garak LLM Vulnerability Scanner

本地服务
github.com/EdenYavinAI 与智能体748 周前更新

关于 MCP Server For Garak LLM Vulnerability Scanner

MCP Server For Garak LLM Vulnerability Scanner 将 MCP 主机连接到 Garak,以选定的探测项测试模型,适用于检查多种模型类型漏洞的团队。

主要功能

  1. 01列出支持的模型类型
  2. 02按类型查看模型
  3. 03列出 Garak 探测项
  4. 04使用指定模型和探测项运行扫描
  5. 05获取最近一次报告

适用场景

  1. 01测试前查看可用模型
  2. 02使用所选探测项扫描模型
  3. 03获取上次运行的结果

MCP 相关

它向 Cursor 和 Claude Desktop 等 MCP 客户端提供模型及探测项发现、攻击执行和报告获取工具。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

Garak 大模型漏洞扫描器 MCP 服务

一个轻量级的 Garak MCP(模型上下文协议)服务。

示例:

https://github.com/user-attachments/assets/f6095d26-2b79-4ef7-a889-fd6be27bbbda


提供的工具

概览
名称描述
list_model_types列出所有可用的模型类型(ollama、openai、huggingface、ggml)
list_models列出指定模型类型的所有可用模型
list_garak_probes列出所有可用的 Garak 攻击/探测器
get_report获取上一次运行的报告
run_attack使用指定模型和探测器运行攻击
详细说明
  • list_model_types

    • 列出可用于攻击的所有模型类型
    • 返回支持的模型类型列表(ollama、openai、huggingface、ggml)
  • list_models

    • 列出指定模型类型的所有可用模型
    • 输入参数:
      • model_type(字符串,必需):要列出的模型类型(ollama、openai、huggingface、ggml)
    • 返回指定类型的可用模型列表
  • list_garak_probes

    • 列出所有可用的 Garak 攻击/探测器
    • 返回可运行的探测器/攻击列表
  • get_report

    • 获取上一次运行的报告
    • 返回报告文件的路径
  • run_attack

    • 使用指定模型和探测器运行攻击
    • 输入参数:
      • model_type(字符串,必需):要使用的模型类型
      • model_name(字符串,必需):要使用的模型名称
      • probe_name(字符串,必需):要使用的攻击/探测器名称
    • 返回发现的漏洞列表

前提条件

  1. Python 3.11 或更高版本:本项目需要 Python 3.11 或更高版本。

    # Check your Python version
    python --version
    
  2. 安装 uv:一个快速的 Python 包安装器和解析器。

    pip install uv
    

    或使用 Homebrew:

    brew install uv
    
  3. 可选:Ollama:如果要对 ollama 模型运行攻击,请确保 ollama 服务正在运行。

ollama serve

安装

  1. 克隆此仓库:
git clone https://github.com/BIGdeadLock/Garak-MCP.git
  1. 配置 MCP 主机(Claude Desktop、Cursor 等):
{
  "mcpServers": {
    "garak-mcp": {
      "command": "uv",
      "args": ["--directory", "path-to/Garak-MCP", "run", "garak-server"],
      "env": {}
    }
  }
}


已测试:

  • Cursor
  • Claude Desktop

运行漏洞扫描

你可以使用随附的 CLI 工具直接运行 Garak 漏洞扫描。

扫描前提条件
  1. Ollama 必须正在运行:

    ollama serve
    
  2. 拉取要扫描的模型:

    ollama pull llama2
    
使用 CLI 扫描器

安装后,你可以使用 garak-scan 命令:

# List available Ollama models
uv run garak-scan --list-models

# Scan a specific model with all probes
uv run garak-scan --model llama2

# Scan with specific probes
uv run garak-scan --model llama2 --probes encoding

# Scan with custom output directory
uv run garak-scan --model llama2 --output-dir ./my_scans

# Run multiple parallel attempts
uv run garak-scan --model llama2 --parallel-attempts 4
扫描结果

扫描结果以 JSONL 文件的形式保存在 output/ 目录(或你指定的目录)中。每次扫描都会生成带时间戳的报告文件:

output/scan_llama2_20250125_143022.report.jsonl
GitHub Actions 集成

此仓库包含一个 GitHub Actions 工作流,可自动运行漏洞扫描:

  • 触发条件:推送到 main/master、拉取请求、每周计划任务(UTC 时间每周一凌晨 2 点)
  • 手动运行:前往 Actions → Garak 大模型漏洞扫描 → Run workflow
  • 自定义选项:手动运行时指定模型和探测器
  • 结果:扫描结果将作为工作流构件上传

启用自动扫描:

  1. 确保工作流文件位于 .github/workflows/garak-scan.yml
  2. 推送到你的仓库
  3. 查看 Actions 选项卡中的扫描结果

后续计划

  • 添加对 Smithery AI 的支持:Docker 和配置
  • 改进报告
  • 测试并验证 OpenAI 模型(GPT-3.5、GPT-4)
  • 测试并验证 HuggingFace 模型
  • 测试并验证本地 GGML 模型

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。