Back to Directory/Developer Tools

io.github.Able-rip/agent-mosaic-skill

Convert photos to LEGO-style brick mosaic previews with AI-powered color quantization.

Developer ToolsJavaScriptv1.0.2

BMBrick Photo-to-LEGO-Mosaic Skill

npm version License

Convert any local photo into a LEGO-style brick mosaic preview — directly from your AI agent.

@bmbrick/photo-to-lego-mosaic-skill is an MCP server that lets Claude, Cursor, Windsurf, and other AI agents transform local images into high-fidelity 3D brick mosaics using the same canonical engine as bmbrick.com.

Renamed from @bmbrick/agent-mosaic-skill (the old name still works but is deprecated — please migrate to the new name for future updates).

Visual Previews

Generated with the generate_lego_mosaic tool (3D render mode):

Square Tiles (square_1x1)

Original Photo48x48 Preview64x64 Preview
Original48x4864x64

Round Tiles (round_1x1)

Original Photo48x48 Preview64x64 Preview
Original48x48 Round64x64 Round

For more case studies and mosaic examples, check out our Pinterest Showcase.

Quick Start

npx -y @bmbrick/photo-to-lego-mosaic-skill

MCP Client Configuration

Claude Desktop (claude_desktop_config.json):

{
  "mcpServers": {
    "lego-mosaic": {
      "command": "npx",
      "args": ["-y", "@bmbrick/photo-to-lego-mosaic-skill"]
    }
  }
}

Cursor (.cursor/mcp.json):

{
  "mcpServers": {
    "lego-mosaic": {
      "command": "npx",
      "args": ["-y", "@bmbrick/photo-to-lego-mosaic-skill"]
    }
  }
}

Tool: generate_lego_mosaic

ParameterTypeRequiredDefaultDescription
imagePathstringYes—Absolute path to a local image
columnsnumberNo48Preview width in studs (max 64)
rowsnumberNo48Preview height in studs (max 64)
materialModestringNosquare_1x1square_1x1 or round_1x1
renderModestringNo3DRender style
removeBackgroundbooleanNofalseClean up white/transparent backgrounds

Returns: a local watermarked PNG preview + a link to unlock the full project at bmbrick.com.

Unlock Full Project

The preview is watermarked and intended for creative exploration. To get the complete deliverables — HD unwatermarked mosaic, brick-by-brick PDF instructions, parts list with ordering links, and CSV/XML placement matrices — visit bmbrick.com.

Features

  • Same Engine as bmbrick.com — canonical color science, quantization, and 3D rendering pipeline
  • Local & Private — all processing happens on your machine via Node.js
  • Agent-Ready — ships with a SKILL.md for seamless agent workflow integration
  • 3D Render Mode — InstancedMesh PBR rendering with realistic brick studs

Engineering Docs

Deep technical reference for the color quantization pipeline that powers this skill and bmbrick.com:

  • Color quantization pipeline: principles, history, and lessons — current architecture, architectural decisions, verified principles, failed experiments from 25+ versions of iteration, and parameter sensitivity reference.

Migrating from @bmbrick/agent-mosaic-skill

If you were using the old name, the migration is one search/replace:

  1. Package name: @bmbrick/agent-mosaic-skill → @bmbrick/photo-to-lego-mosaic-skill
  2. MCP tool name (in your agent's tool list): generate_bmbrick_mosaic → generate_lego_mosaic
  3. Binary name (rare): agent-mosaic-skill → photo-to-lego-mosaic-skill

The tool parameters (imagePath, columns, rows, etc.) and return shape are unchanged.

Development

License

Dual-licensed:

  • MIT — MCP wrapper, skill/ directory, agent integration surface
  • Restricted — dist/ engine files: free to use and distribute as-is, but no de-obfuscation, reverse engineering, or redistribution of modified versions

See LICENSE for full terms.

Installation

Source-derived launch command. Check the maintainer’s required arguments and credentials before running:

bash
npx -y @bmbrick/agent-mosaic-skill

Set up in your AI client

Merge this template into ~/Library/Application Support/Claude/claude_desktop_config.json. Keep existing servers. Add any arguments, credentials, and permissions required by the maintainer; this template has not been install-tested.

json
{
  "mcpServers": {
    "io-github-able-rip-agent-mosaic-skill": {
      "command": "npx",
      "args": [
        "-y",
        "@bmbrick/agent-mosaic-skill"
      ]
    }
  }
}

Restart Claude Desktop completely for changes to take effect. Confirm the server appears connected in the client’s tool list, then try a read-only example from its documentation.

Claude Desktop setup reference

Package

@bmbrick/agent-mosaic-skillnpm

Compatible MCP Clients

io.github.Able-rip/agent-mosaic-skill works with any MCP-compatible client. Copy the config snippet from the Configuration section above and add it to the file shown for your client, then restart the application.

  • Claude Desktop~/Library/Application Support/Claude/claude_desktop_config.jsonRestart Claude Desktop completely for changes to take effect.
  • Cursor~/.cursor/mcp.jsonRestart Cursor for changes to take effect.
  • VS Code.vscode/mcp.jsonReload VS Code window for changes to take effect.
  • Windsurf~/.codeium/windsurf/mcp_config.jsonRestart Windsurf for changes to take effect.
  • Claude Code.mcp.jsonSave at the project root, then start Claude Code in that project and review the MCP server approval prompt. Keep real credentials out of shared files.

Learn More