An MCP server that provides network diagnostics tools including traceroute and ping capabilities across distributed global probe locations
CloudPing exposes a single tool 'traceroute' with a partially-documented schema and minimal parameter descriptions. The tool name lacks an action verb prefix (should be 'run_traceroute' or 'trace_route'). The input schema is visible in the handler code but lacks descriptions for most parameters, 'from' and 'prefer-ipv4'/'prefer-ipv6' have minimal context. The tool description itself is reasonable (non-empty, 89 chars), but parameter-level descriptions are sparse. No output schema is documented in the source code. Error handling approach is not evident from the available code. The server is a simple STDIO-based utility with limited composition complexity.
Trace the actual IP onward route path to the specified destination.
Tool name 'traceroute' lacks action verb prefix. Should be 'run_traceroute' or 'trace_route' to clearly signal action intent to LLMs.
Parameter 'from' has no description; LLMs cannot infer it accepts an array of provider names. Parameter descriptions for 'prefer-ipv4' and 'prefer-ipv6' are single-word ('The name of...', 'Prefer to use...') and lack context about mutual exclusivity or default behavior.
No output schema documented. Code shows input schema but response structure is not defined in available source. LLMs cannot plan chaining or extraction without knowing what fields traceroute returns.
Parameter 'ip' description ('The ip or ipv6 address to trace to.') lacks format guidance. Should specify: 'A valid IPv4 or IPv6 address (e.g. 8.8.8.8, 2001:4860:4860::8888). Domain names are resolved automatically.'
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 44 | 2026-07-28+ | v2 |
Parameter 'from' is an array but has no documentation of valid provider names, constraints on array length, or whether empty array means 'all providers' (which the description hints at). Array constraints must be explicit.
No error handling guidance evident in source code. No documented recovery paths (e.g. 'If traceroute times out, try with prefer-ipv4=true'). Error responses will not guide LLM recovery.