Agent skill

blockbench-modeling

Create and edit 3D models in Blockbench using MCP tools. Use when building geometry with cubes, creating meshes, placing spheres/cylinders, editing vertices, extruding faces, or organizing models with groups. Covers both cube-based Minecraft modeling and freeform mesh editing.

Stars 4
Forks 1

Install this agent skill to your Project

npx add-skill https://github.com/jasonjgardner/blockbench-mcp-project/tree/main/skills/blockbench-modeling

SKILL.md

Blockbench Modeling

Build 3D models using cubes and meshes in Blockbench.

Available Tools

Cube Tools

Tool Purpose
place_cube Create cubes with position, size, texture
modify_cube Edit cube properties (position, rotation, UV, etc.)

Mesh Tools

Tool Purpose
place_mesh Create mesh with vertices
create_sphere Create sphere mesh
create_cylinder Create cylinder mesh
extrude_mesh Extrude faces/edges/vertices
subdivide_mesh Add geometry detail
select_mesh_elements Select vertices/edges/faces
move_mesh_vertices Move selected vertices
delete_mesh_elements Remove geometry
merge_mesh_vertices Weld nearby vertices
create_mesh_face Create face from vertices
knife_tool Cut edges into faces

Element Tools

Tool Purpose
add_group Create bone/group
list_outline View model hierarchy
duplicate_element Copy elements
rename_element Rename elements
remove_element Delete elements

Cube Modeling

Place a Cube

place_cube: elements=[{
  name: "body",
  from: [-4, 0, -2],
  to: [4, 12, 2]
}], faces=true  # Auto UV

Place Multiple Cubes

place_cube: elements=[
  {name: "head", from: [-4, 12, -4], to: [4, 20, 4]},
  {name: "arm_left", from: [4, 4, -1], to: [6, 12, 1]},
  {name: "arm_right", from: [-6, 4, -1], to: [-4, 12, 1]}
], group="body"

Modify Cube

modify_cube: id="body", rotation=[0, 45, 0], origin=[0, 6, 0]

Cube with Texture

place_cube: elements=[{name: "block", from: [0,0,0], to: [16,16,16]}],
  texture="stone", faces=true

Mesh Modeling

Create Sphere

create_sphere: elements=[{
  name: "ball",
  position: [0, 8, 0],
  diameter: 16,
  sides: 12
}]

Create Cylinder

create_cylinder: elements=[{
  name: "pillar",
  position: [0, 0, 0],
  diameter: 8,
  height: 24,
  sides: 12,
  capped: true
}]

Extrude Face

select_mesh_elements: mesh_id="pillar", mode="face", elements=["top_face"]
extrude_mesh: mesh_id="pillar", mode="faces", distance=4

Subdivide for Detail

subdivide_mesh: mesh_id="sphere", cuts=2

Move Vertices

select_mesh_elements: mesh_id="mesh1", mode="vertex", elements=["v1", "v2"]
move_mesh_vertices: offset=[0, 2, 0]

Merge Close Vertices

merge_mesh_vertices: mesh_id="mesh1", threshold=0.1

Knife Cut

knife_tool: mesh_id="cube_mesh", points=[
  {position: [0, 8, -4]},
  {position: [0, 8, 4]}
]

Organization

Create Group Hierarchy

add_group: name="root", origin=[0, 0, 0], rotation=[0, 0, 0]
add_group: name="body", parent="root", origin=[0, 12, 0]
add_group: name="head", parent="body", origin=[0, 24, 0]

Add Cubes to Groups

place_cube: elements=[{name: "torso", from: [-4, 12, -2], to: [4, 24, 2]}],
  group="body"

Duplicate Element

duplicate_element: id="arm_left", newName="arm_right", offset=[-8, 0, 0]

View Hierarchy

list_outline  # Returns all groups and elements

Common Patterns

Minecraft Character

