minecraft-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| MINECRAFT_MCP_BRIDGE_URL | No | Overrides the bridge address | ws://127.0.0.1:8765 |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| look_atA | Instantly rotate the player's view to face the given block or entity position. |
| move_toA | Walk the player toward the given coordinates (looking at the target and holding forward, jumping over 1-block obstacles). Resolves once within 1.5 blocks horizontally; call stop to cancel a long walk. |
| jumpB | Make the player jump once. |
| sprintA | Enable or disable sprinting for the player. |
| sneakA | Enable or disable sneaking (crouching) for the player. |
| stopA | Cancel any in-progress move_to, stop the player's movement, and clear sprint/sneak. |
| break_blockA | Face and break the block at the given coordinates. Instant in creative mode; takes time in survival and may time out. |
| place_blockA | Place a block of the given material at the coordinates, against the adjacent face. Uses the player's inventory (or places directly in creative mode). |
| use_itemC | Right-click with the item in the player's main hand. |
| attackA | Face and attack an entity once. Use an entity id from get_nearby_entities. |
| interact_entityA | Right-click an entity (e.g. open a villager trade or mount). Use an entity id from get_nearby_entities. |
| get_inventoryA | Read the player's inventory: hotbar, main storage, armor, offhand contents and the currently held hotbar slot. |
| equip_itemA | Move the first matching stack from the player's inventory into a slot (main hand by default). Fails if the player doesn't have the item. |
| drop_itemA | Drop items from the player's inventory onto the ground. Defaults to one of the currently held item. |
| swap_handsA | Swap the items in the player's main hand and off hand. |
| get_player_stateA | Read the player's position, world, view direction, health, food, XP, gamemode, movement flags, and held item. |
| get_block_atA | Read which material occupies the block at the given coordinates. |
| get_nearby_entitiesA | List entities near the player (mobs, players, items, ...) with their ids, types, positions and distances. Entity ids are used with attack and interact_entity. |
| get_time_weatherA | Read the time of day and weather for a world (default: the player's world). |
| send_chatA | Send a chat message as the player; it appears in game chat and triggers normal chat events. |
| teleportA | Instantly teleport the player to coordinates, optionally in another world and with a given view direction. |
| set_gamemodeB | Change the player's gamemode (creative enables instant breaking and free placement). |
| give_itemA | Add items directly to the player's inventory (no crafting or pickup needed). |
| set_timeA | Set the time of day for a world in ticks (0 = sunrise, 6000 = noon, 13000 = sunset, 18000 = midnight). |
| set_weatherA | Set the weather for a world (default: the player's world). |
| summon_entityA | Spawn an entity (e.g. zombie, cow, armor_stand) at the given coordinates, or 2 blocks in front of the player by default. |
| run_commandA | Execute a vanilla or plugin command from the server console, without the leading slash (e.g. "say hello"). Returns the command output, possibly empty. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 27 tools
Each tool targets a distinct action or query in Minecraft, from movement (sprint, sneak, jump, move_to, teleport) to interaction (break_block, place_block, attack, interact_entity) and data retrieval (get_inventory, get_player_state, get_block_at). Even similar operations like use_item and interact_entity are clearly differentiated by targeting items vs. entities.
Tool names follow a consistent verb_noun snake_case pattern: get_* for state queries, set_* for world modifications, and bare action verbs for player actions. There are no mixed conventions or vague generic names like 'process' or 'do_thing'.
27 tools is slightly above the typical well-scoped range, but the breadth is justified by Minecraft's complex mechanics (movement, inventory, world editing, entities, time/weather, commands). The set feels comprehensive rather than bloated, with each tool serving a concrete purpose.
The surface covers most core Minecraft interactions: movement, block manipulation, inventory management, entity interaction, world queries, and environment settings. Minor gaps exist (e.g., no explicit crafting action, no block entity inspection like chests), but agents can work around these via run_command or give_item.