Zero-dependency Python firewall for AI agents — 4-wall + L4-L7 defense, 7-paper coverage, 44 compliance templates. Protects against prompt injection, MCP tool poisoning, memory defense, PII leaks, jailbreaks, and OWASP LLM Top 10 threats.
Aigis provides 12 security-focused tools with consistent naming (verb_noun pattern: check_*, scan_*, sanitize) and complete input schemas. All tools have descriptions (avg 95 chars, within 10-1024 range). However, descriptions are generic and lack LLM-optimized guidance on WHEN to use each tool vs alternatives. No output schemas documented. Parameters lack type constraints (enums, ranges). Error handling and recovery guidance absent. Tools like check_input, check_output, check_messages appear to duplicate functionality without clear differentiation for LLM selection.
Scan user input text for prompt injection, jailbreaks, and OWASP LLM threats
Scan multi-turn conversation messages for threats across role/content structure
Scan LLM output text for data leaks, PII exposure, and policy violations
Check semantic similarity between texts for prompt injection detection
Sanitize text by removing or redacting detected threats
Functional API to scan text for threats (convenience wrapper around Guard)
Scan an entire MCP server for security vulnerabilities, tool poisoning, and compliance issues
Duplicate tool functionality without clear LLM differentiation. check_input/check_output/check_messages vs scan/scan_output/scan_messages appear to serve identical purposes. LLMs cannot determine which to call.
No output schemas documented. LLMs cannot plan downstream operations or extract threat detection results. Responses are unstructured.
Descriptions lack WHEN/WHY guidance. Generic descriptions like 'Scan user input text for prompt injection' do not explain when to call this vs check_input or scan. LLMs waste reasoning cycles.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 62 | 2026-07-28+ | v2 |
Scan a single MCP tool definition for security risks and poisoning
Scan multiple MCP tool definitions for security risks
Scan multi-turn conversation messages for threats
Scan LLM output for data leaks and policy violations
Scan RAG context documents for prompt injection and data leaks
No error handling or recovery guidance. If a scan fails or detects threats, LLM has no guidance on next steps (retry, escalate, sanitize, block).
Parameters lack type constraints. 'text' and 'messages' accept free-form input with no format validation, length limits, or encoding hints. No enums or patterns defined.