Provides IP address lookup, geolocation, and ping test tools via MCP protocol for Cloudflare Workers
Server has three well-named tools with complete input schemas and descriptions. Naming follows verb_noun pattern (get_*, ping_*). All parameters have type definitions and descriptions. However, output schemas are not documented, LLMs cannot predict response structure. Error handling is minimal (generic error codes, no recovery guidance). Parameter descriptions are adequate but lack format/constraint details. No tool annotations (readOnlyHint, idempotentHint). Missing documentation of what fields are returned and how to chain tools.
Get geographic location information for specified IP address
Get current client public IP address information
Perform ping connectivity test to specified host
Output schemas not documented. LLMs cannot predict response structure or plan downstream tool calls. Tools return JSON.stringify(result) but no schema is provided for what 'result' contains.
Error responses lack recovery guidance. Errors return generic code -32603 with message only. No actionable next steps (e.g., 'Try search_users() first' or 'Valid values are: X, Y, Z').
No tool annotations. Tools lack readOnlyHint, destructiveHint, or idempotentHint. LLMs cannot determine if tools are safe to retry or have side effects.
Parameter 'areas' in ping_test has complex enum with 25 values but no guidance on when to use 'all' vs. specific regions. Description lacks format/constraint clarity.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 64 | 2026-07-28+ | v2 |
No pagination support. If ping_test or get_ip_location return large result sets, no limit or offset parameters exist. Results could exceed context window.