# Create hierarchy
add_group: name="root", origin=[0, 0, 0]
add_group: name="body", parent="root", origin=[0, 24, 0]
add_group: name="head", parent="body", origin=[0, 24, 0]
add_group: name="arm_left", parent="body", origin=[5, 22, 0]
add_group: name="arm_right", parent="body", origin=[-5, 22, 0]
add_group: name="leg_left", parent="root", origin=[2, 12, 0]
add_group: name="leg_right", parent="root", origin=[-2, 12, 0]

# Add geometry
place_cube: elements=[{name: "head", from: [-4, 24, -4], to: [4, 32, 4]}], group="head"
place_cube: elements=[{name: "body", from: [-4, 12, -2], to: [4, 24, 2]}], group="body"
place_cube: elements=[{name: "arm", from: [-1, 0, -1], to: [1, 10, 1]}], group="arm_left"
place_cube: elements=[{name: "arm", from: [-1, 0, -1], to: [1, 10, 1]}], group="arm_right"
place_cube: elements=[{name: "leg", from: [-2, 0, -2], to: [2, 12, 2]}], group="leg_left"
place_cube: elements=[{name: "leg", from: [-2, 0, -2], to: [2, 12, 2]}], group="leg_right"

Smooth Organic Shape

create_sphere: elements=[{name: "base", position: [0, 8, 0], diameter: 16, sides: 16}]
subdivide_mesh: mesh_id="base", cuts=1
# Select and move vertices to shape
select_mesh_elements: mesh_id="base", mode="vertex"
move_mesh_vertices: offset=[0, 4, 0], vertices=["top_verts"]

Tips

  • Use list_outline to see current model structure
  • Set group origins at joint/pivot points for animation
  • Use faces=true for auto UV mapping on cubes
  • Create bone hierarchy before adding geometry
  • Use duplicate_element with offset for symmetrical parts
  • Mesh editing is more flexible but cubes are simpler for Minecraft-style models

Expand your agent's capabilities with these related and highly-rated skills.

jasonjgardner/blockbench-mcp-project

blockbench-hytale

Create Hytale models and animations using Blockbench MCP tools. Use when working with Hytale character/prop formats, creating attachments, setting shading modes, using quads, or animating with visibility keyframes. Requires the Hytale Blockbench plugin to be installed.

4 1
Explore
jasonjgardner/blockbench-mcp-project

blockbench-mcp-overview

Overview of the Blockbench MCP server tools, resources, and prompts. Use to understand the full MCP capability set, learn how tools work together, or when starting a new Blockbench project. Covers all domains (modeling, animation, texturing, PBR, UI, camera) and their MCP interfaces.

4 1
Explore
jasonjgardner/blockbench-mcp-project

blockbench-plugins

Blockbench plugin/extension development for the 3D modeling tool. Use when creating, modifying, or debugging JavaScript plugins for Blockbench including actions, dialogs, panels, menus, toolbars, model manipulation, animation APIs, and custom formats/codecs. Triggers on Blockbench plugin, Blockbench extension, Blockbench API, BBPlugin, model editor plugin, or 3D modeling tool extension.

4 1
Explore
jasonjgardner/blockbench-mcp-project

blockbench-texturing

Create and paint textures in Blockbench using MCP tools. Use when creating textures, painting on models, using brush tools, filling colors, drawing shapes, applying gradients, managing texture layers, or working with UV mapping. Covers pixel art texturing, procedural painting, and UV manipulation.

4 1
Explore
jasonjgardner/blockbench-mcp-project

blockbench-pbr-materials

Create and manage PBR (Physically Based Rendering) materials in Blockbench using MCP tools. Use when working with texture_set.json files, creating normal/height/MER maps, configuring material properties for Minecraft Bedrock RTX, or setting up multi-channel texture workflows.

4 1
Explore
jasonjgardner/blockbench-mcp-project

blockbench-animation

Create and manage animations in Blockbench using MCP tools. Use when animating 3D models, creating keyframes, managing bone rigs, editing animation curves, or working with animation timelines. Covers walk cycles, idle animations, combat animations, and complex multi-bone animations.

4 1
Explore

Didn't find tool you were looking for?

Be as detailed as possible for better results