┌─────────────────────────────────────────┐ │ <You> build a cabin next to me │ │ <Claude> On it — surveying the patch │ │ <Claude> Done — door south. What's next?│ │ <You> kill that creeper │ │ <Claude> Target locked. Coming. │ └─────────────────────────────────────────┘
Minecraft, for your AI.
Not RCON. Not a mod helper. A teammate in the world.
npx -y cobble-mcpThen in Cursor: “play with me” · “build a house next to me” · type in Minecraft chat and it answers.
| Clip (30–60s) | How |
|---|---|
| Cabin from nothing | play with me → build me a witch hut → watch mc_design rise |
| Chat teammate | Type in Minecraft: come · what should we build · kill that |
| Fix my grief | Break a wall → fix it → mc_repair |
| Style flex | Same prompt twice → two different designs (agent mind, not a stamp) |
Post with #cobble + the repo link. Clips > screenshots.
Clips of Claude actually placing blocks spread. Admin panels don't.
COBBLE drops a Mineflayer bot into your server. Same chunk as you. Chat, path, dig, build, swing at creepers — directed co-op, not a silent autofill.
| You say (Cursor or in-game) | What happens |
|---|---|
| play with me | mc_play loop — agent brain stays live |
| build a cabin here | mc_design — YOU invent palette + ASCII floors (never the same box) |
| come / kill this creeper | Instant reflexes in chat (no waiting on Cursor) |
| what should we do? | Agent answers with pulse + memory + this chat |
| fix it / clear that | mc_repair / mc_clear on the last site |
Cookie-cutter mc_build_house is demoted — viral builds come from the agent's mind via mc_design / mc_sculpt.
- Java world — creative +
online-mode=falsefor easy demos - Wire Cursor (
~/.cursor/mcp.json):
{
"mcpServers": {
"cobble": {
"command": "npx",
"args": ["-y", "cobble-mcp"],
"env": {
"MC_HOST": "localhost",
"MC_PORT": "25565",
"MC_USERNAME": "Claude",
"MC_AUTH": "offline",
"MC_FAST": "1",
"MC_BRAIN": "agent"
}
}
}
}Local clone? Point command/args at node + dist/server.js instead.
- Reload MCP → in Cursor: play with me → talk in Minecraft.
You (the Cursor agent) are the brain. Not a side API that forgot the cabin you just built.
mc_connect → mc_come → loop: mc_play → think → mc_chat / build → mc_play
come/kill/stop— instant in-process reflexes- Plans, opinions, builds — agent via
mc_play - Builds run in the background — tool returns now; poll
mc_build_status
Live co-op
mc_play · mc_pulse · mc_hang · mc_chat · mc_read_chat · mc_wait_chat · mc_note · mc_autotalk
Move
mc_come · mc_goto · mc_stop · mc_status · mc_connect · mc_disconnect
Build smart
mc_design · mc_sculpt · mc_build · mc_build_wall · mc_build_house (lazy) · mc_survey_site · mc_repair · mc_clear · mc_build_status · mc_stop_build · mc_scan · mc_inventory
Creative + MC_FAST=1 → timed /setblock (no pathfind freeze mid-farm).
| Var | Default | |
|---|---|---|
MC_HOST |
localhost |
Server host |
MC_PORT |
25565 |
Server port |
MC_USERNAME |
Claude |
Bot name |
MC_AUTH |
offline |
or microsoft |
MC_FAST |
1 |
Creative setblock path |
MC_BRAIN |
agent |
Cursor is the brain |
git clone https://github.com/brian-mwirigi/cobble-mcp
cd cobble-mcp
npm i && npm run build && npm run smoke
npm start # MCP stdioEasiest win: add an ASCII design pack under examples/designs/ — no TypeScript.
Code / tools: see CONTRIBUTING.md · grab something from ROADMAP.md.
Open a PR that answers: what clip does this unlock?
COBBLE — same world. Your call. Its hands.
MIT · Mineflayer · Model Context Protocol