MCPInstall

blockbench-particles

Add particle effects (smoke, fire, sparks, magic, glow, dust, snow, drips, bubbles, bursts) to Blockbench models with MCP tools. Covers Bedrock/Snowstorm particle JSON, presets and design knobs, locators, particle keyframes on animations, Blockbench's Animate-mode preview, and delivery to Bedrock resource packs (client entity particleeffects) and GeckoLib, plus fallbacks for glTF, Java block and Hytale targets that cannot carry particles. Use when a model needs an emitter, VFX, particle effect, locator, Snowstorm file, particleeffects keyframe, or effect polish in a deliverable.

Installs
155
Last 24h
—
Trending rank
—
Security
Not audited

Install

Works with every agent the skills CLI supports.

npx skills add https://github.com/jasonjgardner/blockbench-mcp-project --skill blockbench-particles
  1. 01

    Install

    Run the command in your project. The CLI asks which agents to install for.

  2. 02

    Describe the task

    Ask your agent for something this skill covers. It loads blockbench-particles automatically when relevant.

  3. 03

    Review the result

    The agent follows the SKILL.md steps, scripts and references bundled with the skill.

SKILL.md

The instructions your agent reads when the skill is triggered.

Blockbench Particles

Blockbench has one particle system: Bedrock particle effects, the JSON format Snowstorm edits. Blockbench previews them with Wintersky when a particle keyframe on an animation's Effects track fires, optionally at a locator on a bone. The same files run in Minecraft Bedrock, and GeckoLib animations carry the same keyframes to a mod's particle handler. Nothing else in Blockbench (glTF, OBJ, Java block models, Hytale) exports particles.

Load blockbench-use first. Particles ride on animations, so load blockbench-animation when the model has no clip yet.

1. Decide What Carries the Effect

Ask for the destination if it is unknown; it decides everything below.

DestinationParticlesWhere the effect lives
Bedrock entity or attachable (bedrock)NativeParticle JSON + locators in geometry + keyframes in animation JSON or controller states + particle_effects map in the client entity. See delivery.
GeckoLib (geckolib_model)Keyframes onlyKeyframes (effect, locator, script) export in the animation JSON; the mod's particle keyframe handler spawns real particles. Bedrock JSON here is only the Blockbench preview.
Generic Model / glTF, Java block/item, Hytale, OBJNoneFake the effect with geometry, emissive flipbook textures and bone keyframes, or leave it to the runtime. See non-particle targets.

Also settle the trigger before building, because Bedrock treats the two differently:

  • Animation keyframe (manage_particle_keyframes): fire-and-forget. Good for one-shots (impact sparks, a poof on landing, hearts). A looping emitter fired this way never stops in game, and a looping clip starts another one every cycle. For a continuous effect keyed on a looping clip, use looping: false with duration equal to the clip length, keyed at 0.
  • Animation controller state: the game starts the emitters on state entry and ends them on exit. This is the right home for sustained loops (a burning state, a casting state). The MCP tools do not edit controllers; add the entry in Blockbench's Animation Controllers panel or in the controller JSON (delivery).

The tools warn when a looping effect lands on a keyframe.

2. Tools

Desktop plugin (Blockbench open):

ToolUse
list_particle_presetsPresets, built-in sprites and textures, materials, facing modes. Read before designing.
create_particle_effectPreset + design knobs (or raw JSON) → <pack_root>/particles/<name>.json, validated and loaded into the preview. Optional custom texture from a Blockbench texture or PNG.
update_particle_effectChange knobs on an existing file (only the components each knob owns are rewritten), replace it with raw JSON, or load a file from disk.
add_locatorNamed point on a bone that effects spawn at and follow. Formats with locators: Bedrock Entity, GeckoLib, Generic Model.
manage_particle_keyframesAdd, remove or list particle keyframes on an animation. Validates locators and times.
list_particle_effectsLoaded effects, usages, preview problems, looping-on-keyframe warnings and the client-entity map.
export_particle_packCopy used effects and custom textures into a resource pack; returns the particle_effects map.
animation_timeline set_time, capture_screenshotPreview.

Headless server (files only, parallel agents): bbmodel_particle_effect (create/update a file next to the model), bbmodel_edit operations add_locator, set_particle_keyframe, remove_particle_keyframe, and bbmodel_particle_pack. Keyframe file paths are relative to the .bbmodel (particles/smoke.json); bbmodel_particle_effect returns the right value as keyframe_file when given model. Headless cannot render particles; open the model in Blockbench to preview.

