mcpField
P
PromptFuzzer-MCP

PromptFuzzer-MCP

ローカル
github.com/EdenYavinセキュリティ748 週間前に更新

PromptFuzzer-MCP について

PromptFuzzer-MCPは、GarakによるLLM脆弱性スキャンを提供するMCPサーバーです。モデルの安全性を評価する開発者向けに、モデルやプローブの一覧表示、攻撃の実行、最新レポートの取得を行います。

主な機能

  1. 01対応モデルタイプを一覧表示
  2. 02タイプ別にモデルを検索
  3. 03Garakのプローブを一覧表示
  4. 04モデルへの攻撃スキャンを実行
  5. 05最新レポートを取得

活用シーン

  1. 01スキャン可能なモデルを確認
  2. 02プローブを選んで安全性をテスト
  3. 03スキャンで見つかった脆弱性を確認
  4. 04MCPクライアントからスキャンを開始

MCP 対応

モデルとプローブの確認、攻撃の実行、最新レポートの取得に使うツールをMCPクライアントに提供します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

Garak LLM 脆弱性スキャナー用 MCP サーバー

Garak 用の軽量な MCP(Model Context Protocol)サーバーです。

例:

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(string、必須):一覧表示するモデルのタイプ(ollama、openai、huggingface、ggml)
    • 指定したタイプで利用可能なモデルのリストを返します
  • list_garak_probes

    • 利用可能な Garak の攻撃/プローブをすべて一覧表示します
    • 実行可能なプローブ/攻撃のリストを返します
  • get_report

    • 最後に実行したレポートを取得します
    • レポートファイルへのパスを返します
  • run_attack

    • 指定したモデルとプローブで攻撃を実行します
    • 入力パラメーター:
      • model_type(string、必須):使用するモデルのタイプ
      • model_name(string、必須):使用するモデルの名前
      • probe_name(string、必須):使用する攻撃/プローブの名前
    • 検出された脆弱性のリストを返します

前提条件

  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 LLM Vulnerability Scan → Run workflow に移動します
  • カスタムオプション:手動実行時にモデルとプローブを指定できます
  • 結果:スキャン結果はワークフローのアーティファクトとしてアップロードされます

自動スキャンを有効にするには:

  1. ワークフローファイルが .github/workflows/garak-scan.yml にあることを確認します
  2. リポジトリにプッシュします
  3. Actions タブでスキャン結果を確認します

今後の予定

  • Smithery AI のサポートを追加:Docker と設定
  • レポート機能を改善
  • OpenAI モデル(GPT-3.5、GPT-4)をテストおよび検証
  • HuggingFace モデルをテストおよび検証
  • ローカル GGML モデルをテストおよび検証

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。