Observed since 20 Oct, 23:18 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
Security toolkit for AI agents - machine scan for dangerous skills/MCP configs + prompt injection/extraction testing
Docs · MCP Registry · Dashboard · Blog
pip install agentseal
agentseal guard
Scans your machine for dangerous skill files, MCP server configs, and toxic data flows across 17+ AI agents. No API key required.
graph TD
U["User"] -->|prompt| A["AI Agent (LLM)"]
A -->|tool call| M1["MCP Server\n(filesystem)"]
A -->|tool call| M2["MCP Server\n(slack)"]
A -->|tool call| M3["MCP Server\n(database)"]
M1 -->|reads| FS["~/.ssh/\n~/.aws/\n~/Documents/"]
M2 -->|reads| SL["Messages\nChannels"]
M3 -->|queries| DB["Tables\nCredentials"]
SL -.->|"toxic flow"| M1
M1 -.->|"exfiltration"| EX["Attacker"]
style U fill:#1a1a2e,stroke:#58a6ff,color:#e6edf3
style A fill:#1a1a2e,stroke:#58a6ff,color:#e6edf3
style M1 fill:#3b1d0e,stroke:#f59e0b,color:#e6edf3
style M2 fill:#3b1d0e,stroke:#f59e0b,color:#e6edf3
style M3 fill:#3b1d0e,stroke:#f59e0b,color:#e6edf3
style EX fill:#3b0e0e,stroke:#ef4444,color:#e6edf3
style FS fill:#1a1a2e,stroke:#30363d,color:#8b949e
style SL fill:#1a1a2e,stroke:#30363d,color:#8b949e
style DB fill:#1a1a2e,stroke:#30363d,color:#8b949e
MCP servers give AI agents access to local files, databases, APIs, and credentials. Tool descriptions can contain hidden instructions that the agent follows but the user never sees. AgentSeal detects these threats across four attack surfaces.
| Command | Description | API key |
|---|---|---|
agentseal guard | Scan skill files, MCP configs, toxic data flows, and supply chain changes | No |
agentseal shield | Real-time file monitoring with desktop alerts and auto-quarantine | No |
agentseal scan | Test system prompts against 225+ adversarial probes | Yes* |
agentseal scan-mcp | Audit live MCP server tool descriptions for poisoning | No |
*Free with Ollama. Cloud providers require an API key.
Scans all AI agent configurations on your machine. Supports Claude Code, Cursor, Windsurf, VS Code, Gemini CLI, Codex, Cline, Copilot, and others.
agentseal guard
SKILLS
[XX] sketchy-rules MALWARE Credential access
Remove this skill immediately and rotate all credentials.
[OK] 4 more safe skills
MCP SERVERS
[XX] filesystem DANGER Access to SSH private keys
Restrict filesystem MCP server: remove .ssh from allowed paths.
TOXIC FLOWS
[HIGH] Data exfiltration path: filesystem + slack
graph LR
IN["Skill Files\nMCP Configs"] --> P["Pattern\nSignatures"]
P --> D["Deobfuscation\n(Unicode Tags,\nBase64, BiDi, ZWC)"]
D --> S["Semantic\nAnalysis\n(MiniLM-L6-v2)"]
S --> B["Baseline\nTracking\n(SHA-256)"]
B --> OUT["Report +\nSeverity"]
style IN fill:#1a1a2e,stroke:#58a6ff,color:#e6edf3
style P fill:#161b22,stroke:#30363d,color:#e6edf3
style D fill:#161b22,stroke:#30363d,color:#e6edf3
style S fill:#161b22,stroke:#30363d,color:#e6edf3
style B fill:#161b22,stroke:#30363d,color:#e6edf3
style OUT fill:#0d4429,stroke:#22c55e,color:#e6edf3
225 attack probes: 82 extraction techniques, 143 injection techniques, 8 adaptive mutation transforms. Deterministic n-gram and canary token scoring. No LLM judge.
agentseal scan --prompt "You are a helpful assistant..." --model gpt-4o
agentseal scan --prompt "You are a helpful assistant..." --model ollama/llama3.1:8b
agentseal scan --url http://localhost:8080/chat
Connects to live MCP servers over stdio or SSE. Enumerates tools, analyzes descriptions through pattern matching, deobfuscation, semantic similarity, and optional LLM classification. Outputs a trust score per server.
agentseal scan-mcp --server npx @modelcontextprotocol/server-filesystem /tmp
Watches agent config paths in real time. Desktop notifications on threats. Quarantines files with detected payloads.
pip install agentseal[shield]
agentseal shield
from agentseal import AgentValidator
validator = AgentValidator.from_openai(
client=openai.AsyncOpenAI(),
model="gpt-4o",
system_prompt="You are a helpful assistant...",
)
report = await validator.run()
print(f"Trust score: {report.trust_score}/100")
# Anthropic
validator = AgentValidator.from_anthropic(
client=client, model="claude-sonnet-4-5-20250929", system_prompt="..."
)
# HTTP endpoint
validator = AgentValidator.from_endpoint(url="http://localhost:8080/chat")
# Custom function
validator = AgentValidator(agent_fn=my_agent, ground_truth_prompt="...")
agentseal scan --file ./prompt.txt --model gpt-4o --min-score 75
Exit code 1 if trust score is below threshold. SARIF output supported via --output sarif.
| Provider | Flag | API key |
|---|---|---|
| OpenAI | --model gpt-4o | OPENAI_API_KEY |
| Anthropic | --model claude-sonnet-4-5-20250929 | ANTHROPIC_API_KEY |
| Ollama | --model ollama/llama3.1:8b | None |
| LiteLLM | --model any --litellm-url http://... | Varies |
| HTTP | --url http://your-agent.com/chat | None |
2,200+ MCP servers scanned for security risks. Trust scores, tool analysis, and finding details for each server.
AgentSeal Pro extends the scanner with MCP tool poisoning probes (+45), RAG poisoning probes (+28), multimodal attack probes (+13), behavioral genome mapping, PDF reports, and a dashboard.
If you find a detection gap or a false positive, please open an issue.
pypistats · 88 observations shown. Missing days are unknown. Source category: overall: without mirrors.
| Date / source period | Value | Observed at |
|---|---|---|
| 2026-10-20 – 2026-10-20 | 4 | 2026-10-21T09:39:20.4693992Z |
| 2026-10-19 – 2026-10-19 | 4 | 2026-10-21T09:39:20.4693992Z |
| 2026-10-18 – 2026-10-18 | 9 | 2026-10-21T09:39:20.4693992Z |
| 2026-10-17 – 2026-10-17 | 11 | 2026-10-21T09:39:20.4693992Z |
| 2026-10-16 – 2026-10-16 | 13 | 2026-10-21T09:39:20.4693992Z |
| 2026-10-15 – 2026-10-15 | 7 | 2026-10-21T09:39:20.4693992Z |
| 2026-10-14 – 2026-10-14 | 4 | 2026-10-21T09:39:20.4693992Z |
| 2026-10-13 – 2026-10-13 | 4 | 2026-10-21T09:39:20.4693992Z |
| 2026-10-12 – 2026-10-12 | 43 | 2026-10-21T09:39:20.4693992Z |
| 2026-10-11 – 2026-10-11 | 51 | 2026-10-21T09:39:20.4693992Z |
| 2026-10-10 – 2026-10-10 | 36 | 2026-10-21T09:39:20.4693992Z |
| 2026-10-09 – 2026-10-09 | 42 | 2026-10-21T09:39:20.4693992Z |
| 2026-10-08 – 2026-10-08 | 4 | 2026-10-21T09:39:20.4693992Z |
| 2026-10-07 – 2026-10-07 | 75 | 2026-10-21T09:39:20.4693992Z |
| 2026-10-06 – 2026-10-06 | 4 | 2026-10-21T09:39:20.4693992Z |
| 2026-10-05 – 2026-10-05 | 26 | 2026-10-21T09:39:20.4693992Z |
| 2026-10-04 – 2026-10-04 | 2 | 2026-10-21T09:39:20.4693992Z |
| 2026-10-02 – 2026-10-02 | 49 | 2026-10-21T09:39:20.4693992Z |
| 2026-10-01 – 2026-10-01 | 2 | 2026-10-21T09:39:20.4693992Z |
| 2026-09-30 – 2026-09-30 | 45 | 2026-10-21T09:39:20.4693992Z |
| 2026-09-29 – 2026-09-29 | 8 | 2026-10-21T09:39:20.4693992Z |
| 2026-09-28 – 2026-09-28 | 27 | 2026-10-21T09:39:20.4693992Z |
| 2026-09-27 – 2026-09-27 | 5 | 2026-10-21T09:39:20.4693992Z |
| 2026-09-26 – 2026-09-26 | 17 | 2026-10-21T09:39:20.4693992Z |
| 2026-09-25 – 2026-09-25 | 5 | 2026-10-21T09:39:20.4693992Z |
| 2026-09-24 – 2026-09-24 | 3 | 2026-10-21T09:39:20.4693992Z |
| 2026-09-23 – 2026-09-23 | 25 | 2026-10-21T09:39:20.4693992Z |
| 2026-09-22 – 2026-09-22 | 5 | 2026-10-21T09:39:20.4693992Z |
| 2026-09-21 – 2026-09-21 | 70 | 2026-10-21T09:39:20.4693992Z |
| 2026-09-20 – 2026-09-20 | 13 | 2026-10-21T09:39:20.4693992Z |
| 2026-09-19 – 2026-09-19 | 20 | 2026-10-21T09:39:20.4693992Z |
| 2026-09-18 – 2026-09-18 | 28 | 2026-10-21T09:39:20.4693992Z |
| 2026-09-17 – 2026-09-17 | 11 | 2026-10-21T09:39:20.4693992Z |
| 2026-09-16 – 2026-09-16 | 27 | 2026-10-21T09:39:20.4693992Z |
| 2026-09-15 – 2026-09-15 | 2 | 2026-10-21T09:39:20.4693992Z |
| 2026-09-14 – 2026-09-14 | 34 | 2026-10-21T09:39:20.4693992Z |
| 2026-09-13 – 2026-09-13 | 12 | 2026-10-21T09:39:20.4693992Z |
| 2026-09-12 – 2026-09-12 | 8 | 2026-10-21T09:39:20.4693992Z |
| 2026-09-11 – 2026-09-11 | 10 | 2026-10-21T09:39:20.4693992Z |
| 2026-09-10 – 2026-09-10 | 1 | 2026-10-21T09:39:20.4693992Z |
| 2026-09-09 – 2026-09-09 | 40 | 2026-10-21T09:39:20.4693992Z |
| 2026-09-08 – 2026-09-08 | 2 | 2026-10-21T09:39:20.4693992Z |
| 2026-09-07 – 2026-09-07 | 18 | 2026-10-21T09:39:20.4693992Z |
| 2026-09-06 – 2026-09-06 | 4 | 2026-10-21T09:39:20.4693992Z |
| 2026-09-05 – 2026-09-05 | 4 | 2026-10-21T09:39:20.4693992Z |
| 2026-09-04 – 2026-09-04 | 37 | 2026-10-21T09:39:20.4693992Z |
| 2026-09-03 – 2026-09-03 | 2 | 2026-10-21T09:39:20.4693992Z |
| 2026-09-02 – 2026-09-02 | 29 | 2026-10-21T09:39:20.4693992Z |
| 2026-09-01 – 2026-09-01 | 15 | 2026-10-21T09:39:20.4693992Z |
| 2026-08-31 – 2026-08-31 | 20 | 2026-10-21T09:39:20.4693992Z |
| 2026-08-30 – 2026-08-30 | 2 | 2026-10-21T09:39:20.4693992Z |
| 2026-08-29 – 2026-08-29 | 3 | 2026-10-21T09:39:20.4693992Z |
| 2026-08-28 – 2026-08-28 | 6 | 2026-10-21T09:39:20.4693992Z |
| 2026-08-27 – 2026-08-27 | 5 | 2026-10-21T09:39:20.4693992Z |
| 2026-08-26 – 2026-08-26 | 64 | 2026-10-21T09:39:20.4693992Z |
| 2026-08-25 – 2026-08-25 | 4 | 2026-10-21T09:39:20.4693992Z |
| 2026-08-24 – 2026-08-24 | 119 | 2026-10-21T09:39:20.4693992Z |
| 2026-08-23 – 2026-08-23 | 5 | 2026-10-21T09:39:20.4693992Z |
| 2026-08-22 – 2026-08-22 | 3 | 2026-10-21T09:39:20.4693992Z |
| 2026-08-21 – 2026-08-21 | 10 | 2026-10-21T09:39:20.4693992Z |
| 2026-08-20 – 2026-08-20 | 2 | 2026-10-21T09:39:20.4693992Z |
| 2026-08-19 – 2026-08-19 | 48 | 2026-10-21T09:39:20.4693992Z |
| 2026-08-18 – 2026-08-18 | 4 | 2026-10-21T09:39:20.4693992Z |
| 2026-08-17 – 2026-08-17 | 58 | 2026-10-21T09:39:20.4693992Z |
| 2026-08-16 – 2026-08-16 | 2 | 2026-10-21T09:39:20.4693992Z |
| 2026-08-15 – 2026-08-15 | 2 | 2026-10-21T09:39:20.4693992Z |
| 2026-08-14 – 2026-08-14 | 15 | 2026-10-21T09:39:20.4693992Z |
| 2026-08-12 – 2026-08-12 | 26 | 2026-10-21T09:39:20.4693992Z |
| 2026-08-11 – 2026-08-11 | 12 | 2026-10-21T09:39:20.4693992Z |
| 2026-08-10 – 2026-08-10 | 28 | 2026-10-21T09:39:20.4693992Z |
| 2026-08-09 – 2026-08-09 | 12 | 2026-10-21T09:39:20.4693992Z |
| 2026-08-08 – 2026-08-08 | 2 | 2026-10-21T09:39:20.4693992Z |
| 2026-08-07 – 2026-08-07 | 76 | 2026-10-21T09:39:20.4693992Z |
| 2026-08-06 – 2026-08-06 | 32 | 2026-10-21T09:39:20.4693992Z |
| 2026-08-05 – 2026-08-05 | 48 | 2026-10-21T09:39:20.4693992Z |
| 2026-08-04 – 2026-08-04 | 6 | 2026-10-21T09:39:20.4693992Z |
| 2026-08-03 – 2026-08-03 | 53 | 2026-10-21T09:39:20.4693992Z |
| 2026-08-02 – 2026-08-02 | 10 | 2026-10-21T09:39:20.4693992Z |
| 2026-08-01 – 2026-08-01 | 4 | 2026-10-21T09:39:20.4693992Z |
| 2026-07-31 – 2026-07-31 | 10 | 2026-10-21T09:39:20.4693992Z |
| 2026-07-30 – 2026-07-30 | 10 | 2026-10-21T09:39:20.4693992Z |
| 2026-07-29 – 2026-07-29 | 30 | 2026-10-21T09:39:20.4693992Z |
| 2026-07-28 – 2026-07-28 | 11 | 2026-10-21T09:39:20.4693992Z |
| 2026-07-27 – 2026-07-27 | 28 | 2026-10-21T09:39:20.4693992Z |
| 2026-07-26 – 2026-07-26 | 10 | 2026-10-21T09:39:20.4693992Z |
| 2026-07-25 – 2026-07-25 | 9 | 2026-10-21T09:39:20.4693992Z |
| 2026-07-24 – 2026-07-24 | 9 | 2026-10-21T09:39:20.4693992Z |
| 2026-07-23 – 2026-07-23 | 7 | 2026-10-21T09:39:20.4693992Z |
| Version | Published | Direct dependencies | Open version |
|---|---|---|---|
| 0.10.0 | 11 Jun 2026 | 10 |
This describes our collected data; it is not a security assessment.
Observed since 20 Oct, 23:18 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
package:27a49ae275ce156f94eb51db9b895d56d3e0b9aae0fcca021454162bd6daea0a