3. Workflow

  1. Plan the effect. Write down what it communicates, where it spawns, how long it lasts, how many particles are alive at peak, and whether it is continuous or one-shot. Read effect design for scale, timing, color and budget rules.
  2. Place locators at the spawn points: a chimney top, a mouth, a sword tip, a wheel's contact point. Parent them to the bone that should carry the effect. Positions are absolute model units (16 per block).
    add_locator: name="mouth", parent="head", position=[0, 26, -7]
    
  3. Create the effect from the closest preset and adjust knobs. Units are blocks and seconds.
    create_particle_effect: identifier="mymod:dragon_smoke", preset="smoke",
      design={rate: 10, size: [0.3, 0.9], color: ["#6b5b53cc", "#3a3a3a"], looping: false, duration: 2}
    
    Use your own namespace, never minecraft:. For a custom sprite, paint or generate a small PNG first (8-32 px, transparent background) and pass texture_image; sprite sheets use design.flipbook (vertical strips by default, like flipbook textures).
  4. Key it. Continuous effect on a looping clip: one keyframe at 0 with the looping: false, duration = clip length variant. One-shot: a keyframe on the contact frame.
    manage_particle_keyframes: animation_id=<clip uuid>, action="add",
      keyframes=[{time: 0, effect: "mymod:dragon_smoke", locator: "mouth"}]
    
    Read every returned warning; fix them rather than reporting them.
  5. Preview in Animate mode: animation_timeline set_time to 0, then to two or three moments (early, peak, late), capturing each. After editing an effect, go back to 0 first so emitters restart with the new settings. Check readability at the intended camera distance, not only close up.
  6. Validate with list_particle_effects: no problems, no checkerboard textures, sensible counts.
  7. Deliver per delivery: export_particle_pack to the resource pack, paste the returned client_entity.particle_effects into the client entity, export the animation JSON, and save the .bbmodel. Report the files written and any step left to the user (client entity edits, controller states, in-game check).

4. Rules That Prevent Broken Effects

  • Blocks, not pixels. Particle sizes, speeds, offsets and shape radii are in blocks; locators and model coordinates are in pixels (16 per block). Billboard size is a half-width: 0.1 is a vanilla smoke puff (0.2 blocks across) and 0.5 spans a whole block.
  • Material decides fades. particles_alpha cuts off partial transparency, so alpha gradients pop. Use particles_blend for smoke and soft shapes and particles_add for light (fire, magic, sparks, glow).
  • White keeps sprite colors. Tints multiply. Colored sprites (flame, heart, bubble, soul, fire) want white or no tint.
  • Budget live particles: rate × lifetime. Keep ambient loops under about 50, busy effects under 100, and never let max_particles cap a steady emitter mid-effect (the validator reports it).
  • Local space vs world space: local_space: true makes particles move with the bone (auras, rings, orbiting motes). Leave it off for smoke, trails and exhaust so they stay behind as the model moves. bind_to_actor: false on a keyframe leaves the whole emitter where it spawned.
  • The preview is not the game. Blockbench has no blocks to collide with and approximates lighting, and it restarts looping emitters every duration seconds (presets use 10 s for that reason). Verify collisions, lighting and entity_aabb shapes in game when possible and say so when not.
  • Names must resolve. Keyframes use effect names; the client entity maps names to identifiers. export_particle_pack reports name conflicts, missing textures and keyframes without files.

References

  • Effect design: planning, presets, recipes, color, timing, budgets, Molang patterns, custom sprites.
  • Bedrock particle format: component cheat sheet, raw JSON skeleton, events and curves, for effects the knobs cannot express.
  • Delivery: Bedrock resource pack wiring, controller states, attachables, GeckoLib handlers, and substitutes for targets without particles.
  • Primary sources: Particle entity integration (Microsoft), Bedrock particle documentation, Snowstorm for hand editing, and Mojang's vanilla particle files as worked examples.

FAQ

What does the blockbench-particles skill do?

Add particle effects (smoke, fire, sparks, magic, glow, dust, snow, drips, bubbles, bursts) to Blockbench models with MCP tools. Covers Bedrock/Snowstorm particle JSON, presets and design knobs, locators, particle keyframes on animations, Blockbench's Animate-mode preview, and delivery to Bedrock resource packs (client entity particleeffects) and GeckoLib, plus fallbacks for glTF, Java block and Hytale targets that cannot carry particles. Use when a model needs an emitter, VFX, particle effect, locator, Snowstorm file, particleeffects keyframe, or effect polish in a deliverable.

How do I install blockbench-particles?

Run npx skills add https://github.com/jasonjgardner/blockbench-mcp-project --skill blockbench-particles in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/blockbench-particles/ (personal) or .claude/skills/blockbench-particles/ (project).

Which AI agents can use blockbench-particles?

Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.

Is blockbench-particles safe to install?

No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.

Who maintains blockbench-particles?

