MCP server for LLM-driven security testing via HTTPToolkit — capture analysis, mutation-based replay, audit trails for mobile and electron app pentesting
HTTPToolkit MCP has 7 tools with basic schemas and descriptions, but significant gaps limit production readiness. Tool names follow verb_noun convention (server_status, events_list, replay_request), which is good. However, descriptions are inconsistent in depth, some are detailed (events_list with filter syntax examples), others minimal (interceptors_list). Parameter descriptions exist but lack constraint details (e.g., 'filter' in events_list references 'HTTPToolkit filter syntax' without explaining valid operators). Output schemas are not documented, callers cannot predict response structure. Error handling is present in code (try/catch blocks return JSON errors) but lacks recovery guidance. No tool annotations (readOnlyHint/destructiveHint) despite clear risk levels (READ_ONLY vs WRITE). The 'mutations' parameter in replay_request and replay_raw is vague, what mutations are valid? This forces LLMs to guess. Overall, definitions are functional but below production bar.
Get the request or response body of a captured HTTP exchange. Binary content is returned as base64. Large bodies are truncated by default.
Get the full outline of a captured HTTP exchange: headers, status, timing, body sizes — but not the body content itself. Use events_body for bodies.
List captured HTTP exchanges with optional filtering and pagination. Uses HTTPToolkit filter syntax (same as the UI search bar).
List available HTTPToolkit interceptors and their current status
Replay a raw HTTP request with optional mutations. Requires HTK_SERVER_TOKEN for authentication.
Replay a captured HTTP request with optional mutations. Requires HTK_SERVER_TOKEN for authentication.
Output schemas not documented. Callers cannot predict response structure (fields, types, pagination). Code returns JSON but schema is implicit.
'mutations' parameter in replay_request and replay_raw is vague. No description of valid mutation keys, types, or examples. LLMs cannot infer valid mutations.
No tool annotations (readOnlyHint/destructiveHint/idempotentHint) despite clear risk levels declared (READ_ONLY vs WRITE). Agents cannot infer safety properties.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 51 | <=2025-11-25 | v2 |
Get HTTPToolkit server status: proxy config, connection status, and MCP version
Filter syntax in events_list references 'HTTPToolkit filter syntax' but does not document valid operators or examples beyond 'method=POST, status>=400, hostname*=api'.
Error responses return JSON with 'error' field but lack recovery guidance. E.g., 'HTTPToolkit is not ready' does not suggest next steps (check server, retry, etc.).