Minecraft profile lookups (UUID, profile, name history, blocked servers).
This server has critical gaps in parameter descriptions and output schema documentation. All 5 tools lack parameter descriptions (e.g., 'username' in username_to_uuid has no description beyond the type). No output schemas are documented anywhere. Tool descriptions are extremely terse (10-30 chars), below the 50-200 char baseline for LLM-optimized descriptions. The naming is reasonable (verb_noun pattern), but without parameter guidance and output specs, LLMs cannot reliably use these tools. Error handling is minimal, only HTTP status codes are checked, with generic error messages that don't guide recovery.
List blocked-server SHA1s.
Historical name changes.
Profile (name + textures).
Current UUID for username.
UUID at a given epoch second.
All parameters lack descriptions. 'username', 'timestamp', 'uuid' have no guidance on format, constraints, or examples. LLMs cannot infer whether 'uuid' expects 32-char hex, dashes, or braces.
No output schemas documented. Tools return raw API responses (JSON objects with unknown structure). LLMs cannot plan downstream calls or extract required fields without trial-and-error.
Tool descriptions are under 20 characters (e.g., 'Current UUID for username.' = 27 chars, 'Profile (name + textures).' = 26 chars). Too terse to guide LLM selection or explain when to use vs. similar tools.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 38 | 2026-07-28+ | v2 |
Error handling is generic. 'Mojang: 404, not found.' and 'Mojang: {status}' do not guide recovery. No distinction between retryable (rate limit) vs. user-fixable (invalid username) vs. fatal errors.
'timestamp' parameter in username_to_uuid_at is optional but has no description of its format (epoch seconds? milliseconds?) or valid range. LLMs will guess.