It is published by jasonjgardner in jasonjgardner/blockbench-mcp-project. It has 155 recorded installs.

More from jasonjgardner/blockbench-mcp-project

View all →

blockbench-modeling

jasonjgardner/blockbench-mcp-project

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.

AI & Agents1.3K installs

blockbench-texturing

jasonjgardner/blockbench-mcp-project

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.

AI & Agents1.2K installs

blockbench-animation

jasonjgardner/blockbench-mcp-project

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.

Frontend & Design1.1K installs

blockbench-mcp-overview

jasonjgardner/blockbench-mcp-project

Discover and use Blockbench MCP tools, resources, and prompts. Use for capability questions, new-project planning, mode navigation, export, display transforms, Bedrock face materials, or native armature workflows.

AI & Agents1.1K installs

blockbench-use

jasonjgardner/blockbench-mcp-project

Load before Blockbench MCP calls that create, modify, or export content. Discover the active format and tools, route to modeling, UV/texturing, animation, particle, PBR, or Hytale guidance, and verify the requested result.

AI & Agents905 installs

blockbench-pbr-materials

jasonjgardner/blockbench-mcp-project

Create and manage PBR materials in Blockbench using MCP tools. Use for Bedrock textureset.json import/export, normal or height maps, packed MER textures, material channel replacement, and uniform material properties.

AI & Agents861 installs

Popular ai & agents skills

View category →

google-agents-cli-publish

google/agents-cli

This skill should be used when the user wants to "publish an agent", "publish my ADK agent", "register an agent with Gemini", "publish to Gemini" (formerly Gemini Enterprise), or needs guidance on the agents-cli publish gemini command. Also use when the user wants to "manage agents in Agent Registry", "list/update/delete registered agents", or "register an MCP server". Covers ADK vs A2A registration modes, programmatic and interactive usage, flag reference, auto-detection from deployment metadata, Agent Registry fleet management, and troubleshooting. Part of the agents-cli skills suite. Do NOT use for deployment (use google-agents-cli-deploy).

AI & Agents513.9K installs

google-agents-cli-eval

google/agents-cli

This skill should be used when the user wants to "run an evaluation", "evaluate my agent", "evaluate my ADK agent", "write an eval dataset", "analyze eval failures", "compare eval results", "optimize agent", or needs guidance on the Gemini platform eval methodology and the Quality Flywheel. Covers eval metrics, dataset schema, LLM-as-judge scoring, and common failure causes. Applies to any agents-cli project, whatever framework the agent is written in. Do NOT use for agent API code patterns (ADK: use google-agents-cli-adk-code), deployment (use google-agents-cli-deploy), or project scaffolding (use google-agents-cli-scaffold).

AI & Agents513.5K installs

skill-creator

anthropics/skills

Create new skills, modify and improve existing skills, and measure skill performance. Use when users want to create a skill from scratch, edit, or optimize an existing skill, run evals to test a skill, benchmark skill performance with variance analysis, or optimize a skill's description for better triggering accuracy.

OfficialAI & Agents416.4K installs

codex-pet

prime-skills/runcomfy-agent-skills

Codex Pet generator on RunComfy. Build a Codex-compatible Codex Pet spritesheet.webp + pet.json from a single reference image, drop it into ${CODEXHOME:-$HOME/.codex}/pets/ / and Codex picks it up as a custom Codex Pet next to the 8 built-ins. This skill produces the exact Codex Pet atlas Codex expects (1536x1872 PNG/WebP, 8 cols x 9 rows, 192x208 cells, 9 animation states — idle, running-right, running-left, waving, jumping, failed, waiting, running, review). Calls OpenAI GPT Image 2 edit ONCE via the local RunComfy CLI as runcomfy run openai/gpt-image-2/edit to produce a canonical Codex Pet pose, then assembles all 9 animation rows programmatically with ImageMagick micro-transforms — no Codex Pro, no $imagegen, no OPENAIAPIKEY required, only RUNCOMFYTOKEN. Triggers on "codex pet", "create codex pet", "make codex pet", "hatch codex pet", "/hatch image", "desktop pet codex", "codex pets", "spritesheet.webp", or any explicit ask to build a custom pet for OpenAI Codex.

AI & Agents402.1K installs

full-output-enforcement

leonxlnx/taste-skill

Overrides default LLM truncation behavior. Enforces complete code generation, bans placeholder patterns, and handles token-limit splits cleanly. Apply to any task requiring exhaustive, unabridged output.

AI & Agents401K installs

executing-plans

obra/superpowers

Use when executing an implementation plan in the current session as the implementer yourself — your human partner chose inline execution, or no subagent tool is available

AI & Agents245.7K installs