An MCP for network sleuthing - captures live network traffic and provides packet data, statistics, conversation analysis, threat detection, and DDoS/anomaly detection
WireMCP has 5 tools with complete Zod schemas and descriptions, but quality is uneven. All tools have descriptions (10 - 200 chars, within baseline), and parameters are typed with enums and defaults. However, naming lacks clarity, 'capture_packets' and 'check_threats' combine multiple responsibilities (capture + parse + analyze). Output schemas are not documented; responses are free-text JSON without field definitions. Error handling is basic (returns isError flag but no recovery guidance). No tool annotations (readOnlyHint, destructiveHint). Parameter descriptions are minimal (e.g., 'Network interface to capture from' lacks format/constraint details). Tools 1 - 4 all capture traffic but differ subtly in output mode, risking LLM confusion. Tool 5 (check_ip_threats) is isolated and clear.
Capture live traffic and provide raw packet data as JSON for LLM analysis. Uses native Rust parsing (basic) or tshark deep dissection (full).
Check a given IP address against URLhaus blacklist for IOCs
Capture live traffic and check IPs against URLhaus blacklist. Uses Rust for fast capture, JS for threat lookup.
Capture live traffic and provide TCP/UDP conversation statistics for LLM analysis. Uses native Rust packet parsing.
Capture live traffic and provide protocol hierarchy statistics for LLM analysis. Uses native Rust packet parsing.
Output schemas not documented. Tools return free-text JSON without field definitions. LLMs cannot plan downstream calls or extract structured data reliably.
Tool naming combines multiple responsibilities. 'capture_packets' does capture + parse + format; 'check_threats' does capture + threat lookup. Split into single-purpose tools (e.g., capture_packets + parse_packets_basic + parse_packets_full).
Error handling lacks recovery guidance. Errors return isError=true with raw messages but no actionable next steps. E.g., 'Rust binary not found' should suggest 'Run: cd capture-rs && cargo build --release'.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 54 | 2026-07-28+ | v2 |
No tool annotations. Tools lack readOnlyHint (all are read-only) or destructiveHint. Annotations help LLMs reason about side effects and retry safety.
Parameter descriptions lack format/constraint details. 'duration' has no min/max (baseline: 1 - 365 days). 'interface' has no validation hint (alphanumeric + dash/underscore/dot only, per sanitizeIface). Constraints should be in descriptions, not just code.