A Model Context Protocol server for controlling a Minecraft bot with Claude.
13 tools with basic schemas and descriptions, but significant gaps in parameter documentation and output schema clarity. Most tools have 1-5 parameters with type info, but descriptions are minimal (10-50 chars) and lack actionable guidance. No error handling documentation, no output schemas specified, and no tool annotations. Naming is verb-first and clear (get_, move_, place_, break_, etc.), which is a strength. However, parameter descriptions are sparse, e.g., 'X coordinate' tells the LLM nothing about valid ranges, units, or coordinate system. Complex tools like draw-pixel-art lack guidance on blockPalette format or image size limits. No idempotency hints, no retry guidance, no permission scopes declared.
Attack a nearby entity by ID
Break a block at a specific position
Draw pixel art from a URL or base64 image data
Equip a specific item
Get information about a block at a specific position
Get the current status of the bot
Get the current inventory of the bot
Get a list of nearby entities
Output schemas not documented. Tools return unstructured text responses (e.g., 'Failed: ...' or position strings) with no declared field structure. LLMs cannot plan downstream calls or extract typed data.
Parameter descriptions lack actionable constraints. 'X coordinate' does not specify range, units, or coordinate system. 'Scale factor' lacks min/max bounds. LLMs cannot validate inputs or self-correct.
No error handling guidance. Tools return generic 'Failed: <message>' responses with no recovery hints. LLMs cannot determine if errors are retryable, user-fixable, or fatal.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 51 | 2026-07-28+ | v2 |
Get the current position of the bot
List all available block names in the current Minecraft version
Move or teleport the bot to a specific position (teleports in creative mode)
Place a block at a specific position
Send a chat message
Destructive tools (break-block, attack-entity, draw-pixel-art) lack confirmation or dry-run support. Agents can irreversibly modify the world without safeguards.
Tool descriptions are too brief (10 - 50 chars). 'Get the current position of the bot' lacks context on when to use it vs. get-bot-status, what coordinate system is used, or what the response format is.