Research project demonstrating various adversarial attack vectors against LLM-based agent systems, including tool poisoning, context packing attacks, embedding manipulation, and feedback loop exploits.
AgentNull is a research project demonstrating MCP attack vectors (Tool Confusion, Advanced Tool Poisoning, Context Packing). The two visible tools have minimal definitions and no formal schemas. Naming is adequate (read_financials, delete_logs) but both tools lack input/output schemas, comprehensive parameter descriptions, and error handling guidance. The codebase shows simulation and attack demonstration code rather than production MCP tool patterns. No tool registration is visible in the provided source, tool definitions appear to be inferred from Python function names in PoC files, not formally declared via MCP registration.
Delete system logs.
Read financial documents.
Descriptions are under 40 characters and lack LLM-optimized detail. 'Read financial documents' and 'Delete system logs' do not explain when to use, what happens, or dependencies.
delete_logs is a destructive operation with no confirmation step, dry-run mode, or permission gating. Agents executing this without safeguards risk irreversible data loss.
Tool definitions are not explicitly visible in the source. They appear inferred from function names in PoC files (pocs/ToolConfusionAttack/tool_confusion_agent.py).
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-21 | F | 28 | 2026-07-28+ | v2 |
| 2026-03-09 | F | 36 | - | v1 |
No parameter descriptions or constraints visible. Tools lack input validation, type hints, and guidance on expected arguments, formats, or ranges.
No output schemas documented. Agents cannot predict the structure of return values, complicating downstream tool chaining.
No error recovery guidance. A failed read_financials or delete_logs call provides no direction on retry, user correction, or alternative steps.
This is a research/PoC project focused on demonstrating attacks (tool confusion, poisoning, context packing) rather than production MCP patterns. The code implements LLM simulation and attack vectors, not a real agent-accessible MCP server.