MCP Server For Garak LLM Vulnerability Scanner
A lightweight MCP (Model Context Protocol) server for Garak.
Example:
https://github.com/user-attachments/assets/f6095d26-2b79-4ef7-a889-fd6be27bbbda
Features
- List Attacks: List all the attack available on Garak.
- Run Attack: Run the attack on a given model.
Prerequisites
Python 3.11 or higher: This project requires Python 3.11 or newer.
# Check your Python version python --versionInstall uv: A fast Python package installer and resolver.
pip install uvOr use Homebrew:
brew install uvOptional: Ollama: If you want to run attacks on ollama models be sure that the ollama server is running.
ollama serve
Installation
Clone this repository:
git clone https://github.com/BIGdeadLock/Garak-MCP.git
cd src
Configuration
For Cursor users:
{
"mcpServers": {
"garak-mcp": {
"command": "uv",
"args": ["--directory", "path-to/Garak-MCP", "run", "garak-server"],
"env": {}
}
}
}
Tools Provided
Overview
| Name | Description |
|---|---|
| list_model_types | List all available model types (ollama, openai, huggingface, ggml) |
| list_models | List all available models for a given model type |
| list_garak_probes | List all available Garak attacks/probes |
| get_report | Get the report of the last run |
| run_attack | Run an attack with a given model and probe |
Detailed Description
list_model_types
- List all available model types that can be used for attacks
- Returns a list of supported model types (ollama, openai, huggingface, ggml)
list_models
- List all available models for a given model type
- Input parameters:
model_type(string, required): The type of model to list (ollama, openai, huggingface, ggml)
- Returns a list of available models for the specified type
list_garak_probes
- List all available Garak attacks/probes
- Returns a list of available probes/attacks that can be run
get_report
- Get the report of the last run
- Returns the path to the report file
run_attack
- Run an attack with the given model and probe
- Input parameters:
model_type(string, required): The type of model to usemodel_name(string, required): The name of the model to useprobe_name(string, required): The name of the attack/probe to use
- Returns a list of vulnerabilities found
Future Steps
- [ ] Add support for Smithery AI: Docker and config
- [ ] Improve Reporting
- [ ] Test and validate OpenAI models (GPT-3.5, GPT-4)
- [ ] Test and validate HuggingFace models
- [ ] Test and validate local GGML models
Garak-MCP
Project Details
- EdenYavin/Garak-MCP
- MIT License
- Last Updated: 4/14/2025
Recomended MCP Servers
A model context protocol server for drand
Go常见面试八股文 | 基础 | 并发常考题|Mysql|网络|操作系统|Redis
A Model Context Protocol server for analyzing text documents with word and character counting capabilities
Collection of Canvas LMS and Gradescope tools for the ultimate EdTech model context protocol. Allows you to query...
MCP server for Grafana
A repository for MarkLogic MCP integration
MCP server providing semantic memory and persistent storage capabilities for Claude using ChromaDB and sentence transformers.
基于jquery实现的web版